再次做SSH项目的过程中,发现之前做到过的有些生疏,经过反思后,发现之前没有认真总结过,为了让技术点连成线,决定做一系列博客。那么就先从搭建开发环境开始。
一、创建一个web工程
二、引入jar包和配置文件
* struts2:
* jar包:
struts-2.3.15.3\apps\struts2-blank.war\WEB-INF\lib\*.jar
struts-2.3.15.3\lib\struts2-json-plugin-2.3.15.3.jar
struts-2.3.15.3\lib\struts2-spring-plugin-2.3.15.3.jar
* 配置文件:
*web.xml
<!-- 配置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>
*struts.xml
* Spring:
* jar包:
Spring3.2 开发最基本jar包
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
com.springsource.org.apache.commons.logging-1.1.1.jar
com.springsource.org.apache.log4j-1.2.15.jar
AOP开发
spring-aop-3.2.0.RELEASE.jar
spring-aspects-3.2.0.RELEASE.jar
com.springsource.org.aopalliance-1.0.0.jar
com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
SpringJdbc开发
spring-jdbc-3.2.0.RELEASE.jar
spring-tx-3.2.0.RELEASE.jar
Spring事务管理
spring-tx-3.2.0.RELEASE.jar
Spring整合其他ORM框架
spring-orm-3.2.0.RELEASE.jar
Spring在web中使用
spring-web-3.2.0.RELEASE.jar
Spring整合Junit测试
spring-test-3.2.0.RELEASE.jar
* 配置文件:
*web.xml
<!-- 配置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>
*applicationContext.xml
*log4j.properties
* Hibernate:
* jar包:
*hibernate-distribution-3.6.10.Final\hibernate3.jar
*hibernate-distribution-3.6.10.Final\lib\required\*.jar
*hibernate-distribution-3.6.10.Final\lib\jpa\*.jar
* slf4j-log4j整合的jar包 :
* 数据库驱动:
* 连接池:(c3p0连接池)
* 配置文件:
* 没有hibernate的核心配置文件的方式整合:
* 映射文件:
三、配置基本配置信息
*C3P0连接池:
*引入外部属性文件:
* jdbc.properties
*配置连接池:
<!-- 配置连接池: -->
<!-- 引入外部属性文件 -->
<context:property-placeholderlocation="classpath:jdbc.properties"/>
<!-- 配置C3P0连接池: -->
<beanid="dataSource"class="com.mchange.v2.c3p0.ComboPooledDataSource">
<propertyname="driverClass" value="${jdbc.driver}"/>
<propertyname="jdbcUrl" value="${jdbc.url}"/>
<propertyname="user" value="${jdbc.user}"/>
<propertyname="password" value="${jdbc.password}"/>
</bean>
*Hibernate相关信息:
<!-- Hibernate的相关信息 -->
<beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 注入连接池 -->
<propertyname="dataSource" ref="dataSource"/>
<!-- 配置Hibernate的其他的属性 -->
<propertyname="hibernateProperties">
<props>
<propkey="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<propkey="hibernate.show_sql">true</prop>
<propkey="hibernate.format_sql">true</prop>
<propkey="hibernate.connection.autocommit">false</prop>
<propkey="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
<!-- 配置Hibernate的映射文件 -->
</bean>
*事务管理:
<!-- 事务管理: -->
<!-- 事务管理器 -->
<beanid="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<propertyname="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 开启注解事务 -->
<tx:annotation-driventransaction-manager="transactionManager"/>
四、引用页面
以上环境搭建完后,就可以开发啦!这里就用一个简单的实例来说明:
1.引入静态页面:
* 在WEB-INF/jsp/
* 将静态页面index.jsp复制到jsp下.
* 将css/js 放到 WebRoot下.
2.Action代码
/**
* 执行的访问首页的方法
* @return
*/
publicString execute(){
return"index";
}
3.访问首页:
配置Action
* 配置applicationContext.xml
<!-- 首页访问的Action -->
<bean id="indexAction" class="action的路径.IndexAction" scope="prototype">
</bean>
* 配置struts.xml
<!-- 配置首页访问的Action -->
<actionname="index" class="indexAction">
<resultname="index">/WEB-INF/jsp/index.jsp</result>
</action>
配置完成后启动tomcat输入地址就可以访问啦:如下所示
五、总结
通过以上步骤就可以进行SSH架构的开发啦!在今后的开发中慢慢的完善!