一:回顾三大框架(hibernate、struts2、Spring)知识点:

    1.1:hibernate框架:

            1.1.1:ORM思想:对象关系映射

            1.1.2:核心配置文件中

                          (1)配置数据库的信息   (2)hibernate的信息 (3)引入映射配置文件

              1.1.3:注意:hibernate的核心配置文件

                        (1):如果单独使用hibernate的框架,核心配置文件的名称(hibernate.cfg.xml)和位置(src下面)固定。

                           (2) :如果hibernate和Spring整合的时候,hibernate核心配置文件名称和位置没有固定要求(可以在Spring的核心配置文件中配置)

               1.1.4:hibernate映射配置文件

                        (1) 实体类和数据库表映射关系——使用ORM思想

        1.2:struts2框架:

                  1.2.1:Action的操作:

                         (1):Action的创建方式 (3种)  

                                  经常使用:    继承类ActionSupport

                         (2):配置Action的访问路径

                                        创建struts2的核心配置文件,这个文件名称(struts.xml)和位置(src)是固定的。

                          (3):配置访问Action的多个方法

                                    一般使用通配符方式

                            (4):在Action中获取表单提交的数据

                                       ①:获取request对象

                                                用ServletActionContext类获取

                                        ②:属性封装  

                                        ③:模型驱动(重点)

                                        ④:表达式封装

                             (5):在Action中操作域对象

                                          使用ServletActionContext类获取域对象

                               (6):配置struts2的过滤器

                1.2.2:值栈:

                                (1):线值栈放数据

                                           set()、和push()两个方法

                                    定义变量,生成get方法

                                 (2)从值栈获取数据

                                            在jsp页面中使用struts2标签+ognl获取

                                            <s:property>

                                             <s:iterator>

                 1.2.3:拦截器

                                   (1)aop(控制反转)和责任链模式

                                    (2)自定义拦截器

                                                继承:MethodFilterInterceptor

                                                重写类里面的方法

                                                配置拦截器和Action的关联

      1.3:Spring框架:

               1.3.1:spring核心配置文件       

                      (1)名称和位置没固定要求                       

                       (2)在Spring核心配置文件中引入schema约束

                1.3.2:创建对象

                       (1)xml配置文件方式:<bean id=""  class="" scope="" />        

                       (2)注解方式:四个注解

                    SSH学习总结

                1.3.3:注 入属性(对象类型)    

                        (1):xml配置文件方式

                        (2):注解方式:两个注解

SSH学习总结


                1.3.4:使用ServletContext对象和监听器实现

                        (1)在服务器启动的时候。加载spting配置文件,创建对象

                        (2)配置Spring的监听器

                        (3)指定Spring配置文件位置

                1.3.5:JDBCTemplate

                            HIbernateTemplate

                1.3.6:Spring事物的配置:

                            xml配置文件方式

                            注解方式

                

二:SSH整合

        2.1:整合思想

SSH学习总结


       2.2:SSH的整合思想(具体事项)

            两个两个框架进行整合(Spring是中间的框架)

           2.2.1:Spring和hibernate进行整合

                        (1)把hibernate核心配置文件中的配置数据库的部分,直接写在Spring的核心配置文件中

                 (2)把sessionFactory对象交给Spring进行配置,所以第一次访问很慢,指只创建一次(SessionFactory)

                        (3)就是在服务器启动的时候创建sessionFactory对象,只创建一次,第一次访问慢

        SSH学习总结


        2.2.2:Spring和struts2进行整合

                        (1)即使把struts2的Action交给Spring进行创建

                                <bean id=""  class="" scope=""/>     

SSH学习总结


三:具体实现整合

        3.1:struts2 和  Spring进行整合

                struts2的Action交给Spring进行配置

                3.1.1:实现过程

                        (1)导入struts2 jar包(整合包........)

                        (2)创建Action

                        (3)创建struts2和核心配置文件,配置Action的访问路径

                                    在src下面,民名称是struts.xml

                         (4)配置struts2的过滤器

                          (5)导入Spring的jar包

                          (6)创建Spring的配置文件

                                        ①:引入约束(schema)

                                        ②:配置Spring的监听器

                                        ③:指定Spring的配置文件的位置(所以Spring的配置文件名随意起)

                           

                SSH学习总结

SSH学习总结

                        (7):把Action的交给Spring配置(重要)(上面6部都是和原来配置一样)

                SSH学习总结

                                    ① 在Spring中配置Action对象,在struts2 中也配置Action对象(这是有冲突)

                                    ②:解决冲突

                              就是在struts2.xml中不需要配置,其他不变,只需要把class改写成bean的id值就好

                                            SSH学习总结

        SSH学习总结

    

        3.2:hibernate和Spring的整合

               把数据库的配置信息交给Spring配置

               把sessionFactory交给Spring进行配置

                3.2.1:具体实现

                        (1)导入hibernate的jar包(必须导入一个Spring整合持久化层的jar包

                            如果有jar包冲突,可以把低版本的删除掉(这是我遇到的问题)

                        (2)搭建hibernate环境

                                    ① 创建实体类

                                    ② 配置实体类和数据库的映射关系(映射配置文件)

                                    ③ 创建hibernate的核心配置文件

                        (3)把数据库的配置在Spring中进行配置(采用c3p0配置数据库的方式配置)

                                SSH学习总结

                        (4)把SessionFactory交给Spring进行配置

                                ① 服务器启动的时候,加载Spring配置文件,把配置文件中对象创建对象            

                                ② 把SessionFactory对象在Spring的配置文件中进行创建

                                ③ Spring把创建SessionFactory对象的复杂操作,封装到一个类中

            SSH学习总结

                        (5):这里说明

                                    单独使用hibernate 的时候,使用的是JdbcTemplate对象

                                     整合的时候使用的是    HIbernateTemplate对象

                                ① 在dao'里面得到hibernateTemplate对象(注入进去)

SSH学习总结

SSH学习总结

                                ②调用hibernateTemplate的方法

            SSH学习总结

                       (6)配置事务

SSH学习总结

                    在使用事物的地方配置(一般都是service中)

    SSH学习总结


        

四:HIbernateTemplate介绍

       4.1:HIbernateTemplate对hibernate框架进行封装

                 可以直接调用HibernateTemplate里面的方法实现功能

        4.2:HibernateTemplate中常用的方法

                        •       Serializablesave(Object entity) :添加操作

                        •        void update(Object entity) :修改操作

                        •        void delete(Object entity) :删除操作                        

                        •        <T> T get(Class<T> entityClass,Serializable id) :根据id查询

                        •        <T> T load(Class<T> entityClass,Serializable id)根据id查询

                       例子:

                        User user = hibernateTemplate.get(User.class,2);

                        •        List find(String queryString, Object...values) :查询操作的方法

                        第一个参数是:hql语句

                        第二个参数是 hql语句的参数值

                SSH学习总结



   Spring和分模块开发

        1.在Spring中配置多个内容,造成混乱,不利于维护

         2.把Spring核心配置文件中的,一部分配置到单独的配置文件中,在Spring的核心配置文件中引入单独配置文件

SSH学习总结


















相关文章:

  • 2022-02-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
猜你喜欢
  • 2021-10-09
  • 2021-04-19
  • 2022-12-23
  • 2021-10-05
  • 2021-04-12
相关资源
相似解决方案