198
技术社区[云栖]
SSH整合步骤
Spring+Struts
1. 在web.xml中注册侦听器:
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/beans.xml</param-value>
</context-param>
2. 将Spring的jar包添加到项目中, 除了Spring的jar包以外,还需要struts2-spring-plugin-2.2.1.jar, 将log4j.properties放入src下
3. 在strtus.xml中添加常量:<constant name="struts.objectFactory" value="spring"/>意思是对象工厂由spring来充当
4. 修改Action的代码,将Action中获得Dao的方式由原来直接new改成:将Dao作为属性放入Action
5. 在Spring的配置文件中对项目中用到的类进行配置, 主要是Action和DaoDao配置成单例的
Action配置成原型(每个请求是新的实例进行处理,避免线程安全的问题)
6. 修改struts.xml配置文件,将原来在class中配置的action的完全限定名 修改成 spring配置文件中配置的id属性
Spring和Hibernate整合
7. 自定义的Dao继承与Spring提供的类HibernateDaoSupport()类
同时实现自己的接口直接调用HibernateTemplate()实现持久化操作。
8. 在Spring的配置文件中,添加如下配置:
<bean
>
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://127.0.0.1:3306/stuinfo" />
<property name="username" value="root" />
<property name="password" value="123" />
</bean>
<bean
>
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean>
将sessionFactory注入到自定义的Dao里。例如:
<bean >
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
最后更新:2017-04-02 06:52:18