首页 >> 大全

MyBatis入门九:Mybatis数据插入、修改、删除一:插入数据;

2023-12-20 大全 34 作者:考证青年

本篇博客内容是:向表中插入数据。

注:JDBC是java提供的一个操作数据库的API;是一个持久层ORM框架,底层是对JDBC的封装。对JDBC操作数据库做了一系列优化。即为了实现某个功能,JDBC和在实际编码上是不同的,但是的背后都是JDBC在做支撑啦。(详细内容可以参考:是什么以及和JDBC的关系?,能够帮助梳理清楚和JDBC的关系)

PS:一旦设计数据的写(插入、修改、删除),就必须要涉及到数据库的事务:封装了JDBC的事务控制机制,操作起来十分方便。

(1)java程序,都是客户端;

(2)数据库事务可以参考MySQL综合应用二:事务机制一:事务的基本介绍等文章;

目录

(0)本篇博客主要内容是,插入数据:插入数据方法的简介

(1)先在goods.xml中编写【插入的SQL标签】

mybatis删除表数据__mybatis删除数据库语句

(2)然后,测试 &运行结果

(0)本篇博客主要内容是,插入数据:插入数据方法的简介

(1)先在goods.xml中编写【插入的SQL标签】

发现,向表中插入数据,标签的(即参数类型)就是Goods实体类类型;

(2)然后,测试 &运行结果

package com.imooc.mybatis;import com.imooc.mybatis.dto.GoodsDTO;
import com.imooc.mybatis.entity.Goods;
import com.imooc.mybatis.utils.MyBatisUtils;
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.Test;import java.io.IOException;
import java.io.Reader;
import java.sql.Connection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;/*** JUnit单元测试类*/
public class MyBatisTestor {@Testpublic void testInsert() throws Exception {SqlSession session = null;try {session = MyBatisUtils.openSession();Goods goods = new Goods();goods.setTitle("测试商品");goods.setSubTitle("测试子标题");goods.setOriginalCost(150f);goods.setCurrentPrice(100f);goods.setDiscount(0.67f);goods.setIsFreeDelivery(1);goods.setCategoryId(43);// insert()方法返回一个int类型的返回值:代表本次成功插入的记录总数;// (因为这儿我们不是批量插入,所以如果插入成功,num=1)int num = session.insert("goods.insert",goods);session.commit();// commit()方法:提交事务数据。System.out.println(goods.getGoodsId());} catch (Exception e) {if (session != null){session.rollback();   // 如果程序出错,未能完整执行,则回滚事务。。。// PS:发现Mybatis封装后,事务控制在编码实现上简单了些}throw e;}finally {MyBatisUtils.closeSession(session);}}
}

说明:

(1)的方法说明

(2)发现,封装了JDBC的事务,编写起来更加的方便;

(3)子标签中的【 ()】自动将新插入数据的id号回填到Goods类对象中,这十分有利于后续的操作。

(4)不要忘了事务的提交和回滚控制;

运行结果:

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了