spring struts hibernate web.xml配置文件模板

1、applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:context="http://www.springframework.org/schema/context"
             xmlns:aop="http://www.springframework.org/schema/aop"
             xmlns:tx="http://www.springframework.org/schema/tx"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
                     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                     http://www.springframework.org/schema/context
                     http://www.springframework.org/schema/context/spring-context-3.0.xsd
                     http://www.springframework.org/schema/aop
                     http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
                      http://www.springframework.org/schema/tx
                     http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<!-- 启动使用注解 -->
<context:annotation-config/>
<!-- 对com.register进行扫描,找到配置有@component的bean然后实例化放到spring容器中 --> 
<context:component-scan base-package="com.register"/>
<!-- 配置数据源,这里面配置连接数据库的一些信息,这里oracle的数据连接 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-
 
method="close" >
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"></property>
<property name="username" value="scott"></property>
<property name="password" value="wjq"></property>
</bean>
 
 
 
<!-- 配置数据源,这里面配置连接数据库的一些信息,这里mysql的数据连接 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-
 
method="close" >
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/oa?characterEncoding=UTF-
8"></property>
<property name="username" value="root"></property>
<property name="password" value="wjq"></property>
</bean>
 
 
 
<!-- 配置sessionFactory以及注入dataSource再配置一些其他属性 -->
<bean id="sessionFactory" 
 
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> 
<!--相当于把dateSource里面的配置注入,这样可以连接数据库-->
<property name="dataSource" ref="dataSource"/>
 <!-- 对于hibernate实体类的配置 -->
<!--这个是annotation方式 -->
<property name="annotatedClasses">
<list>
<value>com.register.model.User</value>
</list>
</property>
 <!-- 对于hibernate语句以及在控制台输出的的一些配置 -->   
<property name="hibernateProperties">
<props>
<prop key="hibernate.connection.autocommit">true</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
<prop key="javax.persistence.validation.mode">none</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
<!-- 配置hibernateTemplate,以及注入sessionFactory这样可以连带注入dateSource,然后利用
hibernateTemplate的方法对数据库进行操作-->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
 
<!-- 配置事务管理,将 sessionFactory交给事务管理,以保证其安全性,这样连带注入了数据源-->
<bean id="txManger" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 配置AOP,配置一个切面,然后指定这个切面加在某个方法里面去。这里我们要加入transaction事
务的方式 ,通过advisor来建议 -->
<aop:config>
<aop:pointcut id="bussinessService" expression="execution(public * 
com.register.service.*.*(..))" />
<aop:advisor pointcut-ref="bussinessService" advice-ref="txAdvice" />
</aop:config>
<!--========这里是将一些方法加入到事务管理里面去,而这个事务的管理者是txManger,一般增删改
方法都要配置去事务里面去========================-->
<tx:advice id="txAdvice" transaction-manager="txManger">
<!-- 这里面可以配置一些属性,凡是exists开头的都是只读的-->
<tx:attributes>
<tx:method name="exists" read-only="true"/>
<!--REQUIRED:在 当前的环境里面,别人调用 这个方法的时候,如果已经的了一个transaction了,就
用原来的。如果没有就创建一个新的-->
<!-- 如果是add开头的方法都可以用 -->
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="delete*" propagation="REQUIRED"/>
<tx:method name="updateUser" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
</beans>

2、struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
 
<struts>
<!-- struts解决中文乱码问题,在struts2.1.6这个配置不能实现解决乱码功能 -->
<constant name="struts.i18n.encodeing" value="GBK"/>
<!-- 当我们使用动态方法调用 的时候要配置这个 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true" /> 
<!-- 设置为开发模式 -->
<constant name="devMode" value="true"></constant>
 
<package name="任意" extends="struts-default" namespace="/">
<!-- 配置action -->
 
</package>
 
</struts>

3、hibernate.cfg.xml

<?xml version='1.0' encoding='GB18030'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>
<session-factory>
<!-- 一些自动生成的配置信息,主要是针对 连接数据库的 -->
	<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
	<property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:ORCL</property>
	<property name="connection.username">scott</property>
	<property name="connection.password">wjq</property>
	<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
	<property name="myeclipse.connection.profile">oracle</property>
    <!-- 在console显示sql语句,并使它规范的输出 -->
	<property name="show_sql">true</property>
	<property name="format_sql">true</property>
	<!-- 自动生成表格 -->
   <property name="hbm2ddl.auto">create</property>
	<!--使上下文中生成一个SessionFactory 
	<property name="current_session_context_class">thread</property>-->
	 <!-- 使用Annotations 注解进行映射 -->
	<mapping class="com.model.Org" />
</session-factory>
</hibernate-configuration>

4、web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name></display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <!-- 配置spring,把spring加入到监听,这样我们一启动tomcat时,就会自动加载容器 -->
  <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>
  <!--处理乱码问题
   <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>GBK</param-value>
        </init-param>
    </filter>
    
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping> -->
  <!-- 这里我们可以把session的范围扩展到page,这个可以方法jsp页面取数据 -->
  <filter>
    <filter-name>openSessionInView</filter-name>
    <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>openSessionInView</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter>
 
  <!-- 将struts2配置到web.xml这样才可以拦截 -->
    <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>*.action</url-pattern>
  </filter-mapping>
 
  <!-- 当我们使用struts的功能标签时, 不能不通过action访问jsp页面,这时我们需在配置如下,才可以直接访问jsp页面 -->
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>*.jsp</url-pattern>
  </filter-mapping>
</web-app>

往期精彩内容:

Java知识体系总结(2021版)

超详细的springBoot学习笔记

Java多线程基础知识总结(绝对经典)

Java面试题总结(附答案)

Vue基础知识总结(绝对经典)

常见数据结构与算法整理总结

猜你喜欢

转载自blog.csdn.net/guorui_java/article/details/113187616