课程管理系统后段搭建
前后端分离?
前端和后端都能独自运行**前端HTML页面通过AJAX调用后端API接口 并通过JSON数据进行交互**
Maven的使用
- 每次运行之前在Plugins —-> clean 一下删除Target目录 —> Compile命令重新编译
- 在pom.xml文件中指定packaging为war包 —-> 才能生成web可用
- JSON
- 是什么?
是一种数据交换的格式
- 是什么?
- JSON和JAVA的关系
- JAVA转JSON ——> 调用 JSON.toJSONString方法
- JSON转JAVA —-> 调用JSON.parseObejct方法
使用“@JSONField注解“, 通过name去指定输出的名称 / ordinal属性指定输出的顺序
serialize属性指定是否序列化后端DAO层的编写
- 服务端获取文件上传步骤:
- 通过request获取请求体的内容
- 解析请求体 多部上传的特点:每一个input,都是一个表单项,根据分隔符将请求中的所有数据进行切割,获取到数组,数组中每一个元素都是一个表单项
- 遍历数组,分隔出文件上传项: filename关键字 普通上传项: name关键字
- 使用IO将文件内容保存到服务器
- 上传路径最后要加“/”
- war包设置过程:
- 把tomcat ——> deployment中后缀为war_exploded 改为 exploded —-> webapps中可以看到 —-> 更改输出路径为webapps下的目录
功能3 保存+修改课程营销信息
- 上传数据类型:数据 + 图片 ——> req.getParameter() 无法获得参数
- postman进行接口测试: Post请求
功能4 修改课程营销信息
- 修改课程过程:
- 回显操作:先显示出需要修改的内容信息
- 在Postman进行接口测试时,因为根据 ”id“进行判断是否数据已修改,所以在Postman中要多添加一条id信息指明修改某条信息
功能5 修改课程状态
课程内容管理模块
功能1 展示内容
- 数据表的处理:使用INNER JOIN 内连接的方式
SQL查询
但是在JAVA程序中 避免连查 解决办法 ——> 拆分成两个查询语句
接口1 展示内容接口
功能2 新建章节信息
Postman使用
接口3 保存&修改新建章节课程信息
- POST请求方式常用的三种数据提交方式
- 对于传递过来JSON数据的修改方式 : 使用request.getReader()方法,获取一个流的对象进行读取
功能3 修改章节
Ajax
- 是什么?
异步JavaScript + xml —-> 只刷新局部
example: 获取验证码界面,只有“验证码”填写部分需要和服务器进行交互 - 作用
使网页进行异步更新 ——> 不重载整个页面的前提下 进行网页的部分更新