项目结构:
- 培训申请管理
- 培训课程管理
- 讲师管理
- 学员管理
- 课程报名管理(学生个人)
- 培训评价管理
- 培训过程管理
- 数据统计
- 企业用户管理
- 登录服务(管理员、学员、企业用户)
在课程要求基础上进行javaWeb扩展开发(自学内容),更新内容如下:
- 将之前实现的简单数据库查询实现登录功能扩展为了使用jwt进行验证的功能
- 实现了拦截器功能,当客户端发送的请求没有携带jwt令牌时会进行拦截并返回错误信息NO_LOGIN
- 利用阿里云OSS实现了文件云端存储功能,并将阿里云OSS工具类封装在一个自定义的starter内,不再需要进行繁琐的配置,只需要利用容器注入就可以使用upload功能,使用前需要在pom文件中引用这个依赖,考虑到项目结构,没有将该自定义starter上传至github
至此,javaWeb后端开发核心业务功能的开发全部学习完成。该项目文档不再更新。
上述后端需求全部实现,数据统计及培训过程管理部分不在该仓库维护
实现根据课程展示学员信息功能 可根据审批通过名单自动更新
实现培训评价管理 增删查
实现课程报名管理 增删查及审批通过申请功能
遗留问题:课程暂未与学员关联,考虑增加功能:培训申请通过后课程自动与学员关联
实现培训申请管理 增删查 实现培训课程管理 增删改查
完成了企业管理系统,实现增删改查服务。
完成了讲师管理系统,实现增删改查服务。
完善了学员信息管理系统
实现了批量删除学员信息、按所给字段插入学员信息、根据姓名模糊查询学员信息并分页显示。
实现了初版学员信息管理
能够对学员信息进行增删改查服务。
要求字段严格。
1 查询学员信息接口
2 删除学员信息接口
3 修改学员信息接口
4 新增学员信息接口
5 查询讲师信息接口
6 删除讲师信息接口
7 修改讲师信息接口
8 新增讲师信息接口
9 查询企业信息接口
10 删除企业信息接口
11 修改企业信息接口
12 新增企业信息接口
13 查询培训申请信息接口
14 删除培训申请信息接口
15 新增培训申请信息接口
16 查询课程信息接口
17 删除课程信息接口
18 修改课程信息接口
19 新增课程信息接口
20 查询课程申请信息接口
21 删除课程申请表信息接口
22 审批通过课程申请接口
23 新增课程申请表信息接口
24 查询课程评价信息接口
25 删除课程评价信息接口
26 新增课程评价信息接口
1. 查询学员信息
获取学员信息并分页展示(默认显示第一页,每页显示10条记录),可根据姓名模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 姓名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 学员信息及查询到的信息总条数total
地址:http://localhost:8080/stu/showpages?page=1&pageSize=5&name=小
{
"code": 1,
"msg": "success",
"data": {
"total": 11,
"rows": [
{
"id": 1,
"username": "xiaoming",
"password": "123456",
"name": "小明",
"telNum": "12345678989"
},
{
"id": 2,
"username": "gangxiao",
"password": "123456",
"name": "刚小",
"telNum": "11122233345"
},
{
"id": 3,
"username": "xiaowang",
"password": "123451",
"name": "小王",
"telNum": "12345678901"
},
{
"id": 4,
"username": "xiaohong",
"password": "123456",
"name": "小红",
"telNum": "12345678891"
},
{
"id": 5,
"username": "xiaolv",
"password": "123456",
"name": "小绿",
"telNum": "12345678891"
}
]
}
}
2. 删除学员信息
可批量删除/单条删除学员信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的学员id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
3. 修改学员信息
根据修改传入数据内容,修改指定id的学员信息数据
Json
Put
参数 必选 类型 说明 id true int 要修改的学员id username false String 修改后的用户名 password false String 修改后的密码 name false String 修改后的姓名 telNum false String 修改后的电话号码(限制11位)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"id":2,
"username":"gangxiao",
"name":"刚小",
}
{
"code": 1,
"msg": "success",
"data": null
}
4. 新增学员信息
根据所填数据新增学员信息
Json
Post
参数 必选 类型 说明 username true String 新增学员用户名 password true String 新增学员密码 name true String 新增学员姓名 telNum false String 新增学员的电话号码(限制11位,可为null)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"username":"dachu",
"password":"123456",
"name":"大厨",
"telNum":"11122233345"
}
{
"code": 1,
"msg": "success",
"data": null
}
5. 查询讲师信息
获取讲师信息并分页展示(默认显示第一页,每页显示10条记录),可根据姓名模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 姓名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 讲师信息及查询到的信息总条数total
{
"code": 1,
"msg": "success",
"data": {
"total": 2,
"rows": [
{
"id": 2,
"name": "张老师",
"salary": 3000,
"age": 48,
"sex": 2
},
{
"id": 11,
"name": "张力",
"salary": 2333,
"age": 24,
"sex": 2
}
]
}
}
6. 删除讲师信息
可批量删除/单条删除讲师信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的讲师id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
7. 修改讲师信息
根据修改传入数据内容,修改指定id的讲师信息数据
Json
Put
参数 必选 类型 说明 id true int 要修改的讲师id name false String 修改后的姓名 salary false int 修改后的薪水 age false int 修改后的年龄 sex false int 修改后的性别(1男2女)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"id":2,
"name":"刚小"
}
{
"code": 1,
"msg": "success",
"data": null
}
8. 新增讲师信息
根据所填数据新增讲师信息
Json
Post
参数 必选 类型 说明 name true String 新增讲师姓名 salary true int 新增讲师薪水 age true int 新增讲师年龄 sex false int 新增讲师性别(1男2女)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"name":"张大力",
"salary":"2333",
"age":"23",
"sex":"1"
}
{
"code": 1,
"msg": "success",
"data": null
}
9. 查询企业信息
获取企业信息并分页展示(默认显示第一页,每页显示10条记录),可根据企业名称模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 企业名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 企业信息及查询到的信息总条数total
{
"code": 1,
"msg": "success",
"data": {
"total": 1,
"rows": [
{
"id": 1,
"name": "华为",
"flag": 0
}
]
}
}
10. 删除企业信息
可批量删除/单条删除企业信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的企业id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
11. 修改企业信息
根据修改传入数据内容,修改指定id的企业信息数据
Json
Put
参数 必选 类型 说明 id true int 要修改的企业id name false String 修改后的企业姓名 flag false int 修改后的企业认证标识
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"id":2,
"name":"tencent",
"flag":"1"
}
{
"code": 1,
"msg": "success",
"data": null
}
12. 新增企业信息
根据所填数据新增企业信息
Json
Post
参数 必选 类型 说明 name true String 新增企业姓名 flag false int 新增企业认证标识
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"name":"老干妈",
"flag":"1"
}
{
"code": 1,
"msg": "success",
"data": null
}
13. 查询培训申请信息
获取培训申请并分页展示(默认显示第一页,每页显示10条记录),可根据申请名称模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 申请名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 申请信息及查询到的信息总条数total
地址:http://localhost:8080/train/show?page=1&pageSize=5&name=3
{
"code": 1,
"msg": "success",
"data": {
"total": 2,
"rows": [
{
"id": 30,
"trainappName": "培训项目3",
"companyName": "中兴",
"startDate": "2024-05-10T16:00:00.000+00:00",
"endDate": "2024-05-21T16:00:00.000+00:00"
},
{
"id": 38,
"trainappName": "培训项目13",
"companyName": "字节",
"startDate": "2020-12-31T16:00:00.000+00:00",
"endDate": "2021-01-01T16:00:00.000+00:00"
}
]
}
}
14. 删除申请信息
可批量删除/单条删除申请信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的申请id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
15. 新增申请信息
根据所填数据新增申请信息
Json
Post
参数 必选 类型 说明 trainName true String 新增申请名称 companyName true String 新增公司名称 startDate true yyyy-MM-dd 新增开始日期 endDate true yyyy-MM-dd 新增结束日期
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"trainName": "培训项目A",
"startDate": "2024-07-01",
"endDate": "2024-07-31",
"companyName": "华为"
}
{
"code": 1,
"msg": "success",
"data": null
}
16. 查询课程信息
获取课程信息并分页展示(默认显示第一页,每页显示10条记录),可根据课程名称模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 课程名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 课程信息及查询到的信息总条数total
地址:http://localhost:8080/course/show?page=1&pageSize=5&name=机
{
"code": 1,
"msg": "success",
"data": {
"total": 2,
"rows": [
{
"id": 7,
"teacherName": "聂老师",
"startDate": "2023-12-31T16:00:00.000+00:00",
"endDate": "2024-01-30T16:00:00.000+00:00",
"courseName": "计算机组成原理"
},
{
"id": 10,
"teacherName": "郑老师",
"startDate": "2023-12-31T16:00:00.000+00:00",
"endDate": "2024-01-30T16:00:00.000+00:00",
"courseName": "自动机"
}
]
}
}
17. 删除课程信息
可批量删除/单条删除课程信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的课程id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
18. 修改课程信息
根据修改传入数据内容,修改指定id的课程信息数据
Json
Put
参数 必选 类型 说明 id true int 要修改的课程id courseName false String 修改后的课程姓名 teacherName false String 修改后的讲师姓名 startDate false yyyy-MM-dd 修改后的开始日期 endDate false yyyy-MM-dd 修改后的结束日期
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"id":"1",
"courseName":"软件过程",
"teacherName":"张力"
}
{
"code": 1,
"msg": "success",
"data": null
}
19. 新增课程信息
根据所填数据新增课程信息
Json
Post
参数 必选 类型 说明 courseName true String 新增课程姓名 teacherName true String 新增讲师姓名 startDate true yyyy-MM-dd 新增开始日期 endDate true yyyy-MM-dd 新增结束日期
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"courseName": "课程A",
"startDate": "2024-07-01",
"endDate": "2024-07-31",
"teacherName": "张力"
}
{
"code": 1,
"msg": "success",
"data": null
}
20. 查询课程申请信息
获取课程申请表信息并分页展示(默认显示第一页,每页显示10条记录),可根据申请者姓名进行模糊查询
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 name false String 姓名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 课程申请表信息及查询到的信息总条数total
地址:http://localhost:8080/stuapp/show?page=1&pageSize=5&name=明
{
"code": 1,
"msg": "success",
"data": {
"total": 3,
"rows": [
{
"id": 1,
"stuName": "小明",
"courseName": "软件过程"
},
{
"id": 2,
"stuName": "小明",
"courseName": "数学"
},
{
"id": 3,
"stuName": "小明",
"courseName": "英语"
}
]
}
}
21. 删除课程申请表信息
可批量删除/单条删除课程申请表信息数据
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的申请表id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"code": 1,
"msg": "success",
"data": null
}
22. 审批通过课程申请
根据传入id,将指定id的申请表状态修改为已通过
Json
Put
参数 必选 类型 说明 id true int 要修改的申请表id
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"id":"1"
}
{
"code": 1,
"msg": "success",
"data": null
}
23. 新增申请表信息
根据所填数据新增申请表信息
Json
Post
参数 必选 类型 说明 stuName true String 新增申请者姓名 courseName true String 新增申请课程名称
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
{
"stuName":"小明",
"courseName":"数学"
}
{
"code": 1,
"msg": "success",
"data": null
}
24. 查询培训评价信息
获取培训评价信息并分页展示(默认显示第一页,每页显示10条记录),可根据学员姓名/课程名模糊查询
localhost:8080/eva/show
请求头参数
GET
参数 必选 类型 说明 page false int 页码 pageSize false int 每页展示信息条数 stuName false String 学生姓名(模糊查询) courseName false String 课程名(模糊查询)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 评价信息及查询到的信息总条数total
地址:localhost:8080/eva/show?page=1&pageSize=5&courseName=软
{
"code": 1,
"msg": "success",
"data": {
"total": 2,
"rows": [
{
"id": 1,
"stuName": "小明",
"courseName": "软件过程",
"eva": "非常棒",
"rating": 5
},
{
"id": 11,
"stuName": "小橙",
"courseName": "软件构造",
"eva": "非常棒",
"rating": 5
}
]
}
}
25. 删除培训评价信息
可批量删除/单条删除培训评价信息数据
localhost:8080/eva/delete/{ids}
请求头参数
Delete
参数 必选 类型 说明 ids true list 删除的培训信息id列表
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
地址:localhost:8080/eva/delete/11,12
{
"code": 1,
"msg": "success",
"data": null
}
26. 新增培训评价信息
根据所填数据新增培训评价信息
localhost:8080/eva/add
Json
Post
参数 必选 类型 说明 stuName true String 评价学员名 courseName true String 评价课程名 eva true String 评价(限制1024字) rating true int 评分(1-5)
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data null null
地址:localhost:8080/eva/add
{
"stuName":"小明",
"courseName":"自动机",
"eva":"挺好的",
"rating":"4"
}
{
"code": 1,
"msg": "success",
"data": null
}
27. 根据课程查询学员信息
根据课程获取学员信息
localhost:8080/course/showstu/{id}
路径参数
GET
参数 必选 类型 说明 id true int 课程id
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list 课程学员信息
地址:localhost:8080/course/showstu/1
{
"code": 1,
"msg": "success",
"data": [
{
"id": null,
"stuName": "小明",
"courseName": "软件过程",
"flag": null
},
{
"id": null,
"stuName": "刚小",
"courseName": "软件过程",
"flag": null
},
{
"id": null,
"stuName": "小王",
"courseName": "软件过程",
"flag": null
},
{
"id": null,
"stuName": "小红",
"courseName": "软件过程",
"flag": null
},
{
"id": null,
"stuName": "小绿",
"courseName": "软件过程",
"flag": null
},
{
"id": null,
"stuName": "小黃",
"courseName": "软件过程",
"flag": null
}
]
}
28. 查询某课程学员及通讯信息并输出为excel
查询某课程学员及通讯信息并输出为excel
localhost:8080/expansion/generateRecipientList/{ids}
路径参数
GET
参数 必选 类型 说明 id true int 课程id
返回字段 字段类型 说明 code int 返回结果状态。1:正常;其他:错误。 msg string “success” data list null
地址:localhost:8080/expansion/generateRecipientList/1
{
"code": 1,
"msg": "success",
"data": null
}