MyBatis系列(四) MyBatis 增删改
前言
通过前几张的博文已经知道MyBatis是如何查询数据库中的数据,现在来介绍增(insert)删(delete)改(update)
增加
接口绑定文件定义一个增加方法,方法的返回值为long,在MyBatis中返回的是受影响行数。
public interface MusicImp {
public Long getinsertMusic(Music music);
}
SQL映射文件
<?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">
<mapper namespace="com.mybatis.dao.MusicImp"> <insert id="getinsertMusic" parameterType="com.mybatis.bean.Music">
INSERT INTO test
(id,name,music,musicurl)
VALUES
(#{id},#{name},#{music},#{musicurl});
</insert> </mapper>
测试类
public void test() throws IOException {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取SqlSession对象
SqlSession addSession = sqlSessionFactory.openSession();
try {
MusicImp musicImp = addSession.getMapper(MusicImp.class);
Music music = new Music(9,"沈宁","还有多少个十年",null);
long addlong =musicImp.getinsertMusic(music);
System.out.println(addlong);
addSession.commit();
} finally {
// TODO: handle finally clause
addSession.close();
}
}
删除
接口绑定文件定义一个删除方法,方法的返回值为Boolean,Boolean只有两个值要么为真要么为假,使用此返回值可以判断是否删除成功。
public interface MusicImp {
public boolean getdelectMusic(int id);
}
SQL映射文件
<?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">
<mapper namespace="com.mybatis.dao.MusicImp"> <delete id="getdelectMusic" parameterType="com.mybatis.bean.Music">
delete from test
where id = #{id};
</delete> </mapper>
测试类
public void test() throws IOException {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取SqlSession对象
SqlSession delectSession = sqlSessionFactory.openSession();
try {
MusicImp musicImp = delectSession.getMapper(MusicImp.class);
boolean deleteboolean = musicImp.getdelectMusic(7);
System.out.println(deleteboolean);
delectSession.commit();
} finally {
// TODO: handle finally clause
delectSession.close();
}
}
修改
接口绑定文件定义一个修改方法,方法的返回值为Boolean,Boolean只有两个值要么为真要么为假,使用此返回值可以判断是否删除成功。
public interface MusicImp {
public boolean getupdateMusic(@Param("musicurl")String musicurl,@Param("id")String id);
}
SQL映射文件
<?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">
<mapper namespace="com.mybatis.dao.MusicImp"> <update id="getupdateMusic" parameterType="com.mybatis.bean.Music">
update test set musicurl = #{musicurl}
where id = #{id};
</update> </mapper>
测试类
public void test() throws IOException {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取SqlSession对象
SqlSession updateSession = sqlSessionFactory.openSession();
try {
MusicImp musicImp = updateSession.getMapper(MusicImp.class);
boolean updatemusic = musicImp.getupdateMusic
("http://music.163.com/song/media/outer/url?id=392897.mp3", "5");
if (updatemusic) {
System.out.println("更新成功");
} else {
System.out.println("更新失败");
}
updateSession.commit();
} finally {
updateSession.close();
}
}
MyBatis系列(四) MyBatis 增删改的更多相关文章
- MyBatis系列四 之 智能标签进行查询语句的拼接
MyBatis系列四 之 智能标签进行查询语句的拼接 使用Foreach进行多条件查询 1.1 foreach使用数组进行多条件查询 在MyBatis的映射文件中进行如下配置 <!--根据数组进 ...
- Mybatis实现数据的增删改查
Mybatis实现数据的增删改查 1.项目结构(使用maven创建项目) 2.App.java package com.GetcharZp.MyBatisStudy; import java.io.I ...
- Javascript数组系列五之增删改和强大的 splice()
今天是我们介绍数组系列文章的第五篇,也是我们数组系列的最后一篇文章,只是数据系列的结束,所以大家不用担心,我们会持续的更新干货文章. 生命不息,更新不止! 今天我们就不那么多废话了,直接干货开始. 我 ...
- SQLite 入门教程(四)增删改查,有讲究 (转)
转于: SQLite 入门教程(四)增删改查,有讲究 一.插入数据 INSERT INTO 表(列...) VALUES(值...) 根据前面几篇的内容,我们可以很轻送的创建一个数据表,并向其中插入一 ...
- MyBatis学习之简单增删改查操作、MyBatis存储过程、MyBatis分页、MyBatis一对一、MyBatis一对多
一.用到的实体类如下: Student.java package com.company.entity; import java.io.Serializable; import java.util.D ...
- MyBatis学习--简单的增删改查
jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: Public static void main(String[] args) ...
- SSM-MyBatis-02:Mybatis最基础的增删改查(查全部和查单独一个)
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 继续上次的开始,这次记录的是增删改查,上次重复过的代码不做过多解释 首先先创建mysql的表和实体类Book ...
- Mybatis实现部门表增删改查以及排序
废话不说,直接开门见山! 需要在WebContent下的lib下导入两个包 mybatis-3.2.5.jar ojdbc6.jar package com.xdl.entity; import ja ...
- MyBatis映射文件1(增删改、insert获取自增主键值)
增删改 Mybatis为我们提供了<insert>.<update>.<delete>标签来对应增删改操作 在接口中写增删改的抽象方法 void addEmp(Em ...
- Mybatis框架二:增删改查
这里是搭建框架和准备数据: http://www.cnblogs.com/xuyiqing/p/8600888.html 实现增删改查功能: 测试类: package junit; import ja ...
随机推荐
- Typings移除Deprecated Warning
使用TypeScript进行开发中,经常遇到如下的Deprecated Warning.虽然没有实际影响,但看多了,确实挺烦. 要想消除这些Warning,需要以下几个步骤: 步骤一,确认Warnin ...
- Intellij IDEA搭建JSP+Tomcat开发环境
1.新建项目 然后填入项目名称和选择项目路径,填完点击完成. 2.添加WEB框架 别问我为什么不一开始就直接新建WEB框架,因为我也是看的别人的教程0.0 不过还遇到了一些新问题,后面会讲到 3.配置 ...
- spring boot使用注解的方式引入mybatis的SqlSessionDaoSupport
出现这个问题, 说明一点, 我对spring的注解方式的配置只是知道一个皮毛. 没有深入理解. 有时间要把这部分充充电 package com.zhike.qizhi.common.dao; impo ...
- 菜鸟手把手学Shiro之shiro认证流程
一.使用的spring boot +mybatis-plus+shiro+maven来搭建项目框架 <!--shiro--> <dependency> <groupId& ...
- SpringBoot 源码解析 (八)----- Spring Boot 精髓:事务源码解析
本篇来讲一下SpringBoot是怎么自动开启事务的,我们先来回顾一下以前SSM中是如何使用事务的 SSM使用事务 导入JDBC依赖包 众所周知,凡是需要跟数据库打交道的,基本上都要添加jdbc的依赖 ...
- Vue_声明周期
Vue生命周期 在vue2.0的时候,声明钩子发生了改变,具体有八个 <!-- HTML部分 --> <div id="app"> <div>{ ...
- Handler+Looper+MessageQueue深入详解
概述:Android中的异步处理机制由四部分组成:Handler+Looper+MessageQueue+message,用于实现线程间的通信. 用到的概念: Handler: 主要作用是发送消息和处 ...
- axios 请求二次封装
/** * 封装get方法 * @param url * @param data * @returns {Promise} */ export function get(url, params) { ...
- 阿里云:uwsgi--配置出错 bind(): Address already in use [core/socket.c line 769]
按照网上配置nginx+uwsgi+django的文章,nginx启动成功,django启动也成功,单独用uwsgi --http :8000 命令启动uwsgi也成功.使用uwsgi --sock ...
- html——标签基础
img标签:使用 src="xxx" 来链接图片 当图片显示不出来的时候 显示alt 中定义的内容 当图片显示了出来 鼠标移动到图片上的时候 显示的是 title 中定义的 ...