idea增删改查
idea应用mybatis写增删改查
entity层
private Integer id;
private String userCode;
private String userName;
private String userPassword;
private Integer gender;
private Date birthday;
private String phone;
private String address;
private Integer userRole;
private Integer createdBy;
private Date creationDate;
private Integer modifyBy;
private Date modifyDate; public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getUserCode() {
return userCode;
} public void setUserCode(String userCode) {
this.userCode = userCode;
} public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getUserPassword() {
return userPassword;
} public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
} public Integer getGender() {
return gender;
} public void setGender(Integer gender) {
this.gender = gender;
} public Date getBirthday() {
return birthday;
} public void setBirthday(Date birthday) {
this.birthday = birthday;
} public String getPhone() {
return phone;
} public void setPhone(String phone) {
this.phone = phone;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
} public Integer getUserRole() {
return userRole;
} public void setUserRole(Integer userRole) {
this.userRole = userRole;
} public Integer getCreatedBy() {
return createdBy;
} public void setCreatedBy(Integer createdBy) {
this.createdBy = createdBy;
} public Date getCreationDate() {
return creationDate;
} public void setCreationDate(Date creationDate) {
this.creationDate = creationDate;
} public Integer getModifyBy() {
return modifyBy;
} public void setModifyBy(Integer modifyBy) {
this.modifyBy = modifyBy;
} public Date getModifyDate() {
return modifyDate;
} public void setModifyDate(Date modifyDate) {
this.modifyDate = modifyDate;
}
Dao层
IUserDao:(Interface)
//查询
public List<User> getAllUser();
//新增
void addUser(User user);
//删除
void delUser(int id);
//修改
void modifyUser(User user);
//新增时获得主键
void addUserKey(User user);
//模糊查询
public List<User> getAllUsers();
IUserDao:(xml)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--namespace需要指向接口全路径--> <mapper namespace="com.qzy.dao.IUserDao"> <!--id代表当前命名空间下(接口下)的唯一方法名 resultType代表返回值类型--> <select resultType="User" id="getAllUser">
select * from smbms_user
</select> <insert parameterType="User" id="addUser">
insert into smbms_user values (DEFAULT,#{userCode},#{userName},#{userPassword},#{gender},#{birthday},#{phone},#{address},#{userRole},#{createdBy},#{creationDate},#{modifyBy},#{modifyDate})
</insert> <insert id="addUserKey" parameterType="com.qzy.entity.User" useGeneratedKeys="true" keyProperty="id">
insert into smbms_user values (DEFAULT,#{userCode},#{userName},#{userPassword},#{gender},#{birthday},#{phone},#{address},#{userRole},#{createdBy},#{creationDate},#{modifyBy},#{modifyDate})
</insert> <delete id="delUser">
delete from smbms_user where id=#{xxx}
</delete> <update id="modifyUser" parameterType="User">
update smbms_user set userName=#{userName} where id=#{id}
</update> <select id="getAllUsers" resultType="User">
select * from smbms_user where userName like '%${value}%';
</select>
</mapper>
resources层
mybatis-config.(xml)
<?xml version="1.0" encoding="UTF-8" ?>
省略......
<typeAliases>
<!--单个设置别名-->
<!-- <typeAlias type="com.qzy.entity.User" alias="User"/>--> <!--全局设置别名-->
<package name="com.qzy.entity"/>
</typeAliases>
<!--log4j配置文件的读取(可以不写)-->
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
省略......
</configuration>
tset层
tset(class)
private static Logger log = Logger.getLogger(Test.class.getClass());
SqlSession sqlSession;
@Before
public void before() throws IOException {
//System.out.println("执行之前========================");
log.info("执行之前========================");
//步骤一:读取大配置文件
String source="mybatis-config.xml";
InputStream is = Resources.getResourceAsStream(source);
//步骤二:创建工厂
SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(is);
//步骤三:创建SqlSession核心对象
sqlSession = factory.openSession();
} @Test
public void selectAllTest() throws IOException {
//步骤四:查
List<User> getAllUser = sqlSession.selectList("getAllUser");
for (User user:getAllUser) {
//System.out.println(user.getUserName());
log.info(user.getUserName());
}
}
//模糊
@Test
public void getAllUsers() throws IOException{
List<User> userList=sqlSession.selectList("com.qzy.dao.IUserDao.getAllUsers","孙");
for (User u:userList){
///System.out.println(u.getUserName());
log.info(u.getUserName());
}
}
//增
@Test
public void addUser() throws IOException{
User user =new User();
user.setUserCode("hehe");
user.setUserName("牛皮呀");
user.setUserPassword("123123");
user.setGender(2);
user.setBirthday(new Date());
user.setPhone("13215689594");
user.setAddress("北京市海淀区五道口北大青鸟");
user.setUserRole(2);
user.setCreatedBy(1);
user.setCreationDate(new Date());
user.setModifyBy(null);
user.setModifyDate(null);
sqlSession.insert("com.qzy.dao.IUserDao.addUser",user);
sqlSession.commit();
//查看是否会返回自增的主键
//System.out.println(user.getId());
log.info(user.getId());
}
//删
@Test
public void delUser() throws IOException{
sqlSession.delete("com.qzy.dao.IUserDao.delUser","17");
sqlSession.commit();
sqlSession.close();
//System.out.println("删除成功!");
log.info("删除成功!");
}
//改
@Test
public void modifyUser() throws IOException{
User user=new User();
user.setUserName("安其拉");
user.setId(16);
sqlSession.update("com.qzy.dao.IUserDao.modifyUser",user);
sqlSession.commit();
sqlSession.close();
//System.out.println("更改成功!");
log.info("更改成功!");
}
@After
public void after(){
//System.out.println("执行之后====================================");
log.info("执行之后========================");
//最后关闭sqlSession释放资源
sqlSession.close();
}
log4j.(properties)
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n ### direct messages to file mylog.log ###
log4j.appender.file=org.apache.log4j.FileAppender
###日志文件的了路径###
log4j.appender.file.File=G:\\mylog.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n ### set log levels - for more verbose logging change 'info' to 'debug' ###
###log4j.rootLogger=debug, stdout,file
log4j.logger.com.qzy.dao=debug, stdout,file
idea增删改查的更多相关文章
- Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示
Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...
- ASP.NET从零开始学习EF的增删改查
ASP.NET从零开始学习EF的增删改查 最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查
系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...
- 通过Java代码实现对数据库的数据进行操作:增删改查
在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao xingming xue ...
- Hibernate全套增删改查+分页
1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...
- 使用 Json.Net 对Json文本进行 增删改查
JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...
- yii2 增删改查
自己总结的yii2 advanced 版本的简单的增删改查,希望对大家有所帮助 1.gii生成的actionCreate()方法中 获取插入语句的id $id = $model->attribu ...
- Batis-iBatis基本操作(增删改查)
Batis-iBatis基本操作(增删改查) 时间 2014-04-10 17:55:20 CSDN博客 原文 http://blog.csdn.net/mazhaojuan/article/de ...
- JS组件系列——又一款MVVM组件:Vue(一:30分钟搞定前端增删改查)
前言:关于Vue框架,好几个月之前就听说过,了解一项新技术之后,总是处于观望状态,一直在犹豫要不要系统学习下.正好最近有点空,就去官网了解了下,看上去还不错的一个组件,就抽空研究了下.最近园子里vue ...
- JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(一)
前言:出于某种原因,需要学习下Knockout.js,这个组件很早前听说过,但一直没尝试使用,这两天学习了下,觉得它真心不错,双向绑定的机制简直太爽了.今天打算结合bootstrapTable和Kno ...
随机推荐
- MYSQL数据库索引、事务。
=============================================================================================== inno ...
- notepad++,vim驼峰命名与下划线的互相转换
notepad++,vim驼峰命名与下划线的互相转换 IDDAY_TIMEDAY_FULL_NAMEDAY_OF_WEEKYEAR_MONTHYREA_NAME 下滑线转驼峰 大写转小写 有这么些 ...
- Fedora以root用户自动登陆
目录 Fedora以root用户自动登陆 参考 配置自动登陆 Fedora以root用户自动登陆 Fedora Workstation Version: 31
- JDK源码分析-HashMap
一.HashMap的内部属性 1.1 成员变量 1.1.1 size: HashMap包含的KV键值对的数量,也就是我们通常调用Map.size()方法的返回值 public int size() { ...
- numpy.bincount正确理解
今天看了个方法,numpy.bincount首先官网文档: numpy.bincount numpy.bincount(x, weights=None, minlength=0) Count numb ...
- spring boot 整合mapreduce运行的ClassNotFoundException
问题 一个wordcount运行总是报错 java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.hadoop. ...
- openjudge 和为给定数(二分答案)
嗯... 题目链接:http://noi.openjudge.cn/ch0111/07/ 这道题是一道不太明显,但很好二分的二分答案的一道题... 首先排序(二分要满足单调性),然后枚举每一个数,在[ ...
- 牛客网Sql
牛客网Sql: 1.查询最晚入职的员工信息 select * from employees where hire_date =(select max(hire_date) from employee ...
- 字符流---Day32
时隔多久,我又回来写博客了,最近忙于两个课设,五周,搞得头发都不知道掉了多少根了,还没成为程序员就开始掉了,等我成为一名程序员的时候岂不是要秃头了,IT界的人会不会帮我当成大佬了,哈哈哈哈,希望我以后 ...
- SpringBoot与Lombok
Lombok 在项目中使用Lombok可以减少很多重复代码的书写.具体详细资料可以浏览 https://blog.csdn.net/motui/article/details/79012846 一.引 ...