您现在的位置是:首页 > 文章详情

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

日期:2018-04-15点击:452

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

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

2、实体类

[java] view plain copy

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

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. <mapper namespace="com.entity">
  6.     <!--列表-->
  7.     <select id="listCategory" resultType="Category">
  8.         select * from   category
  9.     </select>
  10.     <!--删除-->
  11.     <delete id="deleteCategory" parameterType="Category">
  12.         delete from category where id= #{id}
  13.     </delete>
  14.     <!--查询单个-->
  15.     <select id="getCategory" parameterType="_int" resultType="Category">
  16.         select * from   category  where id= #{id}
  17.     </select>
  18.     <!--修改-->
  19.     <update id="updateCategory" parameterType="Category">
  20.         update category set name=#{name} where id=#{id}
  21.     </update>
  22.     <!--添加-->
  23.     <insert id="addCategory" parameterType="Category">
  24.         insert into category ( name ) values (#{name})
  25.     </insert>
  26.     <!--模糊查询-->
  27.     <select id="listCategoryByName" parameterType="string" resultType="Category">
  28.         select * from   category  where name like concat('%',#{0},'%')
  29.     </select>
  30.     <!--多条件查询-->
  31.     <select id="listCategoryByIdAndName" resultType="Category">
  32.         select * from category
  33.         <where>
  34.             <if test="id!=null">
  35.                 and id > #{id}
  36.             </if>
  37.             <if test="name!=null">
  38.                 and name like concat('%',#{name},'%')
  39.             </if>
  40.         </where>
  41.     </select>
  42. </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. <configuration>
  6.     <typeAliases>
  7.         <package name="com.entity"/>
  8.     </typeAliases>
  9.     <environments default="development">
  10.         <environment id="development">
  11.             <transactionManager type="JDBC"/>
  12.             <dataSource type="POOLED">
  13.                 <property name="driver" value="com.mysql.jdbc.Driver"/>
  14.                 <property name="url" value="jdbc:mysql://localhost:3306/school?characterEncoding=UTF-8"/>
  15.                 <property name="username" value="root"/>
  16.                 <property name="password" value="1234"/>
  17.             </dataSource>
  18.         </environment>
  19.     </environments>
  20.     <mappers>
  21.         <mapper resource="Category.xml"/>
  22.     </mappers>
  23. </configuration>

5、测试类

[java] view plain copy

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

[java] view plain copy

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

 

[java] view plain copy

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

[java] view plain copy

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

[java] view plain copy

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

 

[java] view plain copy

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

 

[java] view plain copy

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

 

原文链接:https://yq.aliyun.com/articles/581872
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章