Mybatis基础:增删改查、模糊查询、多条件查询

简介: Mybatis基础:增删改查、模糊查询、多条件查询http://www.bieryun.com/3132.html 1、新建测试数据库,根据实体类属性创建 2、实体类 [java] view plain copy package com.

Mybatis基础:增删改查、模糊查询、多条件查询http://www.bieryun.com/3132.html


1、新建测试数据库,根据实体类属性创建

2、实体类

[java] view plain copy

  1. package com.entity;
  2.  
  3. /**
  4.  * 数据库实体类
  5.  * Created by lvjun on 2018-04-12.
  6.  */
  7. public class Category {
  8.     private int id;
  9.     private String name;
  10.  
  11.     public int getId() {
  12.         return id;
  13.     }
  14.  
  15.     public void setId(int id) {
  16.         this.id = id;
  17.     }
  18.  
  19.     public String getName() {
  20.         return name;
  21.     }
  22.  
  23.     public void setName(String name) {
  24.         this.name = name;
  25.     }
  26.  
  27.     //显示中文
  28.     @Override
  29.     public String toString() {
  30.         return "Category{" +
  31.                 "id=" + id +
  32.                 ", name='" + name + '\'' +
  33.                 '}';
  34.     }
  35. }

3、配置文件Category.xml

