mybatis快速入门-注解版

server/2024/11/15 4:52:21/
  • mybatis 使用注解,简化 xml 配置,汲及到动态 sql 或是多表查询,还是使用 xml 映射文件配置编写。(企业工作中,几乎全是 xml 配置,xml 的 sql 使用注解方式少,而类引用注解方式)。

注解

  • @Select():查询
  • @Insert():添加
  • @Update():修改
  • @Delete():删除

mybatisxml_6">mybatis.xml配置文件

<mappers><!-- 引入dao层接口所在文字,只需要到包的位置,不需要指定文件--><package name="dao/mapper"/></mappers>

查询

dao层接口

java">public interface BookModelDao {//Annotation//@Select():查询//@Insert():添加//@Update():修改//@Delete():删除//直接在抽象方法上注解约束,并写sql语句,调用抽象方法时,直接执行sql语句@Select("select * from book")List<BookModel>  findBookByAnnotation();
}

测试

java">//在main中调用findBookByAnnotation();
//方法public static void findBookByAnnotation() throws Exception{//引入mybatis.xml配置文件InputStream is = Resources.getResourceAsStream("mybatis.xml");//创建会话工厂SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(is);//创建sql会话SqlSession sqlSession = ssf.openSession();//获取dao层sql语句所在的类BookModelDao mapper = sqlSession.getMapper(BookModelDao.class);//调用抽象方法,执行sql语句,获取返回值List<BookModel> list = mapper.findBookByAnnotation();for (BookModel book : list){System.out.println(book);}sqlSession.close();}

添加

dao层接口

java">	//#{} 传入参数,名称可随意,与数据库字段名相同增加可读性@Insert("insert into book(name,price,num) values(#{name},#{price},#{num})")int insertBookByAnnotation(BookModel bookModel);

测试

java">//main中调用//创建实例BookModel bookModel = new BookModel("海底世界", 32, 1);insertBookByAnnotation(bookModel);//方法
public static void insertBookByAnnotation(BookModel bookModel) throws Exception{/*//引入mybatis.xml配置文件InputStream is = Resources.getResourceAsStream("mybatis.xml");//创建会话工厂SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(is);//创建sql会话SqlSession sqlSession = ssf.openSession()*///JDBCUtil自定义封装方法:直接获取sql会话SqlSession sqlSession = JDBCUtil.getSqlSession();//接口绑定BookModelDao mapper = sqlSession.getMapper(BookModelDao.class);//调用添加方法,执行成功sql会返回执行的语句行数int row = mapper.insertBookByAnnotation(bookModel);//添加,删除,修改,都要commit,提交到数据库,查询可以省略//如果不提交,相当于执行在缓存池中,并不会更改数据库中的数据sqlSession.commit();System.out.println(row > 0 ? "添加成功" : "添加失败");}

mybatis快速入门基础篇
https://blog.csdn.net/weixin_44201223/article/details/137816871
mybatis快速入门进阶篇
https://blog.csdn.net/weixin_44201223/article/details/137865786
mybatis快速入门高级篇
https://blog.csdn.net/weixin_44201223/article/details/137912538


http://www.ppmy.cn/server/15143.html

相关文章

尾矿库安全监测:仪器埋设与维护的关键要求

尾矿库作为矿业生产的重要组成部分&#xff0c;其安全运营对于保障人员生命安全和环境保护具有至关重要的意义。为了确保尾矿库的安全运行&#xff0c;及时发现潜在的安全隐患&#xff0c;必须采取有效的安全监测措施。本文将重点探讨尾矿库安全监测仪器的埋设及维护要求。 一、…

Centos7 的 Open Stack T 版搭建流程 --- (二)配置 SQL 数据库

配置 SQL 数据库 文章目录 配置 SQL 数据库&#xff08;1&#xff09;安装 MariaDB、MariaDB服务器 和 Python 2 PyMySQLcontroller &#xff08;2&#xff09;配置数据库文件controller &#xff08;1&#xff09;安装 MariaDB、MariaDB服务器 和 Python 2 PyMySQL controlle…

FANUC机器人socket通讯硬件配置

一、添加机器人选配包 Fanuc机器人要进行socket通讯&#xff0c;需要有机器人通讯的选配包&#xff0c;1A05B-2600-R648 User Socket Msg&#xff0c;1A05B-2600-R632 KAREL&#xff0c;1A05B-2600-R566 KAREL Diagnostic&#xff0c;1A05B-2600-J971 KAREL Use Sprt FCTN。 二…

在IDEA中使用.env文件配置信息

在软件开发过程中&#xff0c;经常需要使用配置信息来指定应用程序的行为&#xff0c;例如数据库连接参数、API密钥等。而将这些敏感信息硬编码在代码中是不安全的&#xff0c;因此通常会将其存储在配置文件中。 .env文件是一种常见的配置文件格式&#xff0c;它可以存储键值对…

新恒盛110kV变电站智能辅助系统综合监控平台+道巡检机器人

江苏晋控装备新恒盛化工有限公司是晋能控股装备制造集团有限公司绝对控股的化工企业&#xff0c;公司位于江苏省新沂市。新恒盛公司40•60搬迁项目在江苏省新沂市经济开发区化工产业集聚区苏化片区建设&#xff0c;总投资为56.64亿元&#xff0c;该项目是晋能控股装备制造集团重…

[C++][算法基础]线性同余方程(扩展欧几里得算法)

给定 &#x1d45b; 组数据 &#x1d44e;&#x1d456;,&#x1d44f;&#x1d456;,&#x1d45a;&#x1d456;&#xff0c;对于每组数求出一个 &#x1d465;&#x1d456;&#xff0c;使其满足 &#x1d44e;&#x1d456;&#x1d465;&#x1d456; ≡ &#x1d44f;&am…

【数据结构】栈和队列(链表模拟队列)

学习本章节必须具备 单链表的前置知识&#xff0c; 建议提前学习&#xff1a;点击链接学习&#xff1a;单链表各种功能函数 细节 详解 本章节是学习用 单链表模拟队列 1. 单链表实现队列 思路如下 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数…

2024年地质测绘、遥感与地理信息技术国际学术会议(GSRSGIT2024)

2024年地质测绘、遥感与地理信息技术国际学术会议(GSRSGIT2024) 会议简介 2024年地质测绘、遥感与地理信息技术国际学术会议(GSRSGIT2024)将在北京隆重举行。本次大会将汇集国内外地质、测绘、遥感、地理信息技术等领域的专家学者&#xff0c;共同探讨行业前沿技术和发展趋势…