crm开发(基于ssh)(1)

搭建crm练习ssh环境

第一步 导入jar包

第二步 搭建struts2环境

(1)创建action,创建struts.xml配置文件,配置action

(2)配置struts2的过滤器

第三步 搭建hibernate环境

(1)创建实体类

(2)配置实体类和数据库表映射关系

(3)创建Hibernate核心配置文件

-引入映射配置文件

第四步 搭建spring环境

(1)创建spring核心配置文件

(2)让spring配置文件在服务器启动时候加载

-配置监听器

-指定spring配置文件位置

第五步 struts2和spring整合

(1)把action在spring配置(action多实例的)

(2)在struts.xml中action标签class属性里面写bean的id值。

第六步 spring和Hibernate整合

(1)把Hibernate核心配置文件中数据库配置,在spring里面配置

(2)把Hibernate的sessionFactory在spring配置

第七步 完成互相注入(在dao里面使用hibernateTemplate)

(1)在dao注入hibernateTemplate对象

(2)在hibernateTemplate对象中注入sessionFactory

private HibernateTemplate hibernateTemplate;

    public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
        this.hibernateTemplate = hibernateTemplate;
    }

bean.xml中的配置

<bean id="userDaoImpl" class="cn.itcast.dao.UserDaoImpl">
        <property name="hibernateTemplate" ref="hibernateTemplate"></property>
    </bean>
    
    <bean id="hibernateTemplate" class="org.springframework.orm.hibernate5.HibernateTemplate">
        <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>

(3)dao注入hibernateTemplate简化写法

在继承类HibernateDaoSupport实现一部分功能,把hibernateTemplate帮完成注入

(4)之前在hibernate配置与本地线程绑定session

<!-- 在hibernate核心配置文件中配置 -->
<property name="hibernate.current_session_context_class">thread</property>

-不需要在spring里面再配置与本地线程绑定session

第八步 事务配置

<!-- 事务管理 -->
    <bean id="transactionManager"
        class="org.springframework.orm.hibernate5.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory">
        </property>
    </bean>
    
    <!-- 事务管理 使用提示。完成之后需要在类上写transactional -->
    </tx:annotation-driven> -->
    <tx:annotation-driven transaction-manager="transactionManager"/>

完成之后需要在UserService类上写@Transactional。

 在使用UserDaoImpl的简化方式时,出现错误,构建bean出现问题。

 

posted @ 2018-11-11 19:26  寒潭渡鹤影  阅读(277)  评论(0编辑  收藏  举报