[html] view plain copy

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3.         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4.         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5.  
  6. <mapper namespace="com.entity">
  7.     <!--列表-->
  8.     <select id="listCategory" resultType="Category">
  9.         select * from   category
  10.     </select>
  11.     <!--删除-->
  12.     <delete id="deleteCategory" parameterType="Category">
  13.         delete from category where id= #{id}
  14.     </delete>
  15.     <!--查询单个-->
  16.     <select id="getCategory" parameterType="_int" resultType="Category">
  17.         select * from   category  where id= #{id}
  18.     </select>
  19.     <!--修改-->
  20.     <update id="updateCategory" parameterType="Category">
  21.         update category set name=#{name} where id=#{id}
  22.     </update>
  23.     <!--添加-->
  24.     <insert id="addCategory" parameterType="Category">
  25.         insert into category ( name ) values (#{name})
  26.     </insert>
  27.     <!--模糊查询-->
  28.     <select id="listCategoryByName" parameterType="string" resultType="Category">
  29.         select * from   category  where name like concat('%',#{0},'%')
  30.     </select>
  31.     <!--多条件查询-->
  32.     <select id="listCategoryByIdAndName" resultType="Category">
  33.         select * from category
  34.         <where>
  35.             <if test="id!=null">
  36.                 and id > #{id}
  37.             </if>
  38.             <if test="name!=null">
  39.                 and name like concat('%',#{name},'%')
  40.             </if>
  41.         </where>
  42.     </select>
  43.  
  44. </mapper>

4、配置文件mybatis-config.xml

[html] view plain copy

  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.  
  6. <configuration>
  7.     <typeAliases>
  8.         <package name="com.entity"/>
  9.     </typeAliases>
  10.     <environments default="development">
  11.         <environment id="development">
  12.             <transactionManager type="JDBC"/>
  13.             <dataSource type="POOLED">
  14.                 <property name="driver" value="com.mysql.jdbc.Driver"/>
  15.                 <property name="url" value="jdbc:mysql://localhost:3306/school?characterEncoding=UTF-8"/>
  16.                 <property name="username" value="root"/>
  17.                 <property name="password" value="1234"/>
  18.             </dataSource>
  19.         </environment>
  20.     </environments>
  21.     <mappers>
  22.         <mapper resource="Category.xml"/>
  23.     </mappers>
  24. </configuration>

5、测试类

[java] view plain copy

  1. package com.lvjun;
  2.  
  3.  
  4. import com.entity.Category;
  5. import org.apache.ibatis.io.Resources;
  6. import org.apache.ibatis.session.SqlSession;
  7. import org.apache.ibatis.session.SqlSessionFactory;
  8. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  9.  
  10. import java.io.IOException;
  11. import java.io.InputStream;
  12. import java.util.List;
  13.  
  14.  
  15. /**
  16.  * 查询列表
  17.  * Created by lvjun on 2018-04-12.
  18.  */
  19. public class TestSelectList {
  20.  
  21.     public static void main(String[] args) throws IOException {
  22.         String resource = "mybatis-config.xml";
  23.         InputStream inputStream = Resources.getResourceAsStream(resource);
  24.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  25.         SqlSession session = sqlSessionFactory.openSession();
  26.  
  27.         List<Category> cs = session.selectList("listCategory");
  28.         for (Category c : cs) {
  29.             System.out.println(c.getId()+"  "+c.getName());
  30.          }
  31.  
  32.     }
  33. }

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import com.entity.Category;
  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.  
  9. import java.io.IOException;
  10. import java.io.InputStream;
  11. import java.util.List;
  12.  
  13. /**
  14.  * 查询一条记录
  15.  * Created by lvjun on 2018-04-12.
  16.  */
  17. public class TestSelectOne {
  18.  
  19.     public static void main(String[] args) throws IOException {
  20.         String resource = "mybatis-config.xml";
  21.         InputStream inputStream = Resources.getResourceAsStream(resource);
  22.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  23.         SqlSession session = sqlSessionFactory.openSession();
  24.  
  25.         Category c = session.selectOne("getCategory"3);
  26.         System.out.println(c.getId()+"  "+c.getName());
  27.         session.commit();
  28.         session.close();
  29.  
  30.     }
  31.  
  32. }

 

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import com.entity.Category;
  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.  
  9. import java.io.IOException;
  10. import java.io.InputStream;
  11. import java.util.List;
  12.  
  13. /**
  14.  * 模糊查询
  15.  * Created by lvjun on 2018-04-12.
  16.  */
  17. public class TestSelectLike {
  18.  
  19.     public static void main(String[] args) throws IOException {
  20.         String resource = "mybatis-config.xml";
  21.         InputStream inputStream = Resources.getResourceAsStream(resource);
  22.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  23.         SqlSession session = sqlSessionFactory.openSession();
  24.  
  25.         List<Category> cs = session.selectList("listCategoryByName""win");
  26.         for (Category c : cs) {
  27.             System.out.println(c.getId()+"  "+c.getName());
  28.         }
  29.  
  30.         session.commit();
  31.         session.close();
  32.  
  33.     }
  34.  
  35. }

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import java.io.IOException;
  4. import java.io.InputStream;
  5. import java.util.HashMap;
  6. import java.util.List;
  7. import java.util.Map;
  8.  
  9. import com.entity.Category;
  10.  
  11. import org.apache.ibatis.io.Resources;
  12. import org.apache.ibatis.session.SqlSession;
  13. import org.apache.ibatis.session.SqlSessionFactory;
  14. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  15.  
  16. /**
  17.  * 多条件查询
  18.  * Created by lvjun on 2018-04-12.
  19.  */
  20. public class TestSelectToLike {
  21.     public static void main(String[] args) throws IOException {
  22.         String resource = "mybatis-config.xml";
  23.         InputStream inputStream = Resources.getResourceAsStream(resource);
  24.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  25.         SqlSession session = sqlSessionFactory.openSession();
  26.  
  27.         Map<String, Object> params = new HashMap<>();
  28.         params.put("id"3); //条件查询
  29.         params.put("name""wi");
  30.  
  31.         List<Category> cs = session.selectList("listCategoryByIdAndName", params);
  32.         for (Category c : cs) {
  33.             System.out.println(c.getId()+"  "+c.getName());
  34.         }
  35.  
  36.         session.commit();
  37.         session.close();
  38.  
  39.     }
  40. }

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import com.entity.Category;
  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.  
  9. import java.io.IOException;
  10. import java.io.InputStream;
  11. import java.util.List;
  12.  
  13.  
  14. /**
  15.  * 修改记录
  16.  * Created by lvjun on 2018-04-12.
  17.  */
  18. public class TestUpdate {
  19.     public static void main(String[] args) throws IOException {
  20.         String resource = "mybatis-config.xml";
  21.         InputStream inputStream = Resources.getResourceAsStream(resource);
  22.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  23.         SqlSession session = sqlSessionFactory.openSession();
  24.  
  25.         Category c = session.selectOne("getCategory"2);
  26.         c.setName("Android 8");
  27.         session.update("updateCategory", c);
  28.  
  29.         listAll(session);
  30.  
  31.         session.commit();
  32.         session.close();
  33.  
  34.     }
  35.  
  36.     private static void listAll(SqlSession session) {
  37.         List<Category> cs = session.selectList("listCategory");
  38.         for (Category c : cs) {
  39.             System.out.println(c.getId()+"  "+c.getName());
  40.         }
  41.     }
  42. }

 

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import com.entity.Category;
  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.  
  9. import java.io.IOException;
  10. import java.io.InputStream;
  11. import java.util.List;
  12.  
  13. /**
  14.  * 插入一条记录
  15.  * Created by lvjun on 2018-04-12.
  16.  */
  17. public class TestInsert {
  18.     public static void main(String[] args) throws IOException {
  19.         String resource = "mybatis-config.xml";
  20.         InputStream inputStream = Resources.getResourceAsStream(resource);
  21.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  22.         SqlSession session = sqlSessionFactory.openSession();
  23.  
  24.         Category c = new Category();
  25.         c.setName("新增加的数据");
  26.         session.insert("addCategory", c);
  27.  
  28.         listAll(session);
  29.  
  30.         session.commit();
  31.         session.close();
  32.  
  33.     }
  34.  
  35.     private static void listAll(SqlSession session) {
  36.         List<Category> cs = session.selectList("listCategory");
  37.         for (Category c : cs) {
  38.             System.out.println(c.getId()+"  "+c.getName());
  39.         }
  40.     }
  41. }

 

[java] view plain copy

  1. package com.lvjun;
  2.  
  3. import com.entity.Category;
  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.  
  9. import java.io.IOException;
  10. import java.io.InputStream;
  11. import java.util.List;
  12.  
  13. /**
  14.  * 删除一条记录
  15.  * Created by lvjun on 2018-04-12.
  16.  */
  17. public class TestDeleteOne {
  18.     public static void main(String[] args) throws IOException {
  19.         String resource = "mybatis-config.xml";
  20.         InputStream inputStream = Resources.getResourceAsStream(resource);
  21.         SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  22.         SqlSession session = sqlSessionFactory.openSession();
  23.  
  24.         Category c = new Category();
  25.         c.setId(6);
  26.         session.delete("deleteCategory", c);
  27.  
  28.         listAll(session);
  29.  
  30.         session.commit();
  31.         session.close();
  32.  
  33.     }
  34.  
  35.     private static void listAll(SqlSession session) {
  36.         List<Category> cs = session.selectList("listCategory");
  37.         for (Category c : cs) {
  38.             System.out.println(c.getId()+"  "+c.getName());
  39.         }
  40.     }
  41.  
  42. }


相关文章
|
3月前
|
存储 Java 数据库连接
MyBatis-Plus 基础操作指南:实现高效的增删改查
MyBatis-Plus 基础操作指南:实现高效的增删改查
126 0
|
3月前
|
SQL Java 数据库连接
初识MyBatis(搭建MyBatis、简单增删改查、核心配置文件讲解及获取参数值)
初识MyBatis(搭建MyBatis、简单增删改查、核心配置文件讲解及获取参数值)
|
28天前
|
SQL JavaScript Java
springboot+springm vc+mybatis实现增删改查案例!
springboot+springm vc+mybatis实现增删改查案例!
23 0
|
4月前
|
SQL Java 数据库连接
Mybatis【Map传参与模糊查询】
Mybatis【Map传参与模糊查询】
|
3月前
|
SQL Java 数据库连接
用springboot mybatis写一个增删改查
用springboot mybatis写一个增删改查
23 0
|
2月前
|
XML Java 数据库连接
【JavaEE进阶】 MyBatis使用XML实现增删改查
【JavaEE进阶】 MyBatis使用XML实现增删改查
|
2月前
|
Java 关系型数据库 数据库连接
【JavaEE进阶】 MyBatis使用注解实现增删改查
【JavaEE进阶】 MyBatis使用注解实现增删改查
|
3月前
|
存储 前端开发 Java
JavaWeb:servlet+jsp+mybatis商品管理增删改查
商品管理通常包括增加(添加)、删除、修改和查询商品信息
43 1
JavaWeb:servlet+jsp+mybatis商品管理增删改查
|
3月前
|
SQL XML Java
一文彻底搞懂Mybatis系列(三)之mybatis完成增删改查CURD功能超级详细
一文彻底搞懂Mybatis系列(三)之mybatis完成增删改查CURD功能超级详细