通常Java Web 开发的时候,我们一般会采用三大框框架的整合来架构,这样做主要是为方便维护。但是有时候会忘了一些配文件(*.xml)的格式头,这里主要就三大框架Spring、struts、hibernate开发过程中用到的集中配置文件注明,方便以后查看。





1.hibernate中的映射描述文件*.hbm.xml

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC

    "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 

    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

    <class name="org.yeeku.model.User" table="app_user">

        <id name="username" column="username" length="20" unsaved-value="version">

            <!-- The generator-class attribute of @hibernate.id is deprecated, use the @hibernate.generator tag instead -->

            <generator class="assigned">

            </generator>

        </id>

        <property name="password" column="password" not-null="true">

        </property>

    </class>

</hibernate-mapping></span>





2.spring配置文件applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"

"http://www.springframework.org/dtd/spring-beans.dtd">





<beans>

<!-- 配置hibernate datasource数据源-->

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

        <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>

        <property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=dbtemp"/>

        <property name="username" value="sa"/>

        <property name="password" value="sa"/>

        <property name="maxActive" value="20"/>

        <property name="maxIdle" value="10"/>

        <property name="initialSize" value="1"/>

        <property name="maxWait" value="1000"/>

        <property name="defaultAutoCommit" value="true"/>

        <property name="removeAbandoned" value="true"/>

        <property name="removeAbandonedTimeout" value="60"/>

        <property name="logAbandoned" value="true"/>

    </bean>    

    <!-- 配置Hibernate SessionFactory -->

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

        <property name="dataSource" ref="dataSource"/>

        <property name="mappingResources">

            <list>

                <value>org/yeeku/model/User.hbm.xml</value>

                <value>org/yeeku/model/News.hbm.xml</value>

                <value>org/yeeku/model/NewsReview.hbm.xml</value>

                <value>org/yeeku/model/Category.hbm.xml</value>

            </list>

        </property>

        <property name="hibernateProperties">

            <props>

                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>

                <prop key="hibernate.hbm2ddl.auto">update</prop>

                <prop key="hibernate.jdbc.batch_size">20</prop> 

            </props>

        </property>

    </bean>





    <!-- 配置事务Transaction manager for a single Hibernate SessionFactory (alternative to JTA) -->

    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">

        <property name="sessionFactory" ref="sessionFactory"/>

    </bean>









<!-- service manager Template-->

    <bean id="txProxyTemplate" abstract="true"

        class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">

        <property name="transactionManager" ref="transactionManager"/>

        <property name="transactionAttributes">

            <props>

                <prop key="save*">PROPAGATION_REQUIRED</prop>

                <prop key="remove*">PROPAGATION_REQUIRED</prop>

                <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>

            </props>

        </property>

    </bean>





<!-- service manager-->

    <bean id="facadeManager" parent="txProxyTemplate">

        <property name="target">

            <bean class="org.yeeku.service.impl.FacadeManagerImpl">

<property name="newsDAO" ref="newsDAO"/>

<property name="newsReviewDAO" ref="newsReviewDAO"/>

<property name="categoryDAO" ref="categoryDAO"/>

                <property name="userDAO" ref="userDAO"/>

            </bean>

        </property>

    </bean>





</beans>





3.Struts配置文件struts.xml

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"

    "http://struts.apache.org/dtds/struts-2.1.7.dtd">

<struts>

<package name="guessGame" extends="struts-default">

<!-- 登录拦截 -->

<interceptors>

<interceptor name="logincheck" class="action.LoginCheck"/>

<interceptor-stack name="demoStack">

<interceptor-ref name="logincheck"/>

<interceptor-ref name="defaultStack"/>

</interceptor-stack>

</interceptors>

<!-- 定义全局的Result -->

<global-results>

  <result name="error">/error.jsp</result> 

<result name="login">/login.jsp</result>

</global-results>

<!-- 登录 -->

<action name="login" class="action.Login">

<result name="success" type="redirect">/menu.jsp</result>

<result name="exit" type="redirect">/login.jsp</result>

</action>

<!-- 注册 -->

<action name="regist" class="action.RegistAction">

<result name="add" type="redirect">/login.jsp</result>

<result name="wrong">/add_player.jsp</result>

</action>

<action name="guess" class="action.GuessAction">

  <interceptor-ref name="demoStack"/>
 

<result name="success">/success.jsp</result>

<result name="wrong">/guess.jsp</result>

<result name="numerror">guess.jsp</result>

<result name="init" type="redirect">/guess.jsp</result>

</action>

<action name="option" class="action.Option">

<interceptor-ref name="demoStack"/>


<result name="show">/showInfo.jsp</result>

</action>


</package>

</struts></span>





4.web.xml配置文件<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5" 

xmlns="http://java.sun.com/xml/ns/javaee" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

<!-- 启动加载spring配置,创建容器实例 -->

  <context-param>

    <param-name>contextConfigLocation</param-name>

  <param-value>classpath:spring-*.xml</param-value>

  </context-param>

  <listener>

  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

  </listener>

  <welcome-file-list>

    <welcome-file>index.jsp</welcome-file>

  </welcome-file-list>

  <!-- 配置struts过滤器 -->

