`

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;
	}
	
}


分享到:
评论

相关推荐

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

    只是一个非常非常简单的小例子而已。希望大家多多指教。QQ:286310709 MSN:conanzhangjie@hotmail.com.

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

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

    struts2+srping+ibatis整合实例OAWEBS

    本实例为struts2.0+spring2.5+ibatis2.3框架。 一、解压后先建立数据库,名为:shequ(本例采用的是MySQL5.5) 二、利用shequ.sql文件,初始化数据库。 三、部署工程,运行。 ibatis

    struts1.2+ibatis+DWR2.0+MySql5.0增删改查的小例子

    我也是初学3个框架的整合,希望多多指教!

    想购物就购物源代码想购物就购物源代码

    ibatis3.0+spring2.5+struts2.0整合框架、适合做网上购物商城

    Spring 2.0 开发参考手册

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@...

    AutoCode代码生成器 SSI 完整破解版

    AutoCode代码生成器(SSH版)【用于JAVA开发中的 Struts2.0 + Spring2.0 + Ibatis2.3 及以上框架版本整合程序开发】 强大的支撑功能,堪称JAVA SSI编程的利器,你绝对值得拥有!

    Spring-Reference_zh_CN(Spring中文参考手册)

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的...

    spring chm文档

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@...

    Spring API

    2. Spring 2.0和 2.5的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 新的bean作用域 2.2.2. 更简单的XML配置 2.2.3. 可扩展的XML编写 2.2.4. Annotation(注解)驱动配置 2.2.5. 在classpath中自动搜索组件...

    Spring中文帮助文档

    13.1.2. Spring Web MVC框架的特点 13.2. DispatcherServlet 13.3. 控制器 13.3.1. AbstractController 和 WebContentGenerator 13.3.2. 其它的简单控制器 13.3.3. MultiActionController 13.3.4. 命令控制器 ...

    J2me案例DEMO

    工作中的一个J2ME手机客户端软件,后台采用struts+spring+ibatis作框架,UI端采用MIDP2.0规范,对于想学习J2EE和J2ME的朋友可以来看看,很好的整合案例。

    iuhyiuhkjh908u0980

    本章我们将会开发基于Struts2框架的Hello World.我们的Hello World程序是你开发基于Struts2框架程序的第一步.这里我们会提供循序渐进的教程来开发基于Struts2框架的Hello World程序. 教程包含基本的步骤像创建目录...

Global site tag (gtag.js) - Google Analytics