第一步搭建ssh 项目 添加三个框架的支持;
第二步添加注解功能
在spring配制文件中加如下代码
<!-- 启用注解 -->
<context:annotation-config />
<!-- 使用annotation 自动注册bean,并保证@Required,@Autowired的属性被注入 -->
<context:component-scan base-package="com.*" />
整个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:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-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"
default-autowire="byName" default-lazy-init="true">
<!-- 启用注解 -->
<context:annotation-config />
<!-- 使用annotation 自动注册bean,并保证@Required,@Autowired的属性被注入 -->
<context:component-scan base-package="com.*" />
<!-- 定义受环境影响易变的变量 -->
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<!-- 标准配置 -->
<value>classpath:jdbc.properties</value>
</list>
</property>
</bean>
<!-- 数据源配置,使用应用内的DBCP数据库连接池 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<!-- Connection Info -->
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<!-- Connection Pooling Info -->
<property name="initialSize" value="5" />
<property name="maxActive" value="100" />
<property name="maxIdle" value="30" />
<property name="maxWait" value="500" />
<property name="defaultAutoCommit" value="false" />
</bean>
<!-- Hibernate配置 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
</props>
</property>
<property name="packagesToScan" value="com.cpsp.pojo.*" />
<!-- <property name="mappingResources">
<list>
<value>resource/hibernate/CpwebUser.hbm.xml</value>
</list>
</property>
-->
<property name="mappingLocations" value="classpath:resource/hibernate/*.hbm.xml"/>
</bean>
<!-- 事务管理器配置,单数据源事务 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 使用annotation定义事务 -->
<!--
<tx:annotation-driven transaction-manager="transactionManager"
proxy-target-class="true"/>
-->
<aop:config proxy-target-class="true">
<aop:advisor pointcut="execution(* com.cpsp.service..*Service.*(..))"
advice-ref="txAdvice" />
<aop:advisor pointcut="execution(* com.cpsp.dao..*Dao.*(..))"
advice-ref="txAdvice" />
</aop:config>
<tx:advice id="txAdvice">
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="find*" read-only="true" />
<tx:method name="query*" read-only="true" />
<tx:method name="is*" read-only="true" />
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>
</beans>
dao层的实现类的类名上面加上代码如下
@Repository("起的别名service跟据该名字找到此类生成实例对像")
service层实现类的类名上面加上代码如下
@Service("别名action层据该名调用")
声明dao接口
@Resource(name = "dao层的别名")
private dao层的接口 别名;
service 层据别名调用接口的方法
如:
别名.dao接口方法
action层 类前面的声名
@Controller(value="actin别名")
@Scope(value="prototype")
action层的方法调用跟service层一样
单元测式
public class UserActionTest {
//@Resource(name = "userServiceImpl") //自动装配注入
public static UserService userService;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
System.out.println("before class");
ApplicationContext context=new ClassPathXmlApplicationContext("resource/spring/applicationContext.xml");
userService=(UserService) context.getBean("userServiceImpl");
}
@AfterClass
public static void tearDownAfterClass() throws Exception {
System.out.println("after class");
}
}
分享到:
相关推荐
SSH,即Struts2、Hibernate和Spring的组合,是Java Web开发中的一种经典框架集成,用于构建企业级的MVC(Model-View-Controller)应用。这个整合旨在提供一个高效、灵活且可扩展的开发环境,使开发者可以专注于业务...
SSH和Spring框架是Java开发中的两个重要工具,它们在企业级应用开发中占据了核心地位。SSH,是由Struts2、Spring和Hibernate三个框架组成的集成解决方案,而Spring则是一个全面的后端开发框架,包含了多种功能模块。...
SSH整合提供了强大且灵活的Java Web开发解决方案,通过Spring的管理能力,SpringMVC的Web处理,Hibernate的数据访问,Maven的项目构建,以及Spring Data JPA的数据库抽象,共同构建出高效且易于维护的企业级应用。
这个"Java项目之移动SSH项目"提供了使用这些技术构建的完整应用源代码,对于学习和理解SSH框架集成以及移动开发有着极大的帮助。以下是这些技术的详细说明: 1. **Struts2**:Struts2是一个基于MVC(Model-View-...
总结,SSH项目是Java Web开发中的重要实践,它利用Struts的MVC架构、Spring的依赖注入和AOP特性,以及Hibernate的ORM能力,为开发复杂的企业级应用提供了强大支持。一个完整的SSH项目应包含所有必要的组件和配置,...
SSH项目是一种经典的Java Web开发框架组合,由Spring、Hibernate和Struts2三个开源框架组成。这个项目示例提供了一个基于这些技术的简单应用,帮助开发者理解如何将它们整合在一起进行实际开发。 **Spring框架**是...
在SSH项目中,Spring作为整个应用的“粘合剂”,管理对象的生命周期,负责配置和连接数据库、事务管理以及服务层和控制层之间的通信。 3. **Hibernate**:Hibernate是一个对象关系映射(ORM)框架,它简化了Java...
【标题】"maven-ssh-spring security" 涉及到的是在Java开发中使用Maven构建的一个集成Spring Security的SSH(Struts2、Spring、Hibernate)项目。SSH是Java Web开发中常见的三大框架,而Spring Security则是一个...
这个“移动ssh项目(struts+spring+hibernate+oracle)”是一个具体的应用实例,它结合了Oracle数据库,为移动设备提供服务。 1. **Struts**:Struts是MVC(Model-View-Controller)设计模式的一个实现,主要用于控制...
在IT行业中,SSH框架组合是Java Web开发中的经典选择,由Spring、Spring MVC和Hibernate三个主要组件构成。这个"新SSH"案例实践旨在提供一个全面的教程,帮助开发者理解和掌握这三个框架如何协同工作以构建高效、...
基于struts+spring+hibernate+oracle的移动ssh项目源码 基于struts+spring+hibernate+oracle的移动ssh项目源码 基于struts+spring+hibernate+oracle的移动ssh项目源码 基于struts+spring+hibernate+oracle的移动ssh...
SSH整合是指将Spring、Hibernate和Struts这三大Java开源框架集成在一起,用于构建高效、灵活的企业级Web应用程序。这三个框架分别负责不同的职责:Spring作为应用的基石,提供依赖注入(DI)和面向切面编程(AOP),...
SSH框架是Java开发中常用的三大框架,分别是Struts2、Spring和Hibernate,它们协同工作,构建出高效、灵活的企业级应用程序。在这个名为"mySSH"的Gradle项目源码中,我们可以深入理解这三个框架的集成与应用。 ...
SSH(Struts、Spring、Hibernate)是一个经典的Java Web开发框架组合,其中Spring是核心,它负责管理和协调应用程序的各个部分。本资源提供了Spring框架所需的基本jar包,这些jar包是构建基于Spring的应用程序的基础...
SSH Maven项目是一个基于Java的Web开发框架,由Struts2、Spring和Hibernate三大组件组成,分别负责表现层、业务逻辑层和服务数据访问层。在这个项目中,使用的版本是Struts2.3.24、Spring4.2.4.RELEASE和Hibernate...
SSH框架,即Struts+Spring+Hibernate框架,是Java Web开发中的一种流行架构,它将三种技术结合在一起,各自承担不同的职责,共同构建出稳定、高效、易于维护的Web应用程序。 ### Spring在SSH框架中的核心角色 在...
在SSH项目中,通常会结合这三个框架的优势,Spring作为整个应用的“胶水”,管理其他组件的生命周期和依赖关系;Struts2负责接收和处理HTTP请求,控制应用程序的流程;Hibernate则用于持久化数据,与数据库交互。...