欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

servlet第二讲(序列化和反序列化、配置上下文参数、service方法的作用、返回给前端json数据)

程序员文章站 2022-05-28 22:28:53
...

1 什么是序列化和反序列化,为什么要序列化?

1.1序列化和反序列化的定义:
(1) Java序列化就是指把Java对象转换为字节序列的过程
Java反序列化就是指把字节序列恢复为Java对象的过程。
(2)序列化最重要的作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在网络上传输或者保存在本地文件中。
反序列化的最重要的作用:根据字节流中保存的对象状态及描述信息,通过反序列化重建对象。
总结: 核心作用就是对象状态的保存和重建。(整个过程核心点就是字节流中所保存的对象状态及描述信息)

2 序列化和反序列化

2.1
load-on-startup 配置servlet的启动顺序(默认是在tomcat启动后自动加载)
如何设置上下文参数:

	给某个servlet配置初始化参数:
	<init-param>
	配置上下文参数:
	<context-param>

2.2service方法的作用
用于分发请求到doGet和doPost对应的方法中
doGet和doPost两个方法都重写是为了接受不同类型的请求,但是通常我们只在某一个方法中去处理业务逻辑以简化代码

public class ServletDemo3 extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {
        doPost(req,resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {
    	//设置返回内容的格式及编码
    	response.setContentType("text/html";"charset=UTF-8");
        System.out.println("ee");
    }
}

3 返回给前端json数据

3.1
(1)从数据库中拿到的数据应该是存放在一个集合中
(2)返回给前台时要返回的是该集合对应的json类型的字符串
(3)Java中不存在Json对象,也无法进行对应的转换,因此需要借助第三方工具,如fastJson(阿里提供的)、Gson(谷歌提供的)。

//将集合对象包装成一个json字符串,返回
String data = JSON.toJSONString(userList);
out.write(data);