2019独角兽企业重金招聘Python工程师标准>>> 
springmvc 拦截器
继承了HandlerIntercepter的类可以作为拦截器类:
package com.yawn.intercepter;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;public class UserIntercepter implements HandlerInterceptor {// 最后执行的方法,释放资源@Overridepublic void afterCompletion(HttpServletRequest request,HttpServletResponse response, Object object, Exception exception)throws Exception {System.out.println("afterCompletion------->>>>>>>>");}// controller 执行完,生成视图之前的动作@Overridepublic void postHandle(HttpServletRequest request,HttpServletResponse response, Object object,ModelAndView modelAndView) throws Exception {System.out.println("postHandle------->>>>>>>>");}// controller 执行之前的动作@Overridepublic boolean preHandle(HttpServletRequest request,HttpServletResponse response, Object object) throws Exception {System.out.println("preHandle------->>>>>>>>");return true;}}拦截器的配置:
<!-- 拦截器栈的配置 --><mvc:interceptors><mvc:interceptor><mvc:mapping path="/start.do" /><bean class="com.yawn.intercepter.UserIntercepter"></bean></mvc:interceptor><!-- 可定义多个拦截器,形成拦截器栈 --><!-- <mvc:interceptor> --><!-- <mvc:mapping path=""/> --><!-- <bean></bean> --><!-- </mvc:interceptor> --></mvc:interceptors>springmvc 国际化
在classpath下简历message.properties、message_ch_CN.properties、message_en_US.properties
然后进行如下配置,就可以在jsp中使用<spring:message code="welcome"/>来访问了 :
<!-- 国际化的配置 --><bean id="messageSource"class="org.springframework.context.support.ResourceBundleMessageSource"><property name="basename" value="message"></property> <!-- 在classpath下搜索message.properties文件 --></bean>springmvc 验证
package com.yawn.controller;import javax.validation.Valid;import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;import com.yawn.po.User;@Controller
public class TestController {@RequestMapping(value="/start")private String start(@Valid User user, BindingResult result) {/** 1.在User前添加@valid注解后,可自动根据User类中的规则对各个字段进行验证* * 2.表单的验证信息都封装在result中,如果有错误,则可以从中获得错误的信息,将它返回给页面模型*/if (result.hasErrors()) {return "index";}System.out.println(">>>>>>>>>>>>>>>>>>-------");return "start";}}




