ssh整和的关键在于dao层里用hibernate替代jdbc来进行数据的操作.但是这是ssh的整合,所以要用到spring提供的org.springframework.orm.hibernate3.support.HibernateDaoSupport来进行数据库的操作,public class UsersDAOImp extends HibernateDaoSupport implements UserDao {
private static final Log log = LogFactory.getLog(UsersDAOImp.class);
protected void initDao() {
//do nothing
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#save(com.ssh.entity.Users)
*/
public void save(Users transientInstance) {
log.debug("saving Users instance");
try {
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
} catch (RuntimeException re) {
log.error("save failed", re);
throw re;
}
}
还有是hibernate的事务管理太过于复杂,所以在sping中加入了事务管理与数据库的连接,并声明了session,利用sping的ioc替代了一些静态工厂,aop进行权限的校验,日志文件等服务.
最后是action的管理交给了spring
1:<plug-in classname="org.springframework.web.struts.ContextLoaderPlugIn"></plug-in>
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
plug-in>
2:在action中的映射文件中标的type改成 type="org.springframework.web.struts.DelegatingActionProxy" >
其余的不变,在spring中配置文件中加入action的映射
<bean name="/login" class="com.ssh.action.LoginAction"
<property name="dao">
<ref bean="UsersDAOImp"/>
property>
bean>
name与action的相同
private static final Log log = LogFactory.getLog(UsersDAOImp.class);
protected void initDao() {
//do nothing
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#save(com.ssh.entity.Users)
*/
public void save(Users transientInstance) {
log.debug("saving Users instance");
try {
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
} catch (RuntimeException re) {
log.error("save failed", re);
throw re;
}
}
还有是hibernate的事务管理太过于复杂,所以在sping中加入了事务管理与数据库的连接,并声明了session,利用sping的ioc替代了一些静态工厂,aop进行权限的校验,日志文件等服务.
最后是action的管理交给了spring
1:<plug-in classname="org.springframework.web.struts.ContextLoaderPlugIn"></plug-in>
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
plug-in>
2:在action中的映射文件中标的type改成 type="org.springframework.web.struts.DelegatingActionProxy" >
其余的不变,在spring中配置文件中加入action的映射
<bean name="/login" class="com.ssh.action.LoginAction"
<property name="dao">
<ref bean="UsersDAOImp"/>
property>
bean>
name与action的相同