shh整合后web.xml、spring配置文件和struts.xml的内容
1:web.xml
- <?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的配置文件,默认从web根目录寻找配置文件,我们可以通过spring 提供的classpath:前缀指定从类路径下寻找-->
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>classpath:beans.xml</param-value>
- </context-param>
- <!-- 对Spring容器进行实例化 -->
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
- </listener>
- <!-- 启动struts2框架 -->
- <filter>
- <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>/*</url-pattern>
- </filter-mapping>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
2:spring配置文件:
- <?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:aop="http://www.springframework.org/schema/aop"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:tx="http://www.springframework.org/schema/tx"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://www.springframework.org/schema/aop
- http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-2.5.xsd
- http://www.springframework.org/schema/tx
- http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
- <!-- 通过注解的方式将类交给spring管理 -->
- <!-- 是被@Component、@Service、@Controller、@Repository注解的类,都可以纳入spring容器的管理中 -->
- <context:component-scan base-package="cn.itcast"/>
- <!-- 配置文件占位符 -->
- <!--<context:property-placeholder location="classpath:jdbc.properties"/>-->
- <!-- 配置数据源 -->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
- <property name="driverClass" value="com.mysql.jdbc.Driver"/>
- <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/itcast?useUnicode=true&characterEncoding=UTF-8"/>
- <property name="user" value="root"/>
- <property name="password" value="123"/>
- <!-- 连接池启动时的初始值 -->
- <property name="initialPoolSize" value="1"/>
- <!-- 连接池中保留的最小连接数 -->
- <property name="minPoolSize" value="1"/>
- <!-- 连接池中保留的最大连接数 -->
- <property name="maxPoolSize" value="15"/>
- <!-- 最大空闲时间 ,60秒内未使用则丢弃。若为0则永不丢弃。Default:0-->
- <property name="maxIdleTime" value="60"/>
- <!-- 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数,default:3 -->
- <property name="acquireIncrement" value="5"/>
- <!-- 每60秒检查所有连接池中的空闲连接。Default:0 -->
- <property name="idleConnectionTestPeriod" value="60"/>
- </bean>
- <!-- 用spring创建sessionFactory供hibernate用 -->
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <property name="dataSource" ref="dataSource" />
- <property name="mappingResources">
- <list>
- <value>cn/itcast/bean/Employee.hbm.xml</value>
- </list>
- </property>
- <property name="hibernateProperties">
- <value>
- hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=false
- </value>
- </property>
- </bean>
- <!--
- hibernate.cache.use_second_level_cache=true
- hibernate.cache.use_query_cache=false
- hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
- -->
- <!-- 用spring创建sessionFactory供hibernate用 -->
- <!-- 基于注解的映射文件-->
- <!--
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
- <property name="dataSource" ref="dataSource" />
- <property name="annotatedClasses">
- <list>
- <value>cn.itcast.bean.Employee</value>
- </list>
- </property>
- <property name="hibernateProperties">
- <value>
- hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=false
- </value>
- </property>
- </bean>
- -->
- <!-- 用spring创建sessionFactory供hibernate用 -->
- <!-- 基于注解的映射文件-->
- <!--
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
- <property name="dataSource" ref="dataSource" />
- <property name="packagesToScan" value="com.sdcncsi.entity.*" />
- <property name="hibernateProperties">
- <value>
- hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=false
- </value>
- </property>
- </bean>
- -->
- <!-- 事务管理服务 -->
- <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
- <property name="sessionFactory" ref="sessionFactory"/>
- </bean>
- <!-- 采用@Transaction注解方式使用事务 -->
- <tx:annotation-driven transaction-manager="txManager"/>
- </beans>
ps:当使用注解的方式关于映射,则就不是写映射文件了;
而在bean中用注解,下面举个例子:
- @SuppressWarnings("serial")
- @Entity()
- @Table(name="zft_check_login")
- @Cache(usage = CacheConcurrencyStrategy.NONE)
- public class CheckloginEntity implements Serializable{
- private Long id;
- private Long staff_id;
- private Date latest_time;
- private Staff staff;
- private Set<Equipment> equipments;
- @Id
- @GeneratedValue(strategy = GenerationType.AUTO)
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public Long getStaff_id() {
- return staff_id;
- }
- public void setStaff_id(Long staff_id) {
- this.staff_id = staff_id;
- }
- public Date getLatest_time() {
- return latest_time;
- }
- public void setLatest_time(Date latest_time) {
- this.latest_time = latest_time;
- }
- @OneToOne(cascade = {CascadeType.PERSIST,CascadeType.MERGE},fetch = FetchType.LAZY)
- @JoinColumn(name = "staff_id",insertable=false,updatable=false)
- public Staff getStaff() {
- return staff;
- }
- public void setStaff(Staff staff) {
- this.staff = staff;
- }
- @OneToMany(fetch = FetchType.LAZY)
- @JoinColumn(name = "staff_id",referencedColumnName="staff_id",insertable=false,updatable=false)
- public Set<Equipment> getEquipments() {
- return equipments;
- }
- public void setEquipments(Set<Equipment> equipments) {
- this.equipments = equipments;
- }
- @Transient
- public String getPhoneNums() throws Exception{
- return ReflectionUtils.fetchElementPropertyToString(equipments,"equipmentPhone",", ");
- }
- @Transient
- public Long getMinutes() throws Exception{
- Date etime=new Date(System.currentTimeMillis());
- return (etime.getTime() - this.getLatest_time().getTime())/(60*1000);
- }
- }
3:struts.xml
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.0.dtd">
- <struts>
- <!-- 更换掉struts2内部的对象创建工厂,action用spring创建 -->
- <constant name="struts.objectFactory" value="spring"/>
- <!-- 将struts的主题改成默认主题,防止其生成不必要的html代码 -->
- <constant name="struts.ui.theme" value="simple"/>
- <package name="employee" namespace="/employee" extends="struts-default">
- <!-- 因为action有spring创建,所以只需指定spring创建的action的对象的名称就行 -->
- <action name="list" class="employeeAction">
- <result name="list">/WEB-INF/page/employee.jsp</result>
- </action>
- <action name="manage_*" class="employeeManageAction" method="{1}">
- <result name="add">/WEB-INF/page/employeeAdd.jsp</result>
- <result name="message">/WEB-INF/page/message.jsp</result>
- </action>
- </package>
- </struts>
shh整合后web.xml、spring配置文件和struts.xml的内容的更多相关文章
- 一 SSH整合:Spring整合Struts2的两种方式,struts.xml管理Action&Bean管理Action
SSH回顾 1 引入jar包 Struts2的jar包 D:\Struts2\struts-2.3.35\apps\struts2-blank\WEB-INF\lib 开发基本包 Struts2有一 ...
- maven创建web工程Spring配置文件找不到问题解决方案
使用maven创建web工程,将Spring配置文件applicationContext.xml放在src/resource下,用eclipse编译时提示class path resource [ap ...
- Spring Web项目spring配置文件随服务器启动时自动加载
前言:其实配置文件不随服务器启动时加载也是可以的,但是这样操作的话,每次获取相应对象,就会去读取一次配置文件,从而降低程序的效率,而Spring中已经为我们提供了监听器,可监听服务器是否启动,然后在启 ...
- maven创建web工程Spring配置文件找不到
使用maven创建web工程,将Spring配置文件applicationContext.xml放在src/resource下,用eclipse编译时提示class path resource [ap ...
- struts2与struts1整合,Unable to load configuration. - interceptor-ref ... struts.xml
struts.xml中为了与struts1的MVC模式整合,需要类似如下的拦截器的引用 <interceptor-stack name="integration"> & ...
- struts2中struts.xml配置文件详解【未整理】
1. 深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1. 包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管 ...
- Struts2笔记1:--Struts2原理、优点、编程流程、6大配置文件以及核心配置文件struts.xml
Struts2原理(底层使用的是Servlet的doFilter方法): Struts2优点: 第一个Struts程序: 在开发Struts程序之前,首先要导入额外的jar包,基本需求的是14个jar ...
- 关于spring配置文件的头部编写
//普通spring配置文件模板1 <?xml version="1.0" encoding="UTF-8" ?> <beans xmlns: ...
- Spring配置文件的读取
1.配置文件的命名 Spring框架中的默认配置文件,建议命名为applicationContext.xml * 编写配置文件,默认位置有两个 ①src目录.②WEB-INF目录 2.Spring 配 ...
随机推荐
- 【leetcode刷题笔记】Find Peak Element
A peak element is an element that is greater than its neighbors. Given an input array where num[i] ≠ ...
- 字符串的hash匹配
如果要比较字符串是否相等,首先想到的是KMP算法,但是hash更加简洁易于编写,hash的目的是把一串字符转化成一个数字,用数字来比较是否相等.我让mod=912837417 Base=127,防止h ...
- [翻译]PostCSS简介
许多开发人员花时间在使用CSS的预处理器上如less,sass和stylus.这些工具已经成为Web开发的重要组成部分.写一个网站的样式,不使用嵌套,变量或混入等功能很少见.它们每个都是非常实用的,让 ...
- Spring_使用 NamedParameterJdbcTemplate
applicationContext.xml <?xml version="1.0" encoding="UTF-8"?><beans xml ...
- Caffe实现多标签输入,添加数据层(data layer)
因为之前遇到了sequence learning问题(CRNN),里面涉及到一张图对应多个标签.Caffe源码本身是不支持多类标签数据的输入的. 如果之前习惯调用脚本create_imagenet.s ...
- php。。。
我可能不会是一个合格的程序员,因为不够专一,学的种类多,精通的却很少,现在我要做为一个php程序员,专注起航了...接下来半年全力以赴,做出成绩吧. 另外之前的狂刷要一千题也要开始每天更新了,最难的就 ...
- scala学习手记14 - 单例对象
java中的单例模式都很熟悉了:简单地说就是一个类只能有一个实例.在scala中创建单例对象非常简单,创建类时使用object关键字替换class即可.因为单例类无法初始化,所以不能向它的主构造函数传 ...
- svn官方版本的使用
创建仓库的命令是:svndadmin create c:\abcde 启动命令是:svnserve -d -r c:\abcde 官方版本,svn路径
- org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 语法分析器在此文档中遇到多个 "64,000" 实体扩展; 这是应用程序施加的限制
使用SAX解析XML文件.XML文件有1.5G,程序抛出了这个问题: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 语法 ...
- Java泛型中的标记符含义
Java泛型中的标记符含义: E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number ...