MyBatis(2.1) 增删改查 mysql java
增删改查
- 1.查询数据
- 2.插入
- 3.更改
- 4.删除
- 5.总代码
1.查询数据
(1)在UserMapper.xml文件中添加
<select id="findByName" resultType="User">SELECT * FROM t_user WHERE name LIKE CONCAT(#{name}, "%");</select>
(2)在UserMapper.java接口中添加
List<User> findByName(String name);
(3)在TestUserMapper.java中添加
@Testpublic void testfindByName(){String name = "王";List<User> users = userMapper.findByName(name);if (users.size() > 0){users.forEach(user -> System.out.println(user));} else {System.out.println("姓名为[" + name + "]的记录为找到。");}}
2.插入
(1)在UserMapper.xml文件中添加
(2)在UserMapper.java接口中添加
(3)在TestUserMapper.java中添加
3.更改
(1)在UserMapper.xml文件中添加
(2)在UserMapper.java接口中添加
(3)在TestUserMapper.java中添加
4.删除
(1)在UserMapper.xml文件中添加
(2)在UserMapper.java接口中添加
(3)在TestUserMapper.java中添加
5.总代码
UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="net.lzz.mybatis.mapper.UserMapper"><resultMap id="UserMap" type="User"><result column="id" property="id"/><result column="name" property="name"/><result column="age" property="age"/><result column="address" property="address"/></resultMap><select id="findById" parameterType="int" resultType="User">SELECT * FROM t_user WHERE id = #{id};</select><select id="findAll" resultMap="UserMap">SELECT * FROM t_user;</select><select id="findByName" resultType="User">SELECT * FROM t_user WHERE name LIKE CONCAT(#{name}, "%");</select><insert id="insert" parameterType="User"useGeneratedKeys="true" keyProperty="id">INSERT INTO t_user(name, age, address)VALUES(#{name}, #{age}, #{address})</insert><update id="update" parameterType="User">UPDATE t_user SET name = #{name}, age = #{age},address = #{address} WHERE id = #{id};</update><delete id="deleteById" parameterType="int">DELETE FROM t_user WHERE id = #{id};</delete></mapper>
UserMapper.java
package net.lzz.mybatis.mapper;import net.lzz.mybatis.bean.User;import java.util.List;public interface UserMapper {// @Select("SELECT * FROM t_user WHERE id = #{id};")User findById (int id);
// @Select("SELECT * FROM t_user;")List<User> findAll();List<User> findByName(String name);int insert(User user);int update(User user);int deleteById(int id);
}
TestUserMapper.java
package net.lzz.mybatis.mapper;import net.lzz.mybatis.bean.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;import java.io.IOException;
import java.io.Reader;
import java.util.List;public class TestUserMapper {private SqlSession sqlSession; // SQL会话private UserMapper userMapper; // 用户映射器@Beforepublic void init() {try {// 读取MyBatis配置文件作为字符输入流Reader reader = Resources.getResourceAsReader("mybatis-config.xml");// 基于MyBatis配置文件构建SQL会话工厂SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);// 利用SQL会话工厂获取SQL会话sqlSession = factory.openSession();// 利用SQL会话获取用户映射器对象userMapper = sqlSession.getMapper(UserMapper.class);// 提示用户SQL会话对象创建成功System.out.println("sqlSession对象已创建。");} catch (IOException e) {e.printStackTrace();}}@Testpublic void testupdate(){int id = 4;User user = userMapper.findById(id);System.out.println("更新前的记录:" + user);user.setName("么么哒");user.setAge(18);user.setAddress("上海北门桥2号");int count = userMapper.update(user);sqlSession.commit();if (count > 0){System.out.println("更新成功!");System.out.println("更新后记录:" + userMapper.findById(id));} else {System.out.println("更新失败!");}}@Testpublic void testFindById() {int id = 1;User user = userMapper.findById(id);if (user != null) {System.out.println(user);} else {System.out.println("编号为[" + id + "]的用户未找到。");}}@Testpublic void testFindAll() {List<User> users = userMapper.findAll();users.forEach(user -> System.out.println(user));}@Testpublic void testfindByName(){String name = "王";List<User> users = userMapper.findByName(name);if (users.size() > 0){users.forEach(user -> System.out.println(user));} else {System.out.println("姓名为[" + name + "]的记录为找到。");}}@Testpublic void testInsert(){User user = new User( );user.setName("王雨涵");user.setAge( 30) ;user.setAddress("古蔺县郎酒厂");int count = userMapper.insert(user);sqlSession.commit();//提交数据库操作if (count > 0) {System.out.println("记录插入成功!");System.out.println("插入的新记录:"+ user);}else {System.out.println("记录插入失败!");}
}@Test
public void testDeleteById(){int id = 4;User user = userMapper.findById(id) ;System.out.println("待删除的记录:"+ user);userMapper.deleteById(id);sqlSession.commit();//提交数据库操作System.out.println("编号为["+ id + "]的记录删除成功!");user = userMapper.findById(id);if (user != null) {System.out.println(user) ;}else {System.out.println("编号为[" + id +"]的用户未找到。");}
}@Afterpublic void destroy() {// 关闭SQL会话sqlSession.close();// 提示用户SQL会话对象关闭System.out.println("sqlSession对象已关闭。");}
}
MyBatis(2.1) 增删改查 mysql java相关推荐
- Mybatis基础:增删改查、模糊查询、多条件查询
Mybatis基础:增删改查.模糊查询.多条件查询http://www.bieryun.com/3132.html 1.新建测试数据库,根据实体类属性创建 2.实体类 [java] view plai ...
- 数据库的操作 增删改查 mysql
数据库的操作 增删改查 mysql 登陆数据库 查看全部的数据库 系统提供的库,除了 test 是给我们练手的 其它的不要碰 mysql库,保存了系统重要内容,比如帐户 root帐户的用户名,密码,就 ...
- myBatis 简单的增删改查
myBatis 简单的增删改查 前面已经讲到用接口的方式编程.这种方式,要注意的一个地方就是.在User.xml 的配置文件中, mapper namespace="com.fjh.inte ...
- 【Mybatis 之应用篇】1_Mybatis简介、第一个Mybatis程序和增删改查在Mybatis中的使用方式
文章目录 Mybatis 一.简介 1.持久化 2.持久层 3.为什么需要Mybatis? 二.第一个Mybatis程序 1.创建一个数据库 2.配置pom.xml文件 3.创建实体类 4.创建一个M ...
- mybatis教程--实现增删改查的入门教程
1 开发环境 jdk1.7.0_72 eclipse:eclipse-3.7-indigo mysql:mysql5.1 1.1 创建数据库 先导入sql_table.sql,再导入sql_data. ...
- MyBatis批量的增删改查操作
本文转载至http://blog.csdn.net/mahoking 前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作.前文地址:http://blog.csdn.net/m ...
- SpringBoot+mybatis+postgreSQL+thymeleaf增删改查
本篇是用SpringBoot搭建一个增删改查的demo,编辑器是idea,适合初学者学习.源码在GitHub上,https://github.com/jiangttian/springboot/tre ...
- 数据库创建、增删改查、java连接数据库
数据库 1.数据库类型 1.1.MySQL[市面上大多数用的,开源] 1.2.Oracle[付费] 1.3.SQLServer[微软体系下的] 1.4.PGSQL 2.MySQL数据库安装 2.1.解 ...
- SpringBoot+Mybatis+thymeleaf实现增删改查
一.今天用SpringBoot整合thymeleaf做一套增删改查 1.导入依赖 <dependency><groupId>org.mybatis.spring.boot< ...
最新文章
- go var type 互转_Go语言学习笔记(第九章) 结构体
- Linux中SysRq的使用[zt]
- rockMongo时区警告的解决
- 杭电1789贪心java实现
- 合并两个有序数组Python解法
- 如何快速部署一个Elasticsearch集群?
- Bash脚本删除相对路径下小于指定大小的文件
- 按键精灵手机版去除广告XPosed模块插件
- 人工智能为什么要从本科生抓起?
- CCF NOI1042 发奖学金
- Chrome浏览器Network面板http请求时间分析
- plc vb c语言编程,[转载]VB6.0在PLC和上位机通讯中的应用【工控老鬼分享】
- Android手机获取外网ip(by 星空武哥)
- 2 月份看了 17 本书,我只推荐这 8 本!
- 毕业设计-基于微信小程序的校园二手书籍交易系统
- 读取手机内存和SD卡的空间大小
- 微信公众号快速增粉攻略详解
- 北京东物流,南顺丰速运
- MTU问题导致大数据包出不去。
- 赚翻了,快速带你学会Python爬虫接私单