spring mvc 框架的基础条件 2
来源:互联网 发布:空间数据库怎么弄 编辑:程序博客网 时间:2024/06/16 21:58
每一个应用,应该都会出现异常,那么在就有必要做一个异常拦截机制,那么在controller层就可以把异常抛出去,然后让该异常跳转到相应的页面
1 异常拦截,spring 有一个一次拦截接口,因此可以写一个类,实现该接口,然后处理业务的异常流程
public class MyHandlerException implements HandleExceptionResolver{
public ModelAndView resolveException(HttpServletRequest request,HttpServletResponse response,Object obj){
system.out.println("异常拦截");
return new ModelAndView("redirect:/errorJsp");
}
}
在servlet.xml 里面配置 该异常的处理
<bean id=“myHandlerException”class="web.MyHandlerException" />
在建一个 errorJsp的controller 让其跳转到指定的错误页面即可
2 在应用访问的时候 肯定需要初始化一些数据,那么就需要写一个类,实现spring自定义的接口 WebBindingInitializer
public class commandBindInit implements WebBindingInitializer {
@override
public void initBinder(WebDataBinder binder,WebRequest request){
BaseCommand baseCom = (BaseCommand)binder.getTarget();
if(baseCom !=null){
baseCom.setUserIp("127.0.0.1");
}
}
}
public class BaseCommand {
private String userIp;
}
以上写完之后,需要在servlet.xml里面添加下面配置,CommandBindInit类才能够实现初始化
<bean class="org.springframework.web.servlet.mvc.annotaion.AnnotationMethodHandlerAdapter">
<property name="WebBindingInitializer">
<bean class="web.CommandBindInit" />
</property>
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list><value>text/html;charset=UTF-8</value></list>
</property>
<property name="writeAcceptCharset" value="false">
</property>
</bean>
</list>
</property>
</bean>
添加以上配置后发现还是不能初始化信息,调查发现 需要将servlet.xml里面的 <mvc:annotation-driven /> 放到 CommandBindInit 配置的后面方可以使用
1 异常拦截,spring 有一个一次拦截接口,因此可以写一个类,实现该接口,然后处理业务的异常流程
public class MyHandlerException implements HandleExceptionResolver{
public ModelAndView resolveException(HttpServletRequest request,HttpServletResponse response,Object obj){
system.out.println("异常拦截");
return new ModelAndView("redirect:/errorJsp");
}
}
在servlet.xml 里面配置 该异常的处理
<bean id=“myHandlerException”class="web.MyHandlerException" />
在建一个 errorJsp的controller 让其跳转到指定的错误页面即可
2 在应用访问的时候 肯定需要初始化一些数据,那么就需要写一个类,实现spring自定义的接口 WebBindingInitializer
public class commandBindInit implements WebBindingInitializer {
@override
public void initBinder(WebDataBinder binder,WebRequest request){
BaseCommand baseCom = (BaseCommand)binder.getTarget();
if(baseCom !=null){
baseCom.setUserIp("127.0.0.1");
}
}
}
public class BaseCommand {
private String userIp;
}
以上写完之后,需要在servlet.xml里面添加下面配置,CommandBindInit类才能够实现初始化
<bean class="org.springframework.web.servlet.mvc.annotaion.AnnotationMethodHandlerAdapter">
<property name="WebBindingInitializer">
<bean class="web.CommandBindInit" />
</property>
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list><value>text/html;charset=UTF-8</value></list>
</property>
<property name="writeAcceptCharset" value="false">
</property>
</bean>
</list>
</property>
</bean>
添加以上配置后发现还是不能初始化信息,调查发现 需要将servlet.xml里面的 <mvc:annotation-driven /> 放到 CommandBindInit 配置的后面方可以使用
0 0
- spring mvc 框架的基础条件 2
- Spring MVC 框架基础
- Spring 的MVC框架
- SSM框架(Spring Spring MVC Mybatis)基础入门学习2——Spring入门实例
- Spring的MVC框架认识
- Spring框架的Portlet MVC
- Spring的MVC框架认识
- 什么是Spring的MVC框架?
- Spring MVC框架的搭建
- Spring MVC (mvc框架)
- Spring4.X + Spring MVC + Mybatis3 零配置应用开发框架搭建详解 (2) - 基础框架搭建
- 框架:Spring、Spring MVC
- Spring框架的MVC实现——Spring MVC
- Spring MVC框架的高级配置
- Spring MVC框架的高级配置
- Spring MVC框架的高级配置
- Spring MVC框架的高级配置(转载)
- Spring Web MVC框架的特点
- 线性规划
- LeetCode Add Two Numbers
- DOM0, DOM1, DOM2, DOM3
- js判断是否是IE的简单方法
- 有一个一亿节点的树,现在已知两个点,找这两个点的共同的祖先
- spring mvc 框架的基础条件 2
- PreferenceActivity使用简介
- 使用ThinkPHP扩展,实现Redis的CURD操作。
- LeetCode 035 Search Insert Position
- 小技巧3-iOS 获取当前系统时间
- win7 64位安装redis 及Redis Desktop Manager使用
- 用VS2010调试:查看dataset、datatable的内容
- APP快速开发:用这些工具更给力
- Android studio Git及TortoiseGit使用全程图解