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 ...
随机推荐
- SQL Server 作业的备份
轉發:https://www.cnblogs.com/Amaranthus/archive/2012/06/25/2561569.html 作业备份,不是备份数据库,是备份作业. DECLARE @j ...
- JavaScript的变量提升机制
变量提升 JavaScript的变量提升有两种,用var声明的变量以及用function声明的变量. 用var声明的变量 我们先来看下面这段代码,a的值是多少 代码1 console.log(a); ...
- IDEA 下的 github 创建提交与修改
本章假定你已经安装了 git 客户端,本文仅仅使用与 Mac 环境下,未在 Window下实验,但 IDEA 在 Window 和 Mac 下软件的使用方法是一致的. 1 配置账号 IDEA 需要配置 ...
- redis基本操作,基于StringRedisTemplate,存储,取值,设置超时时间,获取超时时间,插入list操作
@Autowired private StringRedisTemplate stringRedisTemplate; @GetMapping("/test") void test ...
- 转入软工后第一节java课的作业
这个作业,鸽了好久.本来大家都在中秋前发了,我摸摸索索加上各种缓慢的学习,终于是将他做完了. 做完之后,java最基本的输入输出功能都基本学习到了.下面附上代码: import java.util.* ...
- 迭代器对象numpy.nditer在数组上进行迭代——修改数组的值
nditer对象有另一个可选参数op_flags,默认情况下,nditer将视待迭代遍历的数组为只读对象(read-only),为了在遍历数组的同时,实现对数组元素值得修改,必须指定op_flags= ...
- 【PAT甲级】1042 Shuffling Machine (20 分)
题意: 输入洗牌次数K(<=20),输入54张牌每次洗入的位置(不是交换的位置),输出洗好的牌. AAAAAccepted code: #define HAVE_STRUCT_TIMESPEC ...
- C++11常用特性介绍——decltype关键字
一.decltype的意义 有时我们只想从表达式的类型推断出要定义的变量类型,但是不想用其值进行初始化的时候,C++11新标准引入了decltype类型说明符,它的作用是选择并返回操作数的数据类型,在 ...
- vue.js_①
前言: Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅易于上手, ...
- 「CF383C Propagating tree」
这应该属于一个比较麻烦的数据结构处理树上问题. 题目大意 给出一颗根节点编号为 \(1\) 的树,对于一个节点修改时在它的子树中对于深度奇偶性相同的节点加上这个权值,不同则减去这个值,单点查询. 分析 ...