这一周学习的内容。
1.学习了mybatis 的相关使用 学会了怎么样通过 配置文件和映射把SQL语句进行封装 。 将一个个sql语句变成一个个方法。 只需要调用参数就可以使用这些sql语句。 这样主要是为了以便捷的更改sql语句。 我们只需要改变封装好的方法中的内容,就可以做到对于sql语句的内容调整。 相对于jdbc的操作,这样会更加的让代码 更加容易更改。 然后还能实现jdbc无法做到的就是实现动态sql语句。
<update id="update">
update tb_brand
<set>
<if test="brandName != null and brandName != ''">
brand_name = #{brandName},
</if>
<if test="companyName != null and companyName != ''">
company_name = #{companyName},
</if>
<if test="ordered != null">
ordered = #{ordered},
</if>
<if test="description != null and description != ''">
description = #{description},
</if>
<if test = "status !=null">
status = #{status}
</if>
</set>
where id = #{id};
</update>
类似于这种可以判断是否输入来进行。是否进行这个条件约束的update语句.、
2. ajax的学习,这个主要就是实现HTML界面和 后端JAVA代码进行的数据交互。
new Vue({
el: "#app",
data(){
return {
brand:{}
}
},
methods:{
submitForm(){
// 发送ajax请求,添加
var _this = this;
axios({
method:"post",
url:"http://localhost:8080/brand-demo/addServlet",
data:_this.brand
}).then(function (resp) {
// 判断响应数据是否为 success
if(resp.data == "success"){
location.href = "http://localhost:8080/brand-demo/brand.html";
}
})
}
}
})
主要就是像这样把HTML上的 用户输入的数据。 将它封装成一个JSON 字符串 然后将它发送给指定的JAVA代码。
@WebServlet("/addServlet")
public class AddServlet extends HttpServlet {
private BrandService brandService = new BrandService();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1. 接收数据,request.getParameter 不能接收json的数据
/* String brandName = request.getParameter("brandName");
System.out.println(brandName);*/
// 获取请求体数据
BufferedReader br = request.getReader();
String params = br.readLine();
// 将JSON字符串转为Java对象
Brand brand = JSON.parseObject(params, Brand.class);
//2. 调用service 添加
brandService.add(brand);
//3. 响应成功标识
response.getWriter().write("success");
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
然后JAVA代码这边进行接收,然后相应的doget 方法 和doPast 方法就可以接收到相关的数据 然后利用这些数据来执行相关的逻辑操作。 当然首先要 把JSON 字符串转变成JAVA对象。
然后还可以返回一些数据。 让HTML进行下一步操作。
然后对于上面数据的封装是使用了 Vue 框架 通过Vue 对象绑定的方式。来获取到 用户输入的数据。 并把它他封装起来。 这样就不需要使用一些重复的获取vlue 值 的操作 .并且这样绑定之后也可以动态的对显示的数据进行操作。
然后还学习了关于Cookie 和Session 的 相关知识 知道了两者之间的区别和一些底层的逻辑。
然后这个技术主要就是用来进行用户的E会话追踪。 在用户登陆之后可以存储一些数据。 在服务器或者客户端当中。 让之后的交互可以使用这一部分数据。 就不需要用户再次输入或者是从数据库中获取。
然后对于前端我还接触了Element 这个工具 学习了怎么使用这个工具进行一个比较快捷的前端页面开发。 也学习了一些基本的组件,例如表格,按钮的之类的设计。 和一些触发事件的交互。
我对于一个web项目 的流程。 我现在的理解就是先做出一个可以让用户进行交互的界面。 然后把它和Vue框架进行结合。 通过Vue 来,对于用户的数据请求进行接收 和显示 , 然后将这些数据通过ajax传给 Servlet代码 然后再通过Servlet 代码 。通过mybatis 来对于数据库进行数据的相关操作。 然后把这些数据返回给HTML ,然后通过改变 Vue 模型中的数据, 让用户看到的数据也发生变化。 就这样做到 客户端和服务端之间的交互。