通常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. [TypeScript] Define a function type

    type DigitValidator = (char) => boolean; -]{}/.test(char); export const digitValidators: {[key: s ...

  2. iOS8新特性

    1. App Extension Programming Guide 2.LocalAuthentication.framework - Touch ID Authentication 3.Local ...

  3. python3的函数

    #摘自廖雪峰的程序教程 函数名是变量: 如abs()是一个求绝对值的函数, >>> x = abs(-10) >>> x 10 变量可以指向函数 用f指向函数abs ...

  4. 【record】11.14..11.20

    balabala

  5. C语言之基本算法11—牛顿迭代法求平方根

    //迭代法 /* ================================================================== 题目:牛顿迭代法求a的平方根!迭代公式:Xn+1 ...

  6. 嵌入式linux串口通信自发自收测试程序

     /*串口自收自发程序主函数*/#include"uart_api.h"int main(){ int fd; char buff[BUFFER_SIZE]; char buff2 ...

  7. solaris 11 stdio.h: No such file or directory

    http://www.zendo.name/solaris-11-stdio-h%EF%BC%9A-no-such-file-or-directory/ Posted on 2012 年 3 月 23 ...

  8. chrome-vimium在markdown插件的页面失去效果

    chrome-vimium在markdown插件的页面失去效果

  9. 【u245】机房病毒

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 我们机房中了病毒,因此几乎什么都无法正常进入.为了解决这个病毒,我们花了好几天.终于在大家的共同努力下 ...

  10. 【codeforces 742C】Arpa's loud Owf and Mehrdad's evil plan

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...