请看之前的
struts2学习之一:
http://arthur2014.iteye.com/blog/2162974
struts2学习之二-json插件:
http://arthur2014.iteye.com/blog/2162989
struts2学习之四-struts2注解:
http://arthur2014.iteye.com/admin/blogs/2163348
在build.gradle需要添加"org.apache.struts:struts2-spring-plugin:2.3.15.1",引入一系列spring相关jar包。
1、在类路径下新建applicationContext.xml,在dao、service层使用spring注解实现,则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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- <context:annotation-config /> -->
<context:component-scan base-package="com.haochen.*" />
</beans>
<context:component-scan/>表示使用注解来注册bean定义,属性 base-package表示扫描com.haochen包下的带注解标签的类。在spring中一般使用@Repository注解dao层,使用@Service注解业务层
2、修改web.xml添加一下内容:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/classes/applicationContext.xml
</param-value>
</context-param>
3、定义dao,dao接口IUserDao.java:
package com.haochen.dao;
import com.haochen.vo.User;
public interface IUserDao {
public User getUser(String name);
}
实现接口的具体dao类UserDaoImpl.java,使用@Repository注解注册:
package com.haochen.dao;
import org.springframework.stereotype.Repository;
import com.haochen.vo.User;
/**
*
* @title
* @Description dao类,使用spring注解@Repository注册
* @author chenhao
* @date 2014年12月4日 上午9:11:28
* @version 1.0
*/
@Repository("userDao")
public class UserDaoImpl implements IUserDao {
@Override
public User getUser(String name) {
User user = new User();
user.setName("tom");
user.setAge(18);
user.setSex('M');
return user;
}
}
4、定义service,接口IUserService.java:
package com.haochen.service;
import com.haochen.vo.User;
public interface IUserService {
public User getUser(String name);
}
实现类UserService.java,使用@Service注解注册定义,使用@Autowired注解注入dao:
package com.haochen.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.haochen.dao.IUserDao;
import com.haochen.vo.User;
/**
*
* @title
* @Description 业务类,使用spring注解@Service注册
* @author chenhao
* @date 2014年12月4日 上午9:12:39
* @version 1.0
*/
@Service("userService")
public class UserService implements IUserService {
/**
* 通过spring注解获取dao实例
*/
@Qualifier("userDao")
@Autowired
private IUserDao userDao;
@Override
public User getUser(String name) {
return this.userDao.getUser(name);
}
}
5、在控制层action中使用@Autowired注解注入service:
package com.haochen.action;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import com.haochen.service.IUserService;
public class UserJsonAction extends BaseJsonAction {
/**
*
*/
private static final long serialVersionUID = -5818584581746655517L;
private String name;
// 指定bean名
@Qualifier("userService")
@Autowired
private IUserService userService;
@Override
public String execute() throws Exception {
String n = name;
this.success(userService.getUser(n));
/**
* 1、返回值为JSON,配置文件struts.xml中的<action></action>不用设置<result
* type="json"></result>。
* 2、返回值为SUCCESS,配置文件struts.xml中的<action></action>需要设置<result
* type="json"></result>。
**/
return JSON;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
6、启动tomcat,访问http://localhost:8080/struts2demo/a/helloworld.action,即可获取user值。
分享到:
相关推荐
Struts2、Hibernate3和Spring是Java开发中常用的三大框架,它们各自负责不同的职责:Struts2用于控制应用程序的流程,Hibernate3则是优秀的对象关系映射(ORM)框架,Spring则提供全面的依赖注入(DI)和面向切面...
Struts2-Spring-Plugin-2.2.3.1.jar是Apache Struts框架与Spring框架集成的一个插件,主要用于帮助开发者在基于Struts2的应用程序中无缝地使用Spring进行依赖注入(Dependency Injection,DI)和控制反转(Inversion...
4. `2struts-spring.txt`:这个文件可能详细阐述了Struts2和Spring3的整合,包括如何使用Spring管理Struts2的Action,如何配置Struts2-Spring插件,以及如何在Action中注入Spring管理的Bean。 5. `1struts.txt`:这...
Struts2 和 Spring 的整合是企业级 Java Web 开发中常见的技术栈,通过注解配置可以使项目更加简洁、易于维护。Struts2 提供了一种使用注解替代 XML 配置的方式,使得开发者无需编写繁琐的 struts.xml 文件,即可...
Struts2、Hibernate和Spring是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2主要用于控制层,提供MVC(Model-View-Controller)架构;Hibernate是持久层框架,负责对象关系映射(ORM);而...
1. **Spring注解**: - `@Component`:标记一个类为Spring管理的Bean,相当于在XML中声明一个bean。 - `@Service`、`@Repository`和`@Controller`:是`@Component`的特化,分别用于业务层、数据访问层和控制层。 ...
Struts2、Hibernate3.3.5和Spring2.5是Java开发中非常重要的三个开源框架,它们分别负责Web层、持久层和业务层的管理。这个"struts2-hibernate3.3.5-spring2.5整合包"是为了方便开发者快速搭建基于SSH的项目环境而...
Struts2-Spring4-Hibernate4 XML配置的框架是一个经典的Java Web开发架构,它整合了三个主流的开源框架:Struts2、Spring4和Hibernate4。这个框架的配置主要通过XML文件来完成,同时也可以结合注解的方式进行更加...
Struts2、Spring3和MyBatis3是Java Web开发中的三大核心框架,它们各自承担着不同的职责,但又能够很好地协同工作,提供强大的企业级应用解决方案。在本项目"整合struts2-spring3-MyBatis3"中,我们将深入探讨如何将...
Struts2-Spring-Plus是基于Struts2和Spring框架的一个整合插件,它使得在Struts2应用中集成Spring变得更加便捷。这个插件的主要目的是为了优化和简化两个框架之间的协同工作,提供更好的依赖注入(Dependency ...
Struts2.2.3、Hibernate3.3.1 和 Spring3.1 是三个非常重要的Java Web开发框架,它们在企业级应用开发中扮演着核心角色。这个`struts2.2.3-hibernate3.3.1-spring3.1.zip`压缩包集合了这三个框架的组件,方便开发者...
Struts2-Spring-Hibernate整合框架是Java Web开发中常用的一种技术栈,它结合了Struts2、Spring和Hibernate三个核心框架,旨在提供一个高效、灵活且可扩展的开发环境。Struts2作为MVC(Model-View-Controller)框架...
Struts2、Spring和Hibernate是Java开发中三大主流框架,它们的整合应用是企业级Java Web项目中的常见实践。这个源码包"struts2.3.7-spring3.1.0-hibernate4.0.0 整合源码"提供了一个完整的示例,展示了如何将这三个...
在这个例子中,我们将深入探讨如何将Struts2、Spring和Hibernate这三个流行的技术框架整合在一起,以实现一个高效且可维护的Web应用。 Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,用于...
6. **struts2-spring-plugin**: 如果使用Spring框架,这个插件能实现Struts2与Spring的无缝集成,包括Action的依赖注入和事务管理。 7. **其他依赖库**:如ognl(Object-Graph Navigation Language)用于表达式语言...
在Java开发领域,Struts2、Spring和Hibernate这三大框架的整合,简称SSH2,是常见的企业级应用开发模式。MyEclipse作为一款强大的Java集成开发环境,提供了便捷的SSH2整合支持。以下是详细的搭建步骤及知识点解析: ...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC模式中的视图和控制器,Spring提供依赖注入(DI)和面向切面编程(AOP),而Hibernate则负责对象关系映射...
struts2.2.3-spring3.0.6-hibernate3.6.6 二、Demo功能(导入sql可直接运行) 0.数据库文件doc/db.sql 1.引入Spring全注解 2.抽取业务/持久层通用代码(UniversalService/UniversalDao),避免重复编写 比如有实体:...
总结,"spring-mybatis-struts2-master"项目是一个典型的SSM框架整合示例,它展示了如何在实际项目中运用这三个框架。通过深入研究这个项目,开发者可以更好地掌握SSM框架的集成技巧,提升自己的Java Web开发能力。
本篇文章将详细介绍如何在Struts2和Spring框架中结合使用注解进行配置,以简化开发过程。 首先,让我们了解Spring框架中的注解配置。Spring提供了如@Component、@Service、@Repository和@Controller等注解,用于...