springmvc
理解
request的参数只可以获取一次
正常普通接口请求,request.getParameter()可以获取,能多次读取
如果我们的接口是用@RequestBody来接受数据,那么我们在拦截器中
需要读取request的输入流 ,因为 ServletRequest中getReader()和getInputStream()只能调用一次
这样就会导致controller 无法拿到数据。
草:放弃使用拦截器改用aop好了,拦截器是针对请求,aop是针对方法。
拦截器获取请求参数是通过request,但request只能被获取一次,就算你重写request对象让request可以获取多次参数,后期也可能有其他问题,比如文件流传输,from表单参数,内部对request对象的耦合性根本理不清。还不如直接用aop。
过滤器:
创建Filter 必须实现javax.servlet.Filter 接口,在该接口中定义了三个方法。
• void init(FilterConfig config): 用于完成Filter 的初始化。
• void destroy(): 用于Filter 销毁前,完成某些资源的回收。
• void doFilter(ServletRequest request, ServletResponse response,FilterChain chain): 实现过滤功能,该方法就是对每个请求及响应增加的额外处理
图片上传处理
MultipartFile与CommonsMultipartFile的区别与使用
CommonsMultipartFile是MultipartFile接口的实现类,使用MultipartFile接受参数也是生成CommonsMultipartFile实例
作用是将HttpSerlvetRequest封装成MultipartHttpServletRequest,通过MultipartHttpServletRequest .getFile(**)可以直接获取MultipartFile文件对象。
直接使用mvc自带的CommonsMultipartFile.transferTo(**)比用流保存文件更快。
学习链接
mybatis
理解
pagehelper分页
分页原理是在原sql的基础上自动添加limit,并且多了查询总记录的sql,共运行两条sql。

1万+

被折叠的 条评论
为什么被折叠?



