struts-hibernate-spring基础配制

 

struts-co


web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

  <display-name>web</display-name>
  <context-param>
    <param-name>contextConfigLocation</param-name>    <param-value>/WEB-INF/applicationContext-hibernate.xml,/WEB-INF/applicationContext.xml,/WEB-INF/applicationContext-status.xml</param-value>
  </context-param>
  <filter>
    <filter-name>downloadFilter</filter-name>
    <filter-class>com.cnpec.ims.tm.web.filter.DownloadFilter</filter-class>
  </filter>

  <filter>
    <filter-name>EncoderFilter</filter-name>
    <filter-class>com.cnpec.ims.tm.web.filter.EncodeFilter</filter-class>
  </filter>
 
  <filter>
    <filter-name>tmsFilter</filter-name>
    <filter-class>com.cnpec.ims.tm.web.filter.TMSFilter</filter-class>
  </filter>

  <filter>
    <filter-name>hibernateFilter</filter-name>
    <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>

  <filter>
    <filter-name>sitemesh</filter-name>
    <filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
  </filter>

  <filter-mapping>
    <filter-name>downloadFilter</filter-name>
    <url-pattern>/upload/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>downloadFilter</filter-name>
    <url-pattern>/column/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>sitemesh</filter-name>
    <url-pattern>*.do</url-pattern>
  </filter-mapping>
  <filter-mapping>
    <filter-name>sitemesh</filter-name>
    <url-pattern>*.xhtm</url-pattern>
  </filter-mapping>
  <filter-mapping>
    <filter-name>sitemesh</filter-name>
    <url-pattern>*.jsp</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>EncoderFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
<!-- 
  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
