1.简述SpringMVC工作流程(简答题)10' 2.简述Controller的作用主要有哪些(简答题)10‘ 3.json类型的数据格式是怎样的,如何手动把对象或集合转成json类型的字符串?(简答题),配置json类型转换又是怎样的?(简答题)20' 4.如何解决乱码问题,有哪几种方式?(简答题)10'
时间: 2024-02-26 17:53:28 浏览: 23
1. SpringMVC的工作流程包括以下步骤:
1)用户发出请求,请求被DispatcherServlet接收;
2)DispatcherServlet查询HandlerMapping,找到处理请求的Controller;
3)Controller处理请求后,返回一个ModelAndView对象;
4)DispatcherServlet查询ViewResolver,找到ModelAndView指定的视图;
5)最终视图呈现给用户。
2. Controller的作用主要有以下几个:
1)处理用户请求,调用业务逻辑处理后返回视图;
2)处理表单提交;
3)处理Ajax请求;
4)处理文件上传;
5)处理异常等。
3. json类型的数据格式是一种轻量级的数据交换格式,它采用键值对的方式表示数据,具有易读性、易解析性等特点。手动把对象或集合转成json类型的字符串可以使用第三方的json库,例如Jackson、Gson等。其中,Jackson的转换代码如下:
ObjectMapper mapper = new ObjectMapper();
String jsonStr = mapper.writeValueAsString(obj);
配置json类型转换可以通过在Spring配置文件中添加<mvc:annotation-driven>元素,开启注解驱动,自动完成json类型转换。例如:
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</mvc:message-converters>
</mvc:annotation-driven>
4. 解决乱码问题可以采用以下几种方式:
1)在web.xml中添加过滤器,设置字符编码;
2)在Spring配置文件中添加字符编码过滤器,例如:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3)在页面中设置meta标签,例如:<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">。