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增删改查的更多相关文章

  1. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  2. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  3. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查

    系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...

  4. 通过Java代码实现对数据库的数据进行操作:增删改查

    在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao  xingming    xue ...

  5. Hibernate全套增删改查+分页

    1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...

  6. 使用 Json.Net 对Json文本进行 增删改查

    JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...

  7. yii2 增删改查

    自己总结的yii2 advanced 版本的简单的增删改查,希望对大家有所帮助 1.gii生成的actionCreate()方法中 获取插入语句的id $id = $model->attribu ...

  8. Batis-iBatis基本操作(增删改查)

    Batis-iBatis基本操作(增删改查) 时间 2014-04-10 17:55:20  CSDN博客 原文  http://blog.csdn.net/mazhaojuan/article/de ...

  9. JS组件系列——又一款MVVM组件:Vue(一:30分钟搞定前端增删改查)

    前言:关于Vue框架,好几个月之前就听说过,了解一项新技术之后,总是处于观望状态,一直在犹豫要不要系统学习下.正好最近有点空,就去官网了解了下,看上去还不错的一个组件,就抽空研究了下.最近园子里vue ...

  10. JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(一)

    前言:出于某种原因,需要学习下Knockout.js,这个组件很早前听说过,但一直没尝试使用,这两天学习了下,觉得它真心不错,双向绑定的机制简直太爽了.今天打算结合bootstrapTable和Kno ...

随机推荐

  1. 06-Docker-Image管理操作

    目录 06-Docker-Image管理操作 参考 镜像命名规范 镜像管理命令 1. 拉取推送 2. 查看操作 3. 本地删除 4. 创建标签 5. 导出导入 06-Docker-Image管理操作 ...

  2. 缓存验证Last-Modified和Etag的使用

    缓存工作示意图: 在http协议里面,数据的验证方式,主要有两个验证头:Last-Modified 和 Etag. Last-Modified 配合Last-Modified-Since或者If-Un ...

  3. 「NOIP2013」货车运输

    传送门 Luogu 解题思路 首先 \(\text{Kruskal}\) 一下,构造出一棵森林. 并查集还要用来判断连通性. 倍增 \(\text{LCA}\) 的时候顺便维护一下路径最小值即可. 细 ...

  4. C#加密解密(AES)-AESHelper

    原文地址:https://ken.io/note/csharp-aesencrypt using System; namespace Encrypt { public class AESHelper ...

  5. 5_2 木块问题(UVa101)<vector的使用>

    [背景] 在计算机科学中的很多地方都会使用简单,抽象的方法来做分析和实验验究.比如在早期的规划学和机器人学的人工智能研究就利用一个积木世界,让机械臂执行操作积木的任务. 在这个问题中,你将在确定的规则 ...

  6. linux理论知识点(用于考试)

    ps:为其十天左右的linux培训即将结束了,未雨绸缪,为了更好的通过之后的考试,提前多看些考试题和知识点.这是在chinaunix论坛看到的一个帖子,贴来分享. 原文地址:[http://bbs.c ...

  7. wx小程序笔记

    目录 p18 事件绑定1 p19 事件绑定2 btn p20+ view 相关,wxss,less,css 零基础玩转微信小程序[黑马程序员] https://www.bilibili.com/vid ...

  8. 【layui】提交表单

    1 <script type="text/javascript"> layui.use(['form', 'layer', 'jquery'], function () ...

  9. 中国社交电商最新展望,S-KOL-C正突围而出

    编辑 | 韩星 出品 | 于见(mpyujian) 通信技术.移动互联网的快速发展正加速国内电商平台的深度变革. 在这场以"社交"和"下沉市场"为关键词的电商之 ...

  10. matlab练习程序(传染病模型)

    最近新型冠状病毒疫情越来越严重了,待在家中没法出去,学习一下经典传染病模型. 这里总结了五个模型,分别是SI模型,SIS模型,SIR模型,SIRS模型,SEIR模型. 这几种模型的特点先介绍一下. 首 ...