SSH Maven 整合笔记
来源:互联网 发布:南京溧水网络问政 编辑:程序博客网 时间:2024/05/17 06:46
src/main/resources 目录下:
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:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<context:annotation-config/> <!-- 启用注解方式 -->
<context:component-scan base-package="com.mavict" /> <!-- 启用自动扫描 不需要写bean了,自动扫描生成 -->
<aop:aspectj-autoproxy />
<!-- placeholder方式配置数据源-->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:jdbc.properties"/>
</bean>
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<!-- 配置hiberante sessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="myDataSource" /> <!-- 将datasource注入 -->
<property name="packagesToScan"> <!-- 扫描需要实体映射的类的所在包-->
<list>
<value>com.mavict.*</value>
</list>
</property>
<property name="hibernateProperties"> <!-- 如名,此处是将hibernate的一些属性放过来 -->
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<!-- 使用getCurrentSession必用设置 -->
<prop key="hibernate.current_session_context_class">thread</prop>
<!-- 配置EHcache缓存 欲加缓存的类上加 @Cacheable @Cache(usage = CacheConcurrencyStrategy.READ_ONLY) -->
<prop key="hibernate.cache.use_second_level_cache">true</prop>
<prop key="hibernate.cache.use_query_cache">true</prop>
<prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
</props>
</property>
</bean>
<!-- 配置事务管理器 -->
<bean id="txManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <!--其实这是一个切面类 跨数据库的话就要用jta的事务管理了 -->
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 配置事务管通知 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="save" propagation="REQUIRED"/> <!-- 默认就是REQUIRED。另外还有一个readonly属性-->
</tx:attributes>
</tx:advice>
<!-- 以xml的方式配置事务。-->
<aop:config>
<aop:pointcut expression="execution(* com.mavict..*.*(..))" id="businessService"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="businessService"/>
</aop:config>
</beans>
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>
<!-- 此处举例说明,Action类已被spring托管,写成注入之后的bean的名字,如红色部分 -->
<package name="article" namespace="/" extends="struts-default">
<action name="articles" class="articlesAction">
<result name="saveSubmit">/articles_result.jsp</result>
</action>
</package>
</struts>
jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/hibernate
jdbc.username=root
jdbc.password=passwordxxx // 注意修改
WEB-INF/ 下
web.xml
<!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>Archetype Created Web Application</display-name>
<!-- 整合spring,web容器自动加载spring配置文件生成session工厂 -->
<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>
<!-- 整合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>
</web-app>
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mavict</groupId>
<artifactId>testspring</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>testspring Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<!-- SPRING START -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency><!-- 事务管理 -->
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency><!-- AOP aspectj 动态代理切面用 -->
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.7.3</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.3</version>
</dependency>
<dependency><!-- @Resource注解需要的包 ???-->
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.2</version>
</dependency>
<!-- SPRING END -->
<!-- HIBERNATE START -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.2.6.Final</version>
</dependency>
<dependency><!-- 整合hibernate必须加上的,不然会报错 -->
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<!-- EHCACHE -->
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-core</artifactId>
<version>2.6.6</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
<version>4.2.6.Final</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<!-- HIBERNATE END -->
<!-- 数据库方面 START -->
<!-- 防止出现找不到org.apache.commons.dbcp.BasicDataSource -->
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.26</version>
</dependency>
<!-- 数据库方面 END -->
<!-- STRUTS START -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.15</version>
</dependency>
<dependency><!-- 该插件是与spring整合时候需要的 -->
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.15</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration> <warName>${project.artifactId}</warName></configuration>
</plugin>
</plugins>
</build>
</project>
- SSH Maven 整合笔记
- Maven学习笔记 -- day03 Maven整合SSH
- Maven学习笔记---整合SSH框架
- 基于maven整合SSH
- Maven整合SSH项目
- Maven SSH初步整合
- SSH整合 maven (二)
- SSH 整合 (Maven)
- Maven 整合 SSH 框架
- Maven整合ssh框架
- maven ssh最新版本整合
- SSH与maven整合配置
- SSH的Maven整合POM
- maven整合SSH框架详解
- IDEA+Maven+SSH整合小结
- Maven项目整合SSH框架
- MAVEN SSH的框架整合
- SSH框架整合笔记
- [ACM] hud 还是畅通工程(重写)
- 解决 Eclipse项目红感叹号
- 题目1182:统计单词
- 单例模式在Unity中的应用
- 排序之希尔排序
- SSH Maven 整合笔记
- ISO的国家代码和语言代码
- 1036. Boys vs Girls (25)
- workqueue分析
- Android学习小Demo(6)图片折叠效果的实现
- 关于main还是的参数应用
- ASP.NET MVC概述
- Java学习笔记 实现阿拉伯数字(一亿以内)转换为中文繁体数字
- require.js