大三笔记(mvc:annotation-driven配置与中文乱码问题)
程序员文章站
2022-03-08 15:50:53
...
<mvc:annotation-driven/>:
这个类主要是用来向工厂中注册了
RequestMappingHandlerMapping
BeanNameUrlHandlerMapping
RequestMappingHandlerAdapter
HttpRequestHandlerAdapter
SimpleControllerHandlerAdapter
ExceptionHandlerExceptionResolver
ResponseStatusExceptionResolver
DefaultHandlerExceptionResolver
上面几个Bean实例。这几个类都是用来做什么的呢?
前两个是HandlerMapping接口的实现类,用来处理请求映射的。其中第一个是处理@RequestMapping注解的。第二个会将controller类的名字映射为请求url。
中间三个是用来处理请求的。具体点说就是确定调用哪个Controller的哪个方法来处理当前请求。第一个处理@Controller注解的处理器,支持自定义方法参数和返回值(很酷)。第二个是处理继承HttpRequestHandler的处理器。第三个处理继承自Controller接口的处理器。
另外说一下中文乱码问题,前台通过ajax将表单信息post给controller,controller接收数据后插入数据库,数据库表是utf8,jsp和xml也都是utf8类型,但是插入数据后,mysql里面中文还是乱码。
最后在jdbc.properties中加入characterEncoding=UTF-8问题解决。
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/drive?characterEncoding=UTF-8
username=sa
password=
#定义初始连接数
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000