&nbsp;      <filter>

  <filter-name>strutsaction</filter-name>

  <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

  </filter-class>  


  </filter>

  <filter-mapping>

  <filter-name>strutsaction</filter-name>

  <url-pattern>/*</url-pattern>

  </filter-mapping>

</web-app></span>





5需要用到的jar包





其中mysql-connector-java-5.1.6-bin.jar和sqljdbc4.jar都是连接数据库的驱动包,只需要一个就行

SSH框架的搭建与配置文件的书写格式的更多相关文章

  1. Struts2+Spring+Hibernate(SSH)框架的搭建

    首先需要下载struts2 ,spring4,hibernate5  的资源包; struts2资源包下载路径:http://www.apache.org/spring资源包下载路径:http://p ...

  2. ssh框架简单搭建

    这里是个人对SSH框架搭建的一点心得,仅供新手,勿喷 首先,搞清楚分层, 视图层 --> 控制层  --> 业务层 --> DAO层--> 持久层 搭建的顺序是从后向前,搭建一 ...

  3. ssh框架的搭建

    SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架. 集成SSH框架的系统从职责上分为四层:表示层.业务逻辑层.数据持久层和域模块层,以 ...

  4. SSH框架的搭建和测试(Spring + Struts2 + Hibernate)

    SSH框架实现了视图.控制器.和模型的彻底分离,同时还实现了业务逻辑层与持久层的分离. Spring实现了MVC中的 Controller的功能,Struts实现Web视图的功能,Hibernate则 ...

  5. struts2+spring+hibernate(SSH)框架的搭建和总结

    SSH框架:struts2+spring+hibernate,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. struts2+spring+hibernat ...

  6. SSH框架环境搭建问题:java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required

    SSH框架启动tomcate时出错 严重: Exception sending context initialized event to listener instance of class org. ...

  7. SSH框架环境搭建问题:Line: 230 - com/opensymphony/xwork2/spring/SpringObjectFactory.java:230:-1

    只是通过myeclipse搭建一个框架而已 启动tomcat时报错信息: File: SpringObjectFactory.java Method: getClassInstance Line: 2 ...

  8. 记录项目代码迁移后,UI测试框架的搭建(配置文件的修改、测试脚本试运行)

    前文:记录一次项目代码迁移过程 上文代码迁移的目的就是为了新增vue脚手架自带的UI测试框架,工具有了,就需要实践运行在项目中了(修改配置文件.编写测试脚本等). 一.单元测试 测试框架 karma ...

  9. SSH框架快速搭建(Maven)

    1.新建Maven项目ssh 2.pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=& ...

随机推荐

  1. storm原理介绍

    目录 storm原理介绍 一.原理介绍 二.配置 三.并行度 (一)storm拓扑的并行度可以从以下4个维度进行设置: (二)并行度的设置方法 (三)示例 四.分组 五.可靠性 (一)spout (二 ...

  2. 同一master,两个slave的server_id相同问题处理

    错误日志报错如下: 2017-09-15 18:45:59 1660 [Note] Slave I/O thread: Failed reading log event, reconnecting t ...

  3. 对touch事件传递的简单理解

    对View事件传递的理解.看的这篇. 对事件传递有了大致的了解. onInterceptTouchEvent 函数决定是否将事件拦截,拦截之后,该控件的全部子控件接收不到这个事件.onTouchEve ...

  4. Web系统自动化部署脚本

    Web开发的项目,除了在本地直接运行外,还可能经常需要在服务器上部署. 写了个自动化部署的脚本,仅供参考. 不少地方需要配置路径,个人建议使用绝对路径,不用依赖执行脚本时所在的路径. #!/bin/s ...

  5. Loader之一:基本原理 分类: H1_ANDROID 2013-11-16 10:29 1923人阅读 评论(0) 收藏

    参考APIDEMO及http://developer.android.com/guide/components/loaders.html#app 1.Introduced in Android 3.0 ...

  6. 学习Numpy基础操作

    # coding:utf-8 import numpy as np from numpy.linalg import * def day1(): ''' ndarray :return: ''' ls ...

  7. runtimeException也是能够捕获的

    如题, 运行结果: bbb abcdef @Test public void testRuntimeException() { ; try { aaa333(); } catch (Exception ...

  8. hdu 1052 田忌赛马

    贪心,排序从大到小.. 先比大的.跑只是就拿最小的来送死.. , 假设是平局就比后面的... 若后面也是平局就拿去跟前面的去跑. .. #include<stdio.h> #include ...

  9. Ajax的get、post和ajax提交

    JQuery.get(url,[data],[callback],[type]) []里面的参数是可选的,不是必填的. [data]:带发送的key/value数据. [callback]:载入成功时 ...

  10. Navigation Pane不能设置显示标题

    https://msdn.microsoft.com/VBA/Word-VBA/articles/view-showheading-method-word https://social.msdn.mi ...