-->
  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>/column/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>*.do</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>*.xhtm</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>/dwr/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>hibernateFilter</filter-name>
    <url-pattern>/auth/usrauth/*</url-pattern>
  </filter-mapping>
 
  <filter-mapping>
    <filter-name>tmsFilter</filter-name>
    <url-pattern>/column/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>tmsFilter</filter-name>
    <url-pattern>*.do</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>tmsFilter</filter-name>
    <url-pattern>*.xhtm</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>tmsFilter</filter-name>
    <url-pattern>/dwr/*</url-pattern>
  </filter-mapping>

  <filter-mapping>
    <filter-name>tmsFilter</filter-name>
    <url-pattern>/auth/usrauth/*</url-pattern>
  </filter-mapping>

  <servlet>
    <servlet-name>context</servlet-name>
    <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml,/WEB-INF/struts-config-auth.xml,/WEB-INF/struts-config-res.xml,/WEB-INF/struts-config-act.xml,/WEB-INF/struts-config-plana.xml,/WEB-INF/struts-config-planb.xml,/WEB-INF/struts-config-authb.xml,/WEB-INF/struts-config-synth.xml,/WEB-INF/struts-config-re.xml,/WEB-INF/struts-config-report.xml,/WEB-INF/struts-config-enquiry.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>2</param-value>
    </init-param>
    <init-param>
      <param-name>application</param-name>
      <param-value>ApplicationResources</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
  </servlet>

  <servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <display-name>DWR Servlet</display-name>
    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>true</param-value>
    </init-param>
  </servlet>

  <servlet>
    <servlet-name>FindStaff</servlet-name>
    <servlet-class>com.cnpec.ims.tm.web.servlet.p1604.FindStaff</servlet-class>
  </servlet>

  <servlet>
    <servlet-name>FindDeptPost</servlet-name>
    <servlet-class>com.cnpec.ims.tm.web.servlet.p1604.FindDeptPost</servlet-class>
  </servlet>

  <servlet>
    <servlet-name>CourseIfm</servlet-name>
    <servlet-class>com.cnpec.ims.tm.web.servlet.p1601.CourseIfm</servlet-class>
  </servlet>

  <servlet>
    <servlet-name>DeptIframe</servlet-name>
    <servlet-class>com.cnpec.ims.tm.web.servlet.base.DeptIframe</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>HelpServlet</servlet-name>
    <servlet-class>com.cnpec.ims.tm.web.servlet.help.HelpServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.xhtm</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>FindStaff</servlet-name>
    <url-pattern>/auth/usrauth/findStaff</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>FindDeptPost</servlet-name>
    <url-pattern>/auth/usrauth/findDeptPost</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>CourseIfm</servlet-name>
    <url-pattern>/res/materialmgr/courseifm</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>DeptIframe</servlet-name>
    <url-pattern>/deptiframe</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>HelpServlet</servlet-name>
    <url-pattern>/help/helpServlet</url-pattern>
  </servlet-mapping>

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

  <taglib>
    <taglib-uri>sitemesh-page</taglib-uri>
    <taglib-location>/WEB-INF/sitemesh-page.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>sitemesh-decorator</taglib-uri>
    <taglib-location>/WEB-INF/sitemesh-decorator.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-template.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/struts-nested.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/c.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/core_rt</taglib-uri>
    <taglib-location>/WEB-INF/c-rt.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/xml</taglib-uri>
    <taglib-location>/WEB-INF/x.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/xml_rt</taglib-uri>
    <taglib-location>/WEB-INF/x-rt.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
    <taglib-location>/WEB-INF/fmt.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/fmt_rt</taglib-uri>
    <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
    <taglib-location>/WEB-INF/sql.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>http://java.sun.com/jstl/sql_rt</taglib-uri>
    <taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
  </taglib>

  <taglib>
    <taglib-uri>/WEB-INF/taglibs-string.tld</taglib-uri>
    <taglib-location>/WEB-INF/taglibs-string.tld</taglib-location>
  </taglib>

</web-app>

 

config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
    <form-beans>
         <form-bean name="staffTrainDeptActionForm"  type="com.cnpec.ims.tm.web.form.p1601.StaffTrainDeptActionForm" />
      <form-bean name="staffForm" type="com.cnpec.ims.tm.web.form.p1601.StaffActionForm" />
    </form-beans>
    <action-mappings>
    <action name="staffTrainDeptActionForm"  path="/res/staffTrainDept/staffTrainDeptAction"
           type="org.springframework.web.struts.DelegatingActionProxy" validate="false" scope="request" parameter="method" >
    <forward name="list" path="/res/staffTrainDept/list.jsp"/>
    <forward name="add" path="/res/staffTrainDept/add.jsp"/>
    <forward name="modify" path="/res/staffTrainDept/modify.jsp"/>
       </action>
       <action name="staffForm" path="/res/staff/staff"  parameter="method"      
   type="org.springframework.web.struts.DelegatingActionProxy" scope="request" validate="true">
   <forward name="list" path="/res/staff/StaffList.jsp" />
   <forward name="info" path="/res/staff/StaffInfo.jsp" />
   <forward name="update" path="/res/staff/staff.do?method=info" />
   <forward name="view" path="/res/staff/StaffView.jsp" />
   <forward name="query" path="/res/staff/StaffIfrm.jsp" />
 </action>
    </action-mappings>
  <controller processorClass="com.cnpec.ims.tm.web.action.ImstmRequestProcessor"/>
 <!-- spring -->
  <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
        <set-property property="contextConfigLocation"
            value="/WEB-INF/action-servlet.xml"/>
    </plug-in>
  
    <plug-in className="com.cnpec.ims.tm.service.util.Init"/>
</struts-config>

action-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"  "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
   <bean name="/res/staffTrainDept/staffTrainDeptAction" class="com.cnpec.ims.tm.web.action.p1601.StaffTrainDeptAction" singleton="false">
    <property name="staffTrainDeptManager"><ref bean="staffTrainDeptManager"/></property>
    </bean>
</beans>

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>
<!-- Transaction template for Managers -->
     <bean id="txProxyTemplate" abstract="true"
        class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
        <property name="transactionManager"><ref bean="transactionManager"/></property>
        <property name="transactionAttributes">
            <props>
                <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
    <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
    <prop key="load*">PROPAGATION_REQUIRED,readOnly</prop>
    <prop key="store*">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="save*">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="update*">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="delete*">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="agree">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="disAgree">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="apply*">PROPAGATION_REQUIRED,-Exception</prop>
    <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
            </props>
        </property>
      </bean>
   <bean id="dbManager" parent="txProxyTemplate">
        <property name="target">
            <bean class="com.cnpec.ims.tm.service.manager.DBManager">
                <property name="dbDao"><ref bean="dbDao"/></property>
    <property name="businessDAO"><ref bean="businessDAO"/></property>    
    <property name="basedao"><ref bean="basedao"/></property>
       <property name="teacherManager"><ref bean="teacherManager"/></property>
            </bean>
        </property>
     </bean>
  <bean id="staffTrainDeptManager" parent="txProxyTemplate">
        <property name="target">
            <bean class="com.cnpec.ims.tm.service.manager.p1601.impl.StaffTrainDeptManagerImpl">
    <property name="staffTrainDeptDAO"><ref bean="staffTrainDeptDAO"/></property>
            </bean>
        </property>
    </bean>
</beans>


applicationContext-hibernate.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="propertyConfigurer" lazy-init="true" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location"><value>/WEB-INF/classes/jdbc.properties</value></property>
 </bean>
 
 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName"><value>${jdbc.driverClassName}</value></property>
  <property name="url"><value>${jdbc.url}</value></property>
  <property name="username"><value>${jdbc.username}</value></property>
  <property name="password"><value>${jdbc.password}</value></property>
 </bean>

 <!-- JNDI DataSource for J2EE environments -->
<!--
 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
  <property name="jndiName"><value>IMSGTMS</value></property>
 </bean>
-->
   <bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">
    <property name="nativeJdbcExtractor"><ref local="nativeJdbcExtractor" /></property>
 </bean>
 <bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.WebLogicNativeJdbcExtractor" lazy-init="true" />
 <!-- Hibernate SessionFactory -->
 <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  <property name="dataSource"><ref local="dataSource"/></property>
  <property name="lobHandler"><ref local="oracleLobHandler" /></property>
  <property name="mappingResources">
   <list>
    <value>com/cnpec/ims/tm/model/AllFilterDef.hbm.xml</value>
    <value>com/cnpec/ims/tm/model/Allowance.hbm.xml</value>
    <value>com/cnpec/ims/tm/model/Approveflowdetail.hbm.xml</value>
          <value>com/cnpec/ims/tm/model/StaffTrainDept.hbm.xml</value>
   </list>
  </property>
  <property name="hibernateProperties">
   <props>
    <prop key="hibernate.query.factory_class">${hibernate.factory.class}</prop>
    <prop key="hibernate.dialect">${hibernate.dialect}</prop>
    <prop key="hibernate.show_sql">${hibernate.show.sql}</prop>
    <prop key="hibernate.jdbc.fetch_size">${hibernate.jdbc.fetch.size}</prop>
    <prop key="hibernate.jdbc.batch_size">${hibernate.jdbc.batch.size}</prop>
   </props>
  </property>
 </bean>
 <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
  <property name="sessionFactory"><ref local="sessionFactory"/></property>
 </bean>
 
 <!-- base dao -->
 <bean id="basedao" class="com.cnpec.ims.tm.dao.base.hibernate.BaseDaoImpl">
  <property name="sessionFactory"><ref local="sessionFactory"/></property>
 </bean>
    <bean id="staffTrainDeptDAO" class="com.cnpec.ims.tm.dao.p1602.hibernate.StaffTrainDeptDAOImpl">
  <property name="dao"><ref bean="basedao"/></property>
 </bean>
</beans>

src/jdbc.properies

# Properties file with JDBC-related settings.
# Applied by PropertyPlaceholderConfigurer from "applicationContext-*.xml".
# Targeted at system administrators, to avoid touching the context XML files.
#mysql
#jdbc.driverClassName=com.mysql.jdbc.Driver
#mysql
#jdbc.url=jdbc:mysql:///petclinic
#oracle
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbc.url=jdbc:oracle:thin:@host:1521:oracle10
#jdbc.username=ims
#jdbc.password=ims
jdbc.url=jdbc:oracle:thin:@11.11.16.21:1521:yy
jdbc.username=user
jdbc.password=pass

# Property that determines the Hibernate dialect
# (only applied with "applicationContext-hibernate.xml")
#mysql
#hibernate.dialect=org.hibernate.dialect.MySQLDialect
#oracle
#hibernate.dialect=org.hibernate.dialect.OracleDialect
hibernate.dialect=com.cnpec.ims.tm.Oracle10Dialect
#
#hibernate factory class
hibernate.factory.class=org.hibernate.hql.classic.ClassicQueryTranslatorFactory
##
#hibernate show sql
hibernate.show.sql=true
##
#hibernate jdbc fetch size
hibernate.jdbc.fetch.size=50
hibernate.jdbc.batch.size=30

src/log4j.properties
# For JBoss: Avoid to setup Log4J outside $JBOSS_HOME/server/default/deploy/log4j.xml!
# For all other servers: Comment out the Log4J listener in web.xml to activate Log4J.
log4j.rootLogger=WARN, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=tms.log
log4j.appender.logfile.MaxFileSize=5120KB
# Keep three backup files.
log4j.appender.logfile.MaxBackupIndex=3
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.logger.com.cnpec.ims.tm = WARN

src/conf.properties

##授权类别
kind.common=C
kind.plan=P
kind.emergency=E
kind.attach=A
##
#page size
page.size=20
##
#session的存在时间
session.max.active=7200


##
#ftp server
ftp.rootpath=/upload
ftp.hostname=host
ftp.port=21
ftp.userid=ftp
ftp.password=ftp
##
#http server
http.hostname=11.11.11.11
##
#mail server test
smtp.hostname=host
smtp.username=name
smtp.password=password
smtp.suffix=@gr.com
web.server=http://localhost:7001/tm
## super system manager
super.user.name=super
super.user.pass=password

 

dwr.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
  <allow>
    <create creator="spring" javascript="dwrManager">
     <param name="beanName" value="dwrManager"/>
     <include method="getStaffsByShortcutNo"/>
     <include method="getPlanNoFromImpl"/>
     <include method="getPlanNoFromMonthplan"/>
  <include method="getPlanNoFromMonthplanByCid"/>
  <include method="getGrade"/>
  <include method="isStaffExist"/>
    </create>
 <convert converter="bean" match="com.cnpec.ims.tm.web.form.p1607.ProjectActionForm"/>
 <convert converter="bean" match="com.cnpec.ims.tm.web.form.p1607.NetClassQuestionForm"/>
 <convert converter="bean" match="com.cnpec.ims.tm.model.CourseSimple"/>
  </allow>
</dwr>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值