很多小伙伴可能一听到框架两个字就会马上摇头,脑子里立刻闪现一个词---“拒绝”,其实我也不例外,但我想告诉大家的是,当你真正掌握它时,你会发现**SSH**用起来是那么顺手,因为它对于开发web应用真的很方便,下面就我个人经验和大伙儿谈谈如何利用**SSH框架技术**来进行*web应用开发*吧。
首先是应该了解SSH框架技术的运行流程
在此我给大家介绍一种常见的SSH开发模式,这对于初学者来说应该也是比较好理解的。在进行使用SSH框架时最好先去了解一下Struts2+hibernate的工作原理,下面提供两个链接,大家可以了解一下“SH”的工作原理:
[Struts2工作原理]
/langti...
[hibernate工作原理]
/ques...
另外一个就是SSH框架开发所需的jar包,这对于开发非常重要,没有一个完整正确的jar包是绝对不能顺利应用SSH框架,以下是我整理的完整jar包:
链接:/s/1bFujh0 密码:pisr
以外是利用SSH框架技术进行开发的一个过程:
在web.xml进行一些相关配置
【1】首先进行Struts2核心过滤器的配置,作用是拦截一些action,核心代码如下:
<!-- struts2核心过滤器的配置 --><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>【2】对于spring的核心监听器的配置<!-- spring的核心监听器的配置 --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value>
</context-param>
创建开发过程中所需要的包,在我的实例项目我创建了四个包,分别是:
【1】cn.imooc.action 管理action的类包
【2】cn.imooc.servie 管理service的类包
【3】cn.imooc.dao 管理dao的类包
【4】cn.imooc.domain 管理实体类的包引入四个常用的配置文件,即applicationContext.xml struts.xml log4j.properties jdbc.properties在各个包中创建所需要的类在各个类完成ssh框架流程
在以上四个配置文件中完成相应的配置,在此我只说明各个配置文件完成什么功能:
jdbc.properties:它是设置我们连接数据库的一个配置文件,里面包含了数据库的驱动、数据连接的地址,数据库的用户名,数据库的密码
Struts2.xml:该文件中是说明拦截什么action
log4j.properties:这个文件是我们的日志记录文件
applicationContext.xml:这个是spring的核心配置文件,也是我们整个ssh框架开发的核心,它的作用就如胶水将Struts2和hibernate结合起来了。
在这里就重点说明第四个文件的配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="/schema/beans"
xmlns:xsi="/2001/XMLSchema-instance"
xmlns:aop="/schema/aop"
xmlns:context="/schema/context"
xmlns:p="/schema/p"
xmlns:tx="/schema/tx"
xsi:schemaLocation="/schema/beans http://www.springframework.or...
/schema/aop /schema/aop/spring-aop-3.1.xsd/schema/tx/schema/tx/spring-tx-3.0.xsd/schema/context /schema/context/spring-context-3.1.xsd">
<!-- 引入外部的属性文件 -->
<context:property-placeholder location="classpath:jdbc.properties"/>
<!-- 配置c3p0连接池 -->
<bean id="dataSource" class="com.mchange.boPooledDataSource"><property name="driverClass" value="${jdbc.driverClass}"></property><property name="jdbcUrl" value="${jdbc.url}"></property><property name="user" value="${jdbc.username}"></property><property name="password" value="${jdbc.password}"></property></bean>作用:是为了连接我们所需要连接的数据库<!-- 配置hibernate的一些相关属性 --><bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><!-- 注入连接池 --><property name="dataSource" ref="dataSource"/><!-- 配置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>该部分是为了完成hibernate框架中对象映射文件的功能<!-- 加载hibernate中的映射文件 --><property name="mappingResources"><list><value>cn/imooc/domain/Product.hbm.xml</value></list></property></bean>
<!-- 配置Action的类 -->
<bean id="productAction" class="cn.imooc.action.ProductAction" scope="prototype">
<!-- 手动注入service --><property name="productService" ref="productService"></property>
</bean>
<!-- 配置业务层的类 -->
<bean id="productService" class="cn.imooc.service.ProductService">
<property name="productDao" ref="productDao"></property>
</bean>
<!-- 配置DAO的类 -->
<bean id="productDao" class="cn.imooc.dao.ProductDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 开启注解事务 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
</beans>
以上就是ssh框架的大致开发过程,大家有问题可以放出来讨论一下,下面我将我的整个项目发给大家看看:
链接:/s/1jHM5wWY 密码:ykm9