您的位置:首页 > 编程语言 > Java开发

SpringMVC控制器配置文件

2015-11-20 14:29 609 查看
1 首先引入 xml 的约束

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">

2 <!-- 扫描指定包目下所有java类,把标记了@Controller注解的类转换为bean -->
<context:component-scan base-package="com.mvc.spring.web" />

3   <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 ,有几种形式-->
A    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/view/" p:suffix=".jsp" />
B     <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
<property name="prefix" value="/WEB-INF/view/" />
<property name="suffix" value=".jsp"  />
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
</bean>
分析  viewClass指定了选择何种视图技术,这里使用JSTL技术;
prefix是视图文件的前缀,即目录名,因为我们把persons.jsp放到了目录/WebRoot/之下,所以只需要配置一个“/”,如果放在目录/WebRoot/目录下的一个名称为view的目录中,这里prefix的值应该为/view/;
suffix是视图文件的后缀,即扩展名,如使用JSP文件,则为“.jsp”。

4  配置servelt上的注解映射
<!-- 配置处理在类级别上的@RequestMapping注解,允许扩展自定义拦截器,在此类的基础上,只需要设置interceptors参数 -->
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
<!-- 配置处理方法级别上的@RequestMapping注解 ,允许扩展自定义的方法注解,例如参数 webBindingInitializer,customArgumentResolver,messageConverters-->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

5  <!-- 表示使用cglib,而非JDK的动态代理,因为Controller没有实现接口,所以要配置这里 -->
<aop:aspectj-autoproxy proxy-target-class="true"  />

6  <!--用于文件上传->
<bean id="multipartResolver"  class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
p:defaultEncoding="utf-8"   p:resolveLazily="ture" />

<!---通过该对象能绑定数据验证[自定义也行]与新的ConversionService->
7 <bean id="webBindingInitializer" class="org.springframework.web.bind.support.ConfigurableWebBindingInitializer">
<property name="validator" ref="validator" />
<property name="conversionService" ref="conversionService"/>
</bean>

<!---自定义的错误消息文件和错误消息键值,配置ValidationMessages.properties,此时错误消息键值的查找会先到classpath下ValidationMessages.properties中找,找不到再到默认的错误消息文件中找。->
8 <bean id="validator"   class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
<property name="providerClass"   value="org.hibernate.validator.HibernateValidator"/>
</bean>

<!--jsr303 数据验证,用于验证注解方法上的参数合法性,为了不影响业务代码,提前在执行前验证,因为版本较高,需要hibernate4[已经实现]-->
9 <bean id="methodValidationPostProcessor" class="org.springframework.validation.beanvalidation.MethodValidationPostProcessor">
<property name="validator" ref="validator"></property>
</bean>

API(简称,全称,作用)
A InternalResourceViewResolver  [视图解析器]
org.springframework.web.servlet.view.InternalResourceViewResolver
网络解析点  :http://7-sun.com/doc/spring2.5_doc_cn/org/springframework/web/servlet/view/InternalResourceViewResolver.html

B  JstlView [JSTL视图]
org.springframework.web.servlet.view.JstlView

C DefaultAnnotationHandlerMapping [映射控制器类上的注解]
org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping

D AnnotationMethodHandlerAdapter  [映射控制器方法上的注解]
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter

E CommonsMultipartResolver [文件上传]
org.springframework.web.multipart.commons.CommonsMultipartResolver

F ConfigurableWebBindingInitializer [设置(绑定)某些重要属性spring属性]
org.springframework.web.bind.support.ConfigurableWebBindingInitializer

G LocalValidatorFactoryBean [配置ValidationMessages.properties]
org.springframework.validation.beanvalidation.LocalValidatorFactoryBean

J MethodValidationPostProcessor  [方法参数验证[jsr303]]
org.springframework.validation.beanvalidation.MethodValidationPostProcessor
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: