`
jiayj198609
  • 浏览: 146796 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

struts2对依赖注入的支持

阅读更多
说明:
依赖注入(Dependency Injection)还有一个名字,即控制反转(Inversion of Control,IoC)。

什么是控制反转呢?
     控制反转就是由容器控制对象之间的关系,而非传统现实中,由程序代码直接操控。控制权由应用程序转移到了外部容器,这种控制权的转移即控制反转。

什么是依赖注入?
     依赖注入将对象创建和对象链接的责任从对象自身转移到了IoC容器,由容器在运行期间将对象之间的依赖关系注入到对象之中。
     依赖注入和控制反转表述的是同一个意思。


开发步骤
    1.将struts2提供的spring插间struts2-spring-plugin-2.0.11.jar和spring的jar包放到lib目录下。编写web.xml,配置spring监听器

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
   <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
   <filter-name>struts2</filter-name>
   <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>

    2.编写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"
     xsi:schemaLocation ="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
    
     <bean id ="userDao" class ="org.sunxin.struts2.persistence.dao.UserDao"/>
</beans>
   3.修改RegistrterAction.java

package org.sunxin.struts2.action;
import java.util.Date;
import org.sunxin.struts2.persistence.dao.UserDao;
import org.sunxin.struts2.persistence.entity.User;
import com.opensymphony.xwork2.ActionSupport;
public class RegisterAction extends ActionSupport
{
private static final long serialVersionUID = 3970199804617664569L;
private User user;
private UserDao userDao;

/**
   * 在构造方法中初始化UserDao对象
   */
/*public RegisterAction()
{
   userDao = new UserDao();
}*/

public void setUserDao(UserDao userDao)
{
   this.userDao = userDao;
}

/**
   * 请求register!default.action,调用doDefault方法
   */
@Override
public String doDefault() throws Exception
{
   return INPUT;
}
/**
   * 调用UserDao的register方法注册用户
   */
@Override
public String execute() throws Exception
{
   user.setRegDate(new Date());   //注意不要忘了设置注册日期
   userDao.register(user);
   return SUCCESS;
}

/**
   * 为user对象提供getter方法
   * @return
   */
public User getUser()
{
   return user;
}
/**
   * 为user对象提供setter方法
   * @param user
   */
public void setUser(User user)
{
   this.user = user;
}



分享到:
评论

相关推荐

    struts2 依赖注入boolean类型的属性时报错

    NULL 博文链接:https://hw1287789687.iteye.com/blog/1949399

    struts hibernate spring 集成时使用依赖注入的方式的秘籍

    struts hibernate spring 集成时使用依赖注入的方式的秘籍,看看

    Struts2+spring依赖注入+Hibernate+Dwr

    完全可以跑通的例子。仅供大家参考。如有问题请留言:lxsoftware.engineer@gmail.com

    Struts2的特点

    struts2.0的特点 1、form是一个pojo 2、action是一个pojo,所以... 3、支持依赖注入,主要借助于spring来实现 4、支持拦截处理,相当于是aop 综上struts2.0吸了spring及webwork2的优点,是 强强联合的产品。

    Struts2在Action里注入EJB必须的包

    Struts2在Action里注入EJB必须的包,因为Struts2 的Action是普通的Java类(po),不能直接将EJB注入,所以需要依赖这个包

    struts1和struts2的区别

    答案是使用IoC(反转控制,Inversion of Control),也叫“依赖注入(Dependency Injection)”的模式(想更多地了解这方面信息请看Martin Fowler的文章http://www.martinfowler.com/articles/injection.html)。...

    Struts2 in action中文版

    11.1.2 Struts 2如何解决本地Java对i18n支持的问题 243 11.2 Struts 2 i18n示例 244 11.2.1 Struts 2 i18n快速展示 244 11.2.2 幕后一览 246 11.3 Struts 2 i18n详情 247 11.3.1 Struts 2默认的TextProvider Re-...

    深入浅出struts2

    最后,依赖注入也成了Struts2王国中的一等公民,这项功能是通过Spring框架的插件和Plexus共同提供的,与PicoContainer的结合工作还正在进行中。 本书的目的,是为了帮助读者掌握Struts2框架,并能够对组成框架的功能...

    struts2+spring+tomcat做的购物小例子

    用struts2+spring的资源依赖注入完成的购物程序

    Struts2+Hibernate+Spring整合实例

    Struts2+Hibernate+Spring整合实例,登陆注册实例,简单来说,Spring通过IoC容器上管(Struts2)Action的创建并依赖注入给控制器,下管(hibernate)SessionFactory的创建并依赖注入给DAO组件,是一个巨大的工厂

    深入浅出Struts2(附源码)

    跟随作者一道深入Struts 2,聆听大量来之不易的经验之谈,你对Struts 2开发框架的理解和应用水平都将更上一层楼。本书适合Java Web 程序员阅读和参考 第1章 Model 2应用程序 1 1.1 Model 2概览 1 1.2 带servlet...

    整合spring hibernate struts的一个例子

    spring hibernate struts 框架整合 依赖注入 实现增删改查

    内容管理系统(hibernate3+struts2+spring2).rar

    Hibernate3、Struts2和Spring2是三个常用的开源框架,它们分别用于数据持久化、Web应用开发和依赖注入。这个名为“内容管理系统(hibernate3+struts2+spring2).rar”的压缩包,包含了一个基于Hibernate3、Struts2和...

    struts2 spring hibernate整合要点、注意点

    struts2 spring hibernate 整合: 三者整合通过查询oracle数据库中的用户登录界面,最简单的配置。...struts.xml web.xml application.xml怎样配置,怎样依赖注入才能实现整合,显示出页面?请看这篇文档

    基于SSH(Struts2、Spring与Hibernate)框架的学生成绩管理系统.rar

    基于SSH(Struts2、Spring与Hibernate)框架的学生成绩管理系统 (1) 整合Struts2、Spring和...+ 掌握Spring的开发步骤,理解依赖注入、AOP、事务管理等 + 掌握Struts2、Spring和Hibernate框架的整合 + 掌握分页技术

    内容管理系统(hibernate3+struts2+spring2)130224.rar

    而Hibernate3、Struts2和Spring2是三个常用的Java开发框架,它们分别用于数据持久化、Web应用开发和依赖注入。这个名为“130224.rar”的压缩文件包含了一个基于Hibernate3、Struts2和Spring2的内容管理系统的JSP源码...

    东城大学在线答疑系统struts2+spring带sql2005数据库文件

    Struts和Spring的集成:将Struts的Action作为Spring当中的受管Bean,通过依赖注入将完成业务功能的Bean注入到Action中,使得Action很容易的访问到完成业务的Bean,具体参看前面介绍的一些配置文件。

    struts2+hibernate3.2+spring2.5整合示例

    做了一个ssh2的整合示例,删除了示例中的jar包,资源太大传不上,该示例采用的目前主流的技术struts2.1+hibernate3.2+spring2.5 的整合开发,示例采用面向接口的设计开发模式,使用spring来管理hibernate的事务,...

Global site tag (gtag.js) - Google Analytics