`
diqizhan
  • 浏览: 147305 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Spring,Struts2.0,Ibatis框架整合_2

阅读更多
数据持久层部分,接口类,IUserDao.java:

/** 
	* File Name:IUserDao.java * Version: * Date:2010-1-27 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.dao.in;

import java.util.List;

import com.vo.User;


/**
 * Project Name:ZhiMing   ** Class Name:IUserDao 
 * Author:Musoon        ** Created Time:2010-1-27 下午05:03:35 
 * Changed By:Musoon   ** Changed Time:2010-1-27 下午05:03:35 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public interface IUserDao {

	public List<User> findAllUsers();
	
	public User findUserByKey(int id);
	
	public void deleteUser(User user);
	
	public void addUser(User user);
	
	public void updateUser(User user);
	
}



实现类,为了方便,这里用SqlMapClientDaoSupport,不过感觉用最原始的SqlClientMap更灵活一点。UserDao.java:

/** 
	* File Name:UserDao.java * Version: * Date:2010-1-27 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.dao.impl;

import java.util.List;

import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

import com.dao.in.IUserDao;
import com.vo.User;


/**
 * Project Name:ZhiMing   ** Class Name:UserDao 
 * Author:Musoon        ** Created Time:2010-1-27 下午05:04:03 
 * Changed By:Musoon   ** Changed Time:2010-1-27 下午05:04:03 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public class UserDao extends SqlMapClientDaoSupport implements IUserDao {
	
	public void addUser(User user) {
		this.getSqlMapClientTemplate().insert("saveUser", user);
	}

	public void deleteUser(User user) {
		this.getSqlMapClientTemplate().delete("deleteUser", user);
	}

	public List<User> findAllUsers() {
		List<User> list = null;
		list = this.getSqlMapClientTemplate().queryForList("getAllUsers");
		return list;
	}

	public User findUserByKey(int id) {
		User user = null;
		user = (User) this.getSqlMapClientTemplate().queryForObject("findUserById", id);
		return user;
	}

	public void updateUser(User user) {
		this.getSqlMapClientTemplate().update("updateUser", user);
	}

}



业务逻辑层,接口类,IUserService.java:

/** 
	* File Name:UserService.java * Version: * Date:2010-1-4 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.service.in;

import java.util.List;

import com.vo.User;


/**
 * Project Name:ZhiMing   ** Class Name:UserService 
 * Author:Musoon        ** Created Time:2010-1-4 上午12:22:26 
 * Changed By:Musoon   ** Changed Time:2010-1-4 上午12:22:26 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public interface IUserService {

	public List<User> findAllUsers();
	
	public User findUserByKey(int id);
	
	public void deleteUser(User user);
	
	public void addUser(User user);
	
	public void updateUser(User user);
	
}



对应的实现类,UserServiceImpl.java:

/** 
	* File Name:UserServiceImpl.java * Version: * Date:2010-1-4 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.service.impl;

import java.util.List;

import org.springframework.orm.ibatis.SqlMapClientTemplate;

import com.dao.in.IUserDao;
import com.service.in.IUserService;
import com.vo.User;


/**
 * Project Name:ZhiMing   ** Class Name:UserServiceImpl 
 * Author:Musoon        ** Created Time:2010-1-4 上午12:24:03 
 * Changed By:Musoon   ** Changed Time:2010-1-4 上午12:24:03 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public class UserServiceImpl extends SqlMapClientTemplate implements
		IUserService {
	
	private IUserDao userDao;

	public IUserDao getUserDao() {
		return userDao;
	}

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

	public void addUser(User user) {
		userDao.addUser(user);
	}

	public void deleteUser(User user) {
		userDao.deleteUser(user);
	}

	public List<User> findAllUsers() {
		return userDao.findAllUsers();
	}

	public User findUserByKey(int id) {
		return userDao.findUserByKey(id);
	}

	public void updateUser(User user) {
		userDao.updateUser(user);
	}

}



action部分,基类BaseAction.java:

/** 
	* File Name:BaseAction.java * Version: * Date:2010-1-27 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.action;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;



/**
 * Project Name:ZhiMing   ** Class Name:BaseAction 
 * Author:Musoon        ** Created Time:2010-1-27 下午06:45:35 
 * Changed By:Musoon   ** Changed Time:2010-1-27 下午06:45:35 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public class BaseAction extends ActionSupport implements SessionAware, ServletRequestAware, ServletResponseAware {

	private static final long serialVersionUID = 7620009925942346125L;
	
	ActionContext context = ActionContext.getContext();
	HttpServletRequest request;
	HttpServletResponse response;
	SessionMap session;
	
	//获取request,response,session方式一,非IoC方式,不用实现SessionAware, ServletRequestAware, ServletResponseAware
	//ActionContext context = ActionContext.getContext();
	//HttpServletRequest request = (HttpServletRequest) context.get(ServletActionContext.HTTP_REQUEST);
	//HttpServletResponse response = (HttpServletResponse) context.get(ServletActionContext.HTTP_RESPONSE);
	//Map session = context.getSession();
	//SessionMap session = (SessionMap) context.get(ActionContext.SESSION);
	
	//获取request,response,session方式二,IoC方式,必须实现SessionAware, ServletRequestAware, ServletResponseAware
	public void setSession(Map map) {
		this.session = (SessionMap) map;
	}
	public void setServletRequest(HttpServletRequest request) {
		this.request = request;
	}
	public void setServletResponse(HttpServletResponse response) {
		this.response = response;
	}
	
}



UserAction.java:

/** 
	* File Name:UserAction.java * Version: * Date:2010-1-27 * Copyright Belongs To Musoon  Corporation 2010  
*/
	
package com.action;

import java.util.List;

import com.service.in.IUserService;
import com.vo.User;


/**
 * Project Name:ZhiMing   ** Class Name:UserAction 
 * Author:Musoon        ** Created Time:2010-1-27 下午05:24:13 
 * Changed By:Musoon   ** Changed Time:2010-1-27 下午05:24:13 
 * Changed Memo: 
 * @version 
 * Class Description: 
 */

public class UserAction extends BaseAction{
		
	private static final long serialVersionUID = 3836787603947654532L;
	
	private IUserService userService;

	public IUserService getUserService() {
		return userService;
	}

	public void setUserService(IUserService userService) {
		this.userService = userService;
	}

	public String findAllUsers() throws Exception {
		
		List<User> userList = userService.findAllUsers();//查找所有用户
		//session.put("userList", userList);
		request.setAttribute("userList", userList);//把用户列表设进用户请求request中
		return SUCCESS;
	}
	
}


分享到:
评论

相关推荐

    spring\struts2.0\ibatis简单整合

    在IT行业中,Spring、Struts2.0和iBatis是三个非常重要的开源框架,它们分别专注于依赖注入、MVC架构以及SQL映射。当这三个框架整合在一起时,可以构建出高效、灵活的企业级Web应用。这个名为"spring\struts2.0\...

    struts1+spring2.0+ibatis整合实例

    在这个"struts1+spring2.0+ibatis整合实例"中,开发者创建了一个小型的应用,演示了如何将这三个框架集成在一起,以构建一个功能完整的Web应用。这个实例中,MySQL5被选为后端数据库,用于存储数据。 首先,让我们...

    spring2.0+struts2.0+ibatis2.3完整整和

    "spring2.0+struts2.0+ibatis2.3完整整合"是一个经典的Java Web开发组合,这个组合在过去的许多年里被广泛应用,为开发者提供了强大的功能和灵活的架构。 **Spring框架(2.0版本)** Spring是一个全面的后端应用...

    Struts1.2+Spring2.0+Ibatis2.0整合小项目

    Struts1.2、Spring2.0和Ibatis2.0是Java开发中经典的三大开源框架,它们在企业级应用开发中广泛使用。这个小项目是将这三个框架整合在一起,以实现一个简单但完整的功能。下面我们将深入探讨这些知识点。 **Struts...

    Ext Struts2.0 Sprng2.0 Ibatis2.3 例子

    标题 "Ext Struts2.0 Spring2.0 Ibatis2.3 示例" 涉及的是一个集成开发环境,这个环境结合了三个重要的Java技术框架:Struts2、Spring和Ibatis,用于构建高效的企业级应用程序。让我们逐一深入探讨这三个框架及其在...

    ibatis+struts2.0+spring

    在"ibatis+struts2.0+spring"的整合中,通常会用Spring来管理iBatis的数据源和SqlSessionFactory,以及Struts2的动作类。Spring的AOP功能可以用于事务管理,确保数据操作的一致性。Struts2的动作类可以通过Spring的...

    ibatis & struts 2.0详细介绍

    在Java Web开发领域,ibatis和Struts 2.0是两个非常重要的框架,它们分别在数据访问层和表现层发挥着关键作用。本篇将深入探讨这两个框架的核心概念、功能及整合方式。 **一、ibatis简介** Ibatis,全称为SQL Map,...

    Struts2.0+Springframework2.5+ibatis2.3完美整合实例

    Struts2.0+Spring2.5.1+ibatis2.3的整合是一个常见的Java Web应用程序开发模式,主要用于构建高效、可维护性高的企业级系统。这种整合将Struts2作为表现层框架,Spring作为控制层和业务层框架,而iBatis则作为数据...

    Ibatis+struts2.0+Spring2.5 示例

    本示例是"Ibatis+struts2.0+Spring2.5"的整合,这是一个经典的Java Web开发技术栈,用于构建高效、灵活的企业级应用。下面将详细阐述这三个框架的集成及其核心功能。 1. **Ibatis**:Ibatis 是一个轻量级的持久层...

    Struts2.0+Springframework2.5+ibatis2.3完美整合用户登录及增删改查

    本演示示例主要使用目前最新,最流行技术Struts2.1 +Spring 2.5.1+ibatis2.3整合开发而成,这与我以前发布的版本中最大特色是整合了Spring2.5.1中的注解功能和半自动化工具ibatis技术,这是本示例的两大特色,简化了配置...

    Struts2.2.3 Spring3.1 ibatis2.0 jar包

    Struts2.2.3、Spring3.1和iBatis2.0是经典的Java Web开发框架组合,常被用于构建高效、灵活的企业级应用程序。这个压缩包包含了这三大框架的核心库,便于开发者进行集成和使用。下面我们将深入探讨这三个框架以及...

    Structs2.0+Spring2.5+Ibatis整合例子

    本项目"Structs2.0+Spring2.5+Ibatis整合例子"就是这样一个示例,展示了如何将Struts2、Spring和iBatis这三个流行的技术栈整合在一起,以实现MVC(模型-视图-控制器)架构。以下将详细阐述这三个框架的核心功能以及...

    图文搭建SSI(struts+spring+ibatis)框架

    本文将详细介绍如何使用MyEclipse8.5进行SSI(Struts2、Spring2.5、iBatis)框架的整合搭建。首先,我们需要一个新的Web项目作为基础。 1. **创建Web Project** 在MyEclipse8.5中,选择`File` -&gt; `New` -&gt; `...

    Ext2.0+struts2+spring2.5+ibatis2

    在IT领域,构建高效、可扩展的企业级应用是至关重要的,而"Ext2.0+Struts2+Spring2.5+Ibatis2"的组合就是一种常见的技术栈,用于实现这样的目标。这个技术组合提供了从用户界面到数据访问的全方位解决方案。 **Ext...

    [struts2、spring、ibatis]框架开发开发

    ### Struts2、Spring与iBatis框架整合开发详解 #### 一、概述 在Java Web开发领域,Struts2、Spring以及iBatis(现称为MyBatis)是三个非常重要的开源框架,它们各自拥有独特的功能,并且可以很好地协同工作以构建...

    struts2 ibatis spring 集成文档

    Struts2、iBATIS和Spring是Java Web开发中的三个重要框架,它们分别负责MVC模式中的Action层、数据访问层以及服务层的管理。这三者的集成可以构建出高效、灵活的企业级应用。下面将详细阐述这三个框架的核心概念、...

    Spring2.5+ibatis2.3+Extjs2.0+Struts2实现用户管理

    在本项目中,我们主要探讨的是如何利用Spring 2.5、iBatis 2.3、Struts2以及ExtJS 2.0这四个组件来构建一个用户管理系统。这是一个典型的Java Web应用架构,其中Spring作为核心框架负责依赖注入和整体架构的管理,...

    struts2.0 in action 全书

    《Struts2.0 in Action》是一本深入探讨Apache Struts 2框架的权威书籍,全书涵盖了400多页的丰富内容。Struts 2是Java Web开发中的一个流行MVC(Model-View-Controller)框架,它极大地简化了创建功能强大的、基于...

    ibatis大全

    1. **Struts2+spring+ibatis框架整合.doc**:可能包含详细的步骤和示例,解释如何配置和整合这三个框架,包括配置文件的设置、依赖注入的实现以及控制器、模型和服务层的集成。 2. **iBATIS-SqlMaps-2_cn.pdf**:这...

Global site tag (gtag.js) - Google Analytics