Java_SSH框架的成长之路

SSH主要是由Struts、Spring、Hibernate三大框架组成。

SSH主要也是面向MVC思想的框架,大体可归纳为以下:

  1. M又称之为model主要代表数据逻辑处理层:实体类(domian、pojo、entity)、DAO层、Service层。
  2. V又称之为view主要代表数据的显示层:JSP技术。
  3. C又称之为controller主要是处理访问请求和响应结果,如springMVC。

主要介绍SSH框架如何整合

  • 导包

        三大框架的主要核心包导入即可!
    
  • web.xml配置方法

    配置过滤器
        <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    spring监听器
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext.xml</param-value>
        </context-param>
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener
        </listener>
  • spring、hibernate、struts的配置整合:applicationContext.xml和struts.xml

    • applicationContext.xml
1、引入beans、aop、tx、aop等约束;
2、获取数据源、连接数据库
<bean name="ds" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    <property name="url" value="jdbc:mysql://localhost:3306/baoxiansystem"></property>
    <property name="username" value="root"></property>
    <property name="password" value="123456"></property>
   </bean>
3、创建sessionfactory
<bean name="sessionFactory" 
 class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="ds"></property>
    3.1、hibernate辅助配置
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
            <prop key="hibernate.show_sql">true</prop>
            <prop key="hibernate.format_sql">true</prop>
            <prop key="hibernate.hbm2ddl.auto">update</prop>
        </props>
    </property>
    3.2、orm映射文件
           <property name="mappingResources">
            <list>
                <value>映身文件的路径.xml</value>
            </list>
        </property>
</bean>
4、创建spring管理对象
   <bean name="名称" class="全类名引用"></bean>    
5、AOP事务设置
    5.1、事务管理器
        <bean name="txManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory"></property>
        </bean>
    5.2、通知
    <tx:advice id="txAdvice" transaction-manager="txManager">
        <tx:attributes> 
            <tx:method name="get*" propagation="REQUIRED"/>
            <tx:method name="find*" propagation="REQUIRED"/>
            <tx:method name="select*" propagation="REQUIRED"/>
            <tx:method name="save*" propagation="REQUIRED"/>
            <tx:method name="insert*" propagation="REQUIRED"/>
            <tx:method name="update*" propagation="REQUIRED"/>
            <tx:method name="delete*" propagation="REQUIRED"/> 
            <tx:method name="*" propagation="REQUIRED"/>
        </tx:attributes>
    </tx:advice>
    5.3、切面
        <aop:config>
        <aop:pointcut expression="execution(* com.fqy.*.*(..))" id="pc"/>
        //第一*通配符表示:任意返回值
        //第二*通配符表示:指定包名下的所有类
        //第三*通配符表示:指定类下的所有方法
        //..通配符表示所有形参个数为1个或多个。
        <aop:advisor advice-ref="txAdvice" pointcut-ref="pc"/>
    </aop:config>

struts.xml

引用struts版本约速
<struts>
    <package name="default" extends="struts-default,json-default" namespace="">
        <global-results>
            <result name="error">error.jsp</result>
            <result name="login">login.jsp</result>
        </global-results>
        //*通配符代表要访问的路径,使用*要提前规划访问的路径,{1}代表第一个*通配符的方法,也可以使用进行多个*通配符组合,可用{*的个数}代表。
        <action name="*UserAction" class="userAction" method="{1}">
            <result name="user">user.jsp</result>
            <result name="admin">admin.jsp</result>
        </action>   
    </package>
</truts>    
  • action、service、dao层与jsp层的代码实现。
  • 未完待续…
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值