最简单的mybatis增删改查样例 
Book.java

  1. package com.bookstore.app;
  2. import java.io.Serializable;
  3. public class Book implements Serializable {
  4. private static final long serialVersionUID = 233559895466038160L;
  5. private String isbn;
  6. private String name;
  7. private String price;
  8. public String getIsbn() {
  9. return isbn;
  10. }
  11. public void setIsbn(String isbn) {
  12. this.isbn = isbn;
  13. }
  14. public String getPrice() {
  15. return price;
  16. }
  17. public void setPrice(String price) {
  18. this.price = price;
  19. }
  20. public void setName(String name) {
  21. this.name = name;
  22. }
  23. public String getName() {
  24. return name;
  25. }
  26. @Override
  27. public String toString() {
  28. return "BookName: " + this.name + ", price: " + this.price;
  29. }
  30. }

mybatis-config.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <settings>
  7. <setting name="lazyLoadingEnabled" value="false" />
  8. </settings>
  9. <typeAliases>
  10. <typeAlias alias="Book" type="com.bookstore.app.Book" />
  11. </typeAliases>
  12. <environments default="development">
  13. <environment id="development">
  14. <transactionManager type="JDBC" />
  15. <dataSource type="POOLED">
  16. <property name="driver" value="com.mysql.jdbc.Driver" />
  17. <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
  18. <property name="username" value="root" />
  19. <property name="password" value="root" />
  20. </dataSource>
  21. </environment>
  22. </environments>
  23. <mappers>
  24. <mapper resource="com/bookstore/config/bookMapper.xml" />
  25. </mappers>
  26. </configuration>

bookMapper.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  4. <mapper namespace="com.bookstore.app.bookMapper">
  5. <select id="getBookByName" resultType="Book" parameterType="string">
  6. select *
  7. from book
  8. where name=#{name}
  9. </select>
  10. <insert id="insertBook" parameterType="Book">
  11. insert into book(isbn, name, price)
  12. value(#{isbn}, #{name}, #{price})
  13. </insert>
  14. <update id="updateBook" parameterType="Book">
  15. update book
  16. set
  17. name=#{name},
  18. price=#{price}
  19. where isbn=#{isbn}
  20. </update>
  21. <delete id="deleteBook" parameterType="String">
  22. delete from book where name=#{name}
  23. </delete>
  24. </mapper>

BookApp.java

    1. package com.bookstore.app;
    2. import java.io.IOException;
    3. import java.io.Reader;
    4. import org.apache.ibatis.io.Resources;
    5. import org.apache.ibatis.session.SqlSession;
    6. import org.apache.ibatis.session.SqlSessionFactory;
    7. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    8. public class BookApp {
    9. public static void main(String[] args) throws IOException {
    10. String resource = "com/bookstore/config/mybatis-config.xml";
    11. Reader reader = Resources.getResourceAsReader(resource);
    12. SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder()
    13. .build(reader);
    14. SqlSession session = sessionFactory.openSession();
    15. //查询
    16. Book book = (Book) session.selectOne(
    17. "com.bookstore.app.bookMapper.getBookByName", "Spring In Action");
    18. System.out.println(book.toString());
    19. //修改
    20. book.setName("Spring In Action 2ed Edition");
    21. book.setPrice("59");
    22. session.update("com.bookstore.app.bookMapper.updateBook", book);
    23. //插入
    24. Book newBook = new Book();
    25. newBook.setIsbn("ISBN978-7-121-10577-7");
    26. newBook.setName("人人都是产品经理");
    27. newBook.setPrice("45");
    28. session.insert("com.bookstore.app.bookMapper.insertBook", newBook);
    29. //删除
    30. session.delete("com.bookstore.app.bookMapper.deleteBook", "Struts In Action");
    31. session.commit();
    32. }
    33. }

最简单的mybatis增删改查样例的更多相关文章

  1. 【Mybatis】简单的mybatis增删改查模板

    简单的mybatis增删改查模板: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE map ...

  2. salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建

    VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的标签相对简单,如果需要深入了解VF相关知识以及标签, 可以通过以下链接查看或下载 ...

  3. MyBatis增删改查

    MyBatis的简介: MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...

  4. MyBatis增删改查模板

    1. 首先,和Spring整合一下 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=& ...

  5. 【转载】salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建

    salesforce 零基础开发入门学习(六)简单的数据增删改查页面的构建   VisualForce封装了很多的标签用来进行页面设计,本篇主要讲述简单的页面增删改查.使用的内容和设计到前台页面使用的 ...

  6. Mybatis增删改查,Demo整合

    第一步:MyBatis的Jar包引入mybatis-3.2.7.jarmysql-connector-java-5.1.8.jar MyBatis的pom.xml依赖 <dependencies ...

  7. Mybatis增删改查(CURD)

    前面的小节我们已经讲到用接口的方式编程.使用这种方式,需要注意的一个地方就是,在User.xml 配置文件中,mapper namespace="com.yiibai.mybatis.int ...

  8. SpringBoot+Mybatis增删改查实战

    简介 SpringBoot和Mybatis是啥请自行百度,作者这里也是花了几天时间入门了这个框架用来完成任务,并且也算符合要求的完成了任务,期间也各种百度但是没找到自己想要的那种简单易懂的教程,所以踩 ...

  9. springboot整合mybatis增删改查(四):完善增删改查及整合swgger2

    接下来就是完成增删改查的功能了,首先在config包下配置Druid数据连接池,在配置之前先把相关配置在application.preperties中完善 application.preperties ...

随机推荐

  1. Python结合Pywinauto 进行 Windows UI 自动化

    转:Python结合Pywinauto 进行 Windows UI 自动化 https://blog.csdn.net/z_johnny/article/details/52778064 说明:Pyw ...

  2. Linux 下忘记mysql 密码

    ERROR (): Access denied for user 'root'@'localhost' (using password: YES). 一.停止 mysql 数据库 /etc/init. ...

  3. UI UED设计

    Element: https://element.eleme.cn/#/zh-CN/guide/design

  4. 【SSM】Log4j 日志配置

    1.log4j.properties ### 配置根 ### # log4j.rootLogger = debug,console ,fileAppender,dailyRollingFile,ROL ...

  5. Codeforces Round #593 (Div. 2)D(螺旋形模拟)

    #define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;vector<int>po[100 ...

  6. kafka中常用API的简单JAVA代码

    通过之前<kafka分布式消息队列介绍以及集群安装>的介绍,对kafka有了初步的了解.本文主要讲述java代码中常用的操作. 准备:增加kafka依赖 <dependency> ...

  7. jquery中 $(xxx).each() 和 $.each()的区别,以及enter键一键登录

    1.$().each 在dom处理上面用的较多.如果页面有多个input标签类型为text,对于这时用$().each来处理多个text,例如: $("input[type=’text’]& ...

  8. 从零构建以太坊(Ethereum)智能合约到项目实战——第22章 玩转truffle framework 、Web3.js 框架

    P84 .1-玩转truffle framework.Web3.js 框架 内容介绍 truffle官方网站:https://truffleframework.com/ P85 .2-truffle ...

  9. 1007 Maximum Subsequence Sum (25分) 求最大连续区间和

    1007 Maximum Subsequence Sum (25分)   Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A ...

  10. c++中的运算符重载operator2(翁恺c++公开课[31-33]学习笔记)

    上一篇operator1中,大概说了下重载的基本用法,接下来对c++中常见的可重载运算符归一下类,说一下它们的返回值,讨论下较为复杂的运算符重载上的坑