springmvc 拦截器java
继承了HandlerIntercepter的类能够做为拦截器类:web
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 { // 最后执行的方法,释放资源 @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object object, Exception exception) throws Exception { System.out.println("afterCompletion------->>>>>>>>"); } // controller 执行完,生成视图以前的动做 @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object object, ModelAndView modelAndView) throws Exception { System.out.println("postHandle------->>>>>>>>"); } // controller 执行以前的动做 @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object object) throws Exception { System.out.println("preHandle------->>>>>>>>"); return true; } }
拦截器的配置:spring
<!-- 拦截器栈的配置 --> <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 国际化mvc
在classpath下简历message.properties、message_ch_CN.properties、message_en_US.properties
app
而后进行以下配置,就能够在jsp中使用<spring:message code="welcome"/>来访问了 :
jsp
<!-- 国际化的配置 --> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename" value="message"></property> <!-- 在classpath下搜索message.properties文件 --> </bean>
springmvc 验证ide
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"; } }