1、使用的组件版本
spring3.14
hibernate3
ibatis2.3
2、web.xml中的配置
listener:ContextLoaderListener
->加载配置文件spring-context.xml
servlet:DispatherServlet
->加载配置文件spring-mvc.xml
3、spring-context.xml的主要配置内容
<!--开启注释 -->
<context:annotation-config/>
<!--配置服务组件范围-->
<context:component-scan base-package="cn.com.*.*.service.impl"/>
<!--数据源配置省略-->
<!--hibernate注解方式配置 -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="hibernateProperties">
<prop>...</prop>
</property>
<property name="packageToScan">
<list>
<value>cn.com.*.*.domain</value>
</list>
</property>
</bean>
<bean id="hibernateTmplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
<!--ibatis配置-->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean>
<property name="dataSource" ref="dataSource"/>
<property name="configLocation" value="classpath:sql-map-config.xml/>
</bean>
<!--配置事务注释方式-->
<bean id="transmgr" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<proerty name="dataSource" ref="dataSource"/>
</bean>
<tx:annotation-driven transaction-manager="transmgr" proxy-target-class="true"/>
4、spring-mvc.xml主要配置
<context:component-sacn base-package="cn.com.*.*.controller"/>
<mvc:annotation-driven>
<mvc:message-converters register-deaults="true">
<bena class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" p:supportedMediaTypes=“text/html;charset=UTF-8"/>
</mvc:message-converters>
</mvc:annotation-driven>
<!--上传文件配置 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" p:maxUploadSize="-1"/>
<!--视图配置 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResoler" p:prefix="/pages/" p:suffix=".jsp"/>
<!--异常处理 -->
<bean id="ex" class="cn.com.*.*.MyExceptionHandler"/>
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="defaultErrorView" value="/*/*"/>
<property name="exceptionAttribute" value="ex"/>
......
</bean>
<!--拦截器配置-->
<mvc:interceptors>
<bean class="cn.com.*.*.MyLoginterceptor"/>
</mvc:interceptors>
5、Spring控制器的编写
@controller
@RequestMapping("/orgmgr")
class MyControler{
@Autowired
@Qualifier("orgmgrImpl')
private OrgMgrImpl orgmgrImpl;
@requestMapping(value="/orglist") //返回页面
private String getOrgfList(){
......
}
@requestMapping(value="/orglistjson") //返回json数据
private String getOrgfListJson(){
......
}
}
6、Service的编写
@Service
public class MyService{
@Autowired
@Resource(name="sqlMapClientTemplate")
protected SqlMapClientTemplate sqlMapClientTemplate;
@Autowird
@Resource(name="hibernateTemplate")
protected HibernateTemplate hibernateTemplate;
@Transactional(rollbackFor = Exception.class)
public Object getOrgfList(){
......
}
}