博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2+Spring3+Mybatis3开发环境搭建
阅读量:4048 次
发布时间:2019-05-25

本文共 6746 字,大约阅读时间需要 22 分钟。

 
本文主要介绍Struts2+Spring3+Mybatis3开发环境搭建
Struts和Spring不过多介绍。
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录。
环境:
Struts-2.3.14
Spring-3.2.1
MyBatis-3.2.2
在apache-tomcat-7.0.39下测试通过
 
Project目录结构
lib文件夹下的依赖包:
 
入口web.xml
test_ssm
index.jsp
contextConfigLocation
classpath:config/applicationContext-*.xml
org.springframework.web.context.ContextLoaderListener
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
config
struts-default.xml,struts-plugin.xml,/config/struts.xml
struts2
/*
Spring配置文件
applicationContext-common.xml
PROPAGATION_REQUIRED
PROPAGATION_REQUIRED
PROPAGATION_REQUIRED
PROPAGATION_REQUIRED
PROPAGATION_REQUIRED
PROPAGATION_REQUIRED
readOnly
applicationContext-beans.xml
Struts配置文件
struts.xml
struts-user.xml
 
/{2}.jsp
Mybatis配置文件
mabatis-config.xml
UserManageAction.java
package com.jialin.action;import com.jialin.entity.UserInfo;import com.jialin.service.IUserInfoService;public class UserManageAction {	private IUserInfoService userInfoService;	public IUserInfoService getUserInfoService() {		return userInfoService;	}	public void setUserInfoService(IUserInfoService userInfoService) {		this.userInfoService = userInfoService;	}	private UserInfo userInfo;	public UserInfo getUserInfo() {		return userInfo;	}	public void setUserInfo(UserInfo userInfo) {		this.userInfo = userInfo;	}	 	public String insertUser() {		userInfoService.insertUser(userInfo);		return "success";	}	public String editUser() {		userInfoService.edit(userInfo);		return "success";	}	public String removeUser() {		userInfoService.remove(userInfo);		return "success";	}	public String getUserById() {		userInfoService.get(userInfo);		return "success";	}	public String getListByName() {		userInfoService.getList(userInfo);		return "success";	}	public String getAllUser() {		userInfoService.getAllUser();		return "success";	}}
 
IUserInfoService.java
package com.jialin.service;import java.util.List;import com.jialin.entity.UserInfo;public interface IUserInfoService {	public void insertUser(UserInfo user);	public void edit(UserInfo user);	public void remove(UserInfo user);	public UserInfo get(UserInfo user);	public List getList(UserInfo user);		public List getAllUser();}
UserInfoService.java
package com.jialin.service;import java.util.List;import java.util.Iterator;import com.jialin.dao.UserInfoDao;import com.jialin.entity.UserInfo;public class UserInfoService implements IUserInfoService {		private UserInfoDao userInfoDao;		public UserInfoDao getUserInfoDao() {		return userInfoDao;	}	public void setUserInfoDao(UserInfoDao userInfoDao) {		this.userInfoDao = userInfoDao;	}	@Override	public void insertUser(UserInfo user)	{		userInfoDao.insertUser(user);	}	@Override	public void edit(UserInfo user) {		userInfoDao.edit(user);			}	@Override	public void remove(UserInfo user) {		userInfoDao.remove(user);			}	@Override	public UserInfo get(UserInfo user) {		UserInfo user1=userInfoDao.get(user);		System.out.println(user1.getUsername());		return user1;	}	@Override	public List getList(UserInfo user) {		List list=userInfoDao.getList(user);				for(Iterator iter=list.iterator();iter.hasNext();)		{			UserInfo user1=(UserInfo)iter.next();			System.out.println(user1.getUsername()+",");		}				return list;	}	@Override	public List getAllUser() {		List list= userInfoDao.getAllUser();		for(Iterator iter=list.iterator();iter.hasNext();)		{			UserInfo user=(UserInfo)iter.next();			System.out.println(user.getUsername()+",");		}				return list;	}	}
UserInfoDao.java
package com.jialin.dao;import java.util.List;import com.jialin.entity.UserInfo;public interface UserInfoDao {		public void insertUser(UserInfo user);	public void edit(UserInfo user);	public void remove(UserInfo user);	public UserInfo get(UserInfo user);	public List getList(UserInfo user);		public List getAllUser();}
UserInfo.java
package com.jialin.entity;public class UserInfo {	private int id;	private String username;	private String password;	private String ismanager;	public void setIsmanager(String ismanager) {		this.ismanager = ismanager;	}	public String getIsmanager() {		return ismanager;	}	public void setUsername(String username) {		this.username = username;	}	public String getUsername() {		return username;	}	public void setPassword(String password) {		this.password = password;	}	public String getPassword() {		return password;	}	public void setId(int id) {		this.id = id;	}	public int getId() {		return id;	}}
Mybaitis映射文件
userinfo-mapper.xml
insert into userinfo(username,password,ismanager) values (#{username},#{password},#{ismanager})
update userinfo set username = #{username}, password = #{password} where id = #{id}
delete from userinfo where id = #{id}
userinfo-resultMap.xml
测试jsp
<%@ page contentType="text/html; charset=UTF-8"%>	

用户管理


id:
用户名:
密码:
是否为管理员:
贴代码也是个体力活,多余的话没有,核心的几个配置文件的说明都已写到注释里。
 
下面会出一篇文章探讨一个Hibernate和Mybatis的区别,还会出一些对这些框架讨论的文章,欢迎大家关注!
 
 
你可能感兴趣的文章
LED恒流驱动芯片
查看>>
驱动TFT要SDRAM做为显示缓存
查看>>
使用file查看可执行文件的平台性,x86 or arm ?
查看>>
qt5 everywhere 编译summary
查看>>
qt 创建异形窗体
查看>>
简单Linux C线程池
查看>>
内存池
查看>>
输入设备节点自动生成
查看>>
GNU hello代码分析
查看>>
Qt继电器控制板代码
查看>>
wpa_supplicant控制脚本
查看>>
gstreamer相关工具集合
查看>>
RS232 四入四出模块控制代码
查看>>
linux 驱动开发 头文件
查看>>
container_of()传入结构体中的成员,返回该结构体的首地址
查看>>
ipconfig,ifconfig,iwconfig
查看>>
opensuse12.2 PL2303 minicom
查看>>
网络视频服务器移植
查看>>
Encoding Schemes
查看>>
移植QT
查看>>