spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象
实现要求:
在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象,模拟实现用户的增删改操作,并将结果输出到控制台。要求如下:
- set注入方式实现对象的依赖关系。
- 增删改操作需要实现、提交和关闭操作。
事务的开启

实现思路:
在com.mhys.pojo包下,创建User类。 在com.mhys.dao包下,创建UserDao类。
package com.mhys.bean;
public class Users {
private String userId;
private String userName;
private String password;
private int age;
private String address;
private String flag;
public Users() {
super();
}
public Users(String userId, String userName, String password, int age, String address, String flag) {
super();
this.userId = userId;
this.userName = userName;
this.password = password;
this.age = age;
this.address = address;
this.flag = flag;
}
@Override
public String toString() {
return "Users [userId=" + userId + ", userName=" + userName + ", password=" + password + ", age=" + age
+ ", address=" + address + ", flag=" + flag + "]";
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag;
}
}
package com.mhys.Dao;
import com.mhys.bean.Users;
public class UsersDao {
public Users getUserById(String userId){
Users users = new Users("130006", "杨明金", "123456", 20, "云南", "1");
return users;
}
public Boolean insertUser(Users users){
System.out.println("插入数据:"+users.getUserId()+","+users.getUserName()
+","+users.getPassword()+","+users.getAge()+","
+users.getAddress()+","+users.getFlag());
return true;
}
public Boolean updataUserByid(Users users){
System.out.println("修改用户编号:"+users.getUserId()+"的密码为:"+users.getPassword());
return true;
}
public Boolean deleteUserByid(Users users){
System.out.println("删除用户编号:"+users.getUserId()+"的信息");
return true;
}
}
在com.mhys.service包下,创建UserService类。
package com.mhys.Dao;
import com.mhys.bean.Users;
public class UsersService {
private UsersDao usersDao;
public Users getUserInfoById(String userId){
Users users = usersDao.getUserById(userId);
return users;
}
public Boolean insertUserInfo(Users users) {
System.out.println("开启事务");
usersDao.insertUser(users);
System.out.println("提交事务");
System.out.println("关闭事务");
return true;
}
public Boolean updataInfo(Users users) {
System.out.println("开启事务");
usersDao.updataUserByid(users);
System.out.println("提交事务");
System.out.println("关闭事务");
return true;
}
public Boolean deleteInfo(Users users) {
System.out.println("开启事务");
usersDao.deleteUserByid(users);
System.out.println("提交事务");
System.out.println("关闭事务");
return true;
}
public UsersDao getUsersDao() {
return usersDao;
}
public void setUsersDao(UsersDao usersDao) {
this.usersDao = usersDao;
}
}
在applicationContext.xml配置文件中,注册userDao类和userService类到容器。
<bean id="users" class="com.mhys.bean.Users"></bean>
<bean id="usersDao" class="com.mhys.Dao.UsersDao"></bean>
<bean id="usersService" class="com.mhys.Dao.UsersService">
<property name="usersDao" ref="usersDao"></property>
</bean>
在com.mhys.demo.test包下,创建测试类。
package com.mhys.test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.mhys.Dao.UsersService;
import com.mhys.bean.Users;
public class T1_4_3Test {
public static void main(String[] args) {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UsersService usersService = (UsersService) context.getBean("usersService");
//查询测试
Users users1 = usersService.getUserInfoById("23");
System.out.println(users1);
//创建测试对象
Users users2 = new Users("2487", "杨明金", "123456", 20, "云南省", "1");
//添加测试
Boolean flag1 = usersService.insertUserInfo(users2);
if (flag1) {
System.out.println("插入成功!");
}
//修改测试
users1.setPassword("1111");
Boolean flag2 = usersService.updataInfo(users2);
if (flag2) {
System.out.println("修改成功!");
}
//删除测试
Boolean flag3 = usersService.deleteInfo(users2);
if (flag3) {
System.out.println("删除成功!");
}
}
}
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象的更多相关文章
- sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。
相关 知识 >>> 相关 练习 >>> 实现要求: 在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台.要 ...
- spring练习,使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出。
相关 知识 >>> 相关 练习 >>> 实现要求: 使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出.要求如下: ...
- 使用Eclipse搭建C/C++开发环境(转)
使用Eclipse搭建C/C++开发环境 文章出自:http://www.cnblogs.com/liuxianan/archive/2013/01/15/2861196.html 说明:网上有很多 ...
- 基于Eclipse搭建STM32开源开发环境
最近项目不忙,想着没事看看简单的嵌入式,弄弄物联网什么的.于是就从廉价的STM32开刀了.因为一直是做PC软件开发的,那VS的智能感知那叫一个爽啊,相比之下,觉得这个Keil简直就像文本编辑器一样lo ...
- HBase学习----windows10下使用eclipse搭建HBase的开发环境
以下是我搭建HBase开发环境的一些心得(windows10) 0.安装JDK和eclipse和一个可用的HBase. 这步是最基础的,在此就不赘述了 1.创建一个java项目: 基础问题,不赘述. ...
- Ubuntu下安装C/C++开发环境【!!!有更新!!!Ubuntu14.10下使用eclipse搭建C语言开发环境】
(1)第一步安装Eclipse,有两种方法,使用软件市场搜索就可以得到,安装就可以 另外一种是使用终端安装,命令例如以下: sudo su进入root模式 输入password 然后 输入:sudo ...
- 如何用eclipse搭建Android的开发环境
l开发主要应用Eclipse 3.7版本. l辅助工具为jdk.Androidsdk Android环境搭建 –1.1.JDK安装 –1.2.Eclipse安装 –1.3.Android SDK安 ...
- Windows下用Eclipse搭建C/C++开发环境
本文假定你已经熟悉Java,Eclipse的安装,并能顺利启动和运行Eclipse.此外因为各软件版本在不断更新,有些地方可能不准确,以最新的.原文资料为准. 距上一次写和调C++程序,已经5.6年了 ...
- Eclipse搭建C++\C开发环境
1.最近使用visualStudio IDE开发Unity 3D使用的编程语言是C#但是发现visualStudio12 版本在自己主机上运行速度比够快,怀疑是不是处理器或者是版本问题,所以该卸载了, ...
随机推荐
- 【Android】安装插件 + 改变文字大小、颜色 + 隐藏代码区块的直线
安装插件 可以在搜寻框里面填入关键字搜寻,具体的插件,网上有很多介绍了 改变文字大小.颜色 隐藏代码区块的直线
- [学习总结]3、Android---Scroller类(左右滑动效果常用的类)
参考资料:http://blog.csdn.net/vipzjyno1/article/details/24592591 非常感谢这个兄弟! 在android学习中,动作交互是软件中重要的一部分,其中 ...
- [学习总结]1、View的scrollTo 和 scrollBy 方法使用说明和区别
参考资料:http://blog.csdn.net/vipzjyno1/article/details/24577023 非常感谢这个兄弟! 先查看这2个方法的源码: scrollTo: 1 /** ...
- HTML DOM 对象 - 方法和属性
一些常用的 HTML DOM 方法: getElementById(id) - 获取带有指定 id 的节点(元素) appendChild(node) - 插入新的子节点(元素) removeChil ...
- pop和push等使用方法,every和some、join
push 在最前面添加一个元素 pop 移除最后一个元素 shift 移除第一个元素 unshift 放入一个元素,且排在最前 arr.splice(2,2)//移除从指定下标 slice(2 ...
- Linkerd Service Mesh 服务配置文件规范
服务配置文件 为 Linkerd 提供有关服务的附加信息. 以下是可以使用服务配置文件完成的所有操作的参考. 系列 中文手册(https://linkerd.hacker-linner.com) Sp ...
- Jenkins环境变量
目录 一.环境变量 二.自定义环境变量 三.自定义全局变量 四.常用变量定义 五.常用环境变量 一.环境变量 环境变量可以被看作是pipeline与Jenkins交互的媒介.比如,可以在pipelin ...
- 【划重点】Python xlwt简介和用法
一.导入xlwt包,并初始化创建一个工作簿 import xlwt workbook=xlwt.Workbook() # 初始化创建一个工作簿 二.创建表单 sheet1=workbook.add_s ...
- pthread_cond_signal与pthread_cond_wait详解
转:http://blog.chinaunix.net/uid-11572501-id-3456343.html //pthread_cond_signal 只发信号,内部不会解锁,在Linux 线程 ...
- Iphone开源项目汇总
扫描wifi信息: http://code.google.com/p/uwecaugmentedrealityproject/ http://code.google.com/p/iphone-wire ...