第一步、导入sprint4、struts2和hibernate4的jar包

struts2的jar包

commons-fileupload-1.3.3.jar

commons-io-2.5.jar

commons-lang3-3.6.jar

freemarker-2.3.26-incubating.jar

javassist-3.20.0-GA.jar

log4j-api-2.10.0.jar

ognl-3.1.15.jar

struts2-core-2.5.17.jar

struts2-spring-plugin-2.5.17.jar(和spring4整合使用)

hibernate5的jar包

antlr-2.7.7.jar

dom4j-1.6.1.jar

geronimo-jta_1.1_spec-1.1.1.jar

hibernate-commons-annotations-5.0.1.Final.jar

hibernate-core-5.0.7.Final.jar

hibernate-jpa-2.1-api-1.0.0.Final.jar

jandex-2.0.0.Final.jar

javassist-3.18.1-GA.jar

jboss-logging-3.3.0.Final.jar

spring4的jar包

spring-beans-4.0.0.RELEASE.jar

spring-context-4.0.0.RELEASE.jar

spring-core-4.0.0.RELEASE.jar

spring-expression-4.0.0.RELEASE.jar

spring-jdbc-4.0.0.RELEASE.jar

spring-tx-4.0.0.RELEASE.jar

spring-web-4.0.0.RELEASE.jar

第二步、配置web.xml配置文件

<!-- 配置struts2的过滤器-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.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> <!-- 设置spring4的监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

第三步、配置spring的struts2的配置文件

spring配置文件applicationContext.xml

<!-- 定义数据源,这里使用的jdbc。也可以使用c3p0等连接池 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql:///blog"></property>
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
</bean> <!-- 配置hibernate5 的 sessionFactory,交由spring来管理。不用在程序里自己new -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property> <!-- 配置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> <!-- 配置关联关系映射文件 的方式之一 -->
<property name="mappingResources">
<list>
<value>com/tzblog/bean/Album.hbm.xml</value>
<value>com/tzblog/bean/Article.hbm.xml</value>
<value>com/tzblog/bean/Critique.hbm.xml</value>
<value>com/tzblog/bean/Me.hbm.xml</value>
<value>com/tzblog/bean/Photo.hbm.xml</value>
</list>
</property>
</bean> <!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean> <!-- struts2 的 Action 交由 spring来管理,在struts.xml中的action的class里填写bean id -->
<bean id="IndexAction" class="com.tzblog.action.IndexAction">
<property name="articleDAO" ref="articleDAO" />
<property name="critiqueDAO" ref="critiqueDAO"/>
</bean>
<bean id="AlbumAction" class="com.tzblog.action.AlbumAction">
<property name="albumService" ref="albumService" />
</bean>
<bean id="ArticleAction" class="com.tzblog.action.ArticleAction">
</bean>
<bean id="MeAction" class="com.tzblog.action.MeAction">
<property name="meService" ref="meService" />
</bean>
<bean id="CritiqueAction" class="com.tzblog.action.CritiqueAction">
<property name="critiqueService" ref="critiqueService" />
</bean> <!-- Service -->
<bean id="albumService" class="com.tzblog.service.AlbumService"></bean>
<bean id="meService" class="com.tzblog.service.MeService">
<!-- meService要用的对象,下面的一样 -->
<property name="meDAO" ref="meDAO"/>
</bean>
<bean id="critiqueService" class="com.tzblog.service.CritiqueService"></bean> <!-- DAO -->
<bean id="albumDAO" class="com.tzblog.dao.AlbumDAO">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="articleDAO" class="com.tzblog.dao.ArticleDAO">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="critiqueDAO" class="com.tzblog.dao.CritiqueDAO">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="meDAO" class="com.tzblog.dao.MeDAO">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="photoDAO" class="com.tzblog.dao.PhotoDAO"/>

struts2的配置文件struts.xml

  <!-- 开启开发模式,在不使用spring的时候可以自动热部署-->
<constant name="struts.devMode" value="true">
<!-- strict-method-invocation="false" 的作用是允许使用通配符 -->
<package name="article" namespace="/" extends="struts-default" strict-method-invocation="false">
<action name="article_*" class="ArticleAction" method="{1}">
<result name="success">/WEB-INF/jsp/article.jsp</result>
<result name="detail">/WEB-INF/jsp/article_detail.jsp</result>
</action> <action name="index" class="IndexAction">
<result name="success">/WEB-INF/jsp/index.jsp</result>
</action> <action name="about" class="MeAction">
<result>/WEB-INF/jsp/aboutMe.jsp</result>
</action> <action name="album_*" class="AlbumAction" method="{1}">
<result>/WEB-INF/jsp/album.jsp</result>
<result name="input">/WEB-INF/jsp/album_detail.jsp</result>
</action> <action name="critique_*" class="CritiqueAction" method="{1}">
<result>/WEB-INF/jsp/critique.jsp</result>
<result name="input" type="redirectAction">critique</result>
</action>
</package>

hibernate的配置文件

因为已经交由spring来管理hibernate,所有不再需要hibernate.cfg.xml文件。但是还是需要hibernate关系映射文件。

SSH小项目整合的简单记录的更多相关文章

  1. python3开发进阶-Django框架学习前的小项目(一个简单的学员管理系统)

    ''' 自己独立写一个学员管理系统 表结构: 班级表: -id -grade_name 学生表: -id -student_name -grade 关联外键班级表 老师表: -id -teacher_ ...

  2. IOS-小项目(饿了么 网络部分 简单实现)

    在介绍小项目之前,在此说明一下此代码并非本人所写,我只是随笔的整理者. 在介绍之前先展现一下效果图. 看过效果图大家应该很熟悉了,就是饿了么的一个界面而已,值得注意的是,实现时并没有采用本地连接,而是 ...

  3. 封闭的一个多月,老菜鸟的 机械手和AGV 自动搬运小项目总结

    最近上海疫情严重,闲赋在家无事可做,手机里不断的推送一些无脑的谩骂声音,索性找点事情做,将3月份实施的一个自动搬运小项目做一个简单的汇总,便于今后项目实施中积累一些经验.项目需求非常简单,因为能力有限 ...

  4. Java小项目之:教你做个聊天系统!

    Java小项目之:聊天系统 今天给大家带来的java练手小项目是一个简单的聊天室,界面简单,操作不难. 分为注册系统,登录系统和聊天系统三部分,很适合java小白练手. 完整的源码和素材请关注并私信我 ...

  5. 【Arduino学习笔记05】Arduino数字输入、输出和脉冲宽带调制 -- 小项目:彩色小台灯

    基本功能: 长按控制按钮开机,长按控制按钮关机(>3s) 通过三个调节按钮调节灯的颜色,每一个按钮分别对应R,G,B值 模式切换:短按控制按钮切换模式(长亮模式/闪烁模式) 元器件清单: Ard ...

  6. SSH项目整合教学Eclipse搭建SSH(Struts2+Spring3+Hibernate3)

    这篇博文的目的 尝试搭建一个完整的SSH框架项目. 给以后的自己,也给别人一个参考. 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创建Struts项目,整合Hiberna ...

  7. web实践小项目<一>:简单日程管理系统(涉及html/css,javascript,python,sql,日期处理)

    暑假自学了些html/css,javascript和python,苦于学完无处练手几乎过目即忘...最后在同学的建议下做了个简单日程管理系统.借第一版完成之际,希望能将实践期间犯过的错误和获得的新知进 ...

  8. FreeMarker与SSH项目整合流程

    FreeMarker与SSH项目整合流程 学习了SSH之后,一般为了减少数据库的压力,会使用FreeMarker来生成静态HTML页面.下面简单说一下FreeMarker与SSH项目的整合全过程~ 前 ...

  9. J2EE进阶(六)SSH框架工作流程项目整合实例讲解

    J2EE进阶(六)SSH框架工作流程项目整合实例讲解 请求流程 经过实际项目的进行,结合三大框架各自的运行机理可分析得出SSH整合框架的大致工作流程. 首先查看一下客户端的请求信息: 对于一个Web项 ...

随机推荐

  1. Asp.net 中高亮显示搜索关键字简单方法

    今天用到搜索时的高亮显示,百度了一下,如下面: 1.替换关键字,对字体变色.         public static string ReplaceRed(string strtitle, stri ...

  2. Matlab信号处理工具箱函数

    波形产生和绘图chirp 产生扫描频率余弦diric 产生Dirichlet函数或周期Sinc函数gauspuls 产生高斯调制正弦脉冲pulstran 产生脉冲串rectpuls 产生非周期矩形信号 ...

  3. Group By 和Having总结

    1.Group By 概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组 所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. ...

  4. delphi 路径函数

    delphi path functionIncludeTrailingPathDelimiterIncludeTrailingPathDelimiter ensures that a path nam ...

  5. gain 基尼系数

    转至:http://blog.csdn.net/bitcarmanlee/article/details/51488204 在信息论与概率统计学中,熵(entropy)是一个很重要的概念.在机器学习与 ...

  6. 在 springboot 中如何整合 shiro 应用 ?

     Shiro是Apache下的一个开源项目,我们称之为Apache Shiro. 它是一个很易用与Java项目的的安全框架,提供了认证.授权.加密.会话管理,与spring Security 一样都是 ...

  7. Redis 基础操作

    [Redis 基础操作] 1.ECHO message. Returns message. 2.PHING Returns PONG if no argument is provided, other ...

  8. readlink 获取当前进程对应proc/self/exe

    [readlink 获取当前进程对应proc/self/exe] shell中  readlink /proc/self/exe READLINK(2)NAME       readlink - re ...

  9. Mybatis自动生成xml文件、dao接口、实体类

    Mybatis可以通过逆向工程,实现自动生成xml文件.dao接口.实体类 以下使用的是Intellij Idea进行自动生成 一.首先,要在pom.xml中导入插件,在<build>中加 ...

  10. spring boot 1

    1.创建项目. meven可以配置阿里云meven镜像 <mirror> <id>nexus-aliyun</id> <mirrorOf>central ...