MyBatis的增删改查操作

</select>
<select id="selectStudentByName" resultType="StudentBean">
select * from student where name like ‘%‘ #{name} ‘%‘
</select>

<select id="selectStuByMap1" resultType="StudentBean">
<!-- 查询的参数是Map #{map的key} 使用的数据是key对应的value-->
select * from student where name like ‘%‘ #{name} ‘%‘ and age>#{age}
</select>

<select id="selectStuByMap2" resultType="StudentBean">
<!-- 查询的参数是Map #{map的key} 使用的数据是key对应的value
map的key是student,value是student对象-->
select * from student where name like ‘%‘ #{name} ‘%‘ and age > #{student.age}
</select>

<select id="selectStuByParameters1" resultType="StudentBean">
select * from student where name like ‘%‘ #{0} ‘%‘ and age > #{1}
</select>

<select id="selectStuByParameters2" resultType="StudentBean">
select * from student where name like ‘%‘ #{0} ‘%‘ and age > #{1.age}
</select>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
动态参数

/**
* 动态参数
*/
//mybatis 动态参数类似域jstl《c:》

//if拼接 sql语句要跟上 where 1 =1
List<StudentBean> selectStudentByIf(StudentBean student);

<select id="selectStudentByIf" resultType="StudentBean">
select * from student where 1=1
<if test="name!=null and name!=‘‘">
and name like ‘%‘ #{name} ‘%‘
</if>
<if test="age>0">
and age > #{age}
</if>
</select>

//不生成 1= 1 提高效率 自动在sql语句拼接的时候加上where 关键字
List<StudentBean> selectStudentByWhere(StudentBean student);

<select id="selectStudentByWhere" resultType="StudentBean">
select * from student
<where>
<if test="name!=null and name!=‘‘">
and name like ‘%‘ #{name} ‘%‘
</if>
<if test="age>0">
and age > #{age}
</if>
</where>
</select>

//多选一
List<StudentBean> selectStudentByChoose(StudentBean student);

<select id="selectStudentByChoose" resultType="StudentBean">
select * from student
<choose>
<when test="name!=null and name!=‘‘">
where name like ‘%‘ #{name} ‘%‘
</when>
<when test="age>0">
where age > #{age}
</when>
<otherwise>
where 1 = 2
</otherwise>
</choose>
</select>

List<StudentBean> selectStudentByForeachArray(int[] ids);

<select id="selectStudentByForeachArray" resultType="StudentBean">
select * from student
<if test="array!=null and array.length>0">
where id in
<foreach collection="array" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</if>
</select>

List<StudentBean> selectStudentByForeachList(List<Integer> ids);

<select id="selectStudentByForeachList" resultType="StudentBean">
select * from student
<if test="list!=null and list.size>0">
where id in
<foreach collection="list" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</if>
</select>

List<StudentBean> selectStudentByForeachStudent(List<StudentBean> students);

<select id="selectStudentByForeachStudent" resultType="StudentBean">
select * from student
<if test="list!=null and list.size>0">
where id in
<foreach collection="list" item="student" open="(" close=")" separator=",">
#{student.id}
</foreach>
</if>
</select>

List<StudentBean> selectStudentBySqlFragement();

<select id="selectStudentBySqlFragement" resultType="StudentBean">
select <include refid="fragement" /> student
</select>
<sql id="fragement"> * from</sql>

//统计一张表的总数据条数 分页的总条数
int selectStudentCount();

<select id="selectStudentCount" resultType="int">
select count(*) from student
</select>

<!-- 动态参数 -->
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103

---------------------

原文地址:https://www.cnblogs.com/hyhy904/p/11053822.html

时间: 2024-10-10 06:57:25

MyBatis的增删改查操作的相关文章

MyBatis基本增删改查操作

本文内容主要介绍单条记录的增删改查操作,MyBatis提供了很多完成单条记录的增删改查操作的API.本例主要讲述<UserMapper> UserMapper org.apache.ibatis.session.SqlSession.getMapper(Class<UserMapper> clazz)的使用.使用此API,我们需要创建UserMapper操作接口,函数名和MyBatis的User.xml配置文件中的操作id名对应. [转载使用,请注明出处:http://blog.c

MyBatis批量增删改查操作

前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作.前文地址:http://blog.csdn.net/mahoking/article/details/43673741 批量增加操作步骤 1. 在接口UserMapper中添加批量增加方法. /** * 批量增加操作 * @param users */ public void batchInsertUsers(List<User> users); 2.在User.xml中添加批量增加操作的配置. <!-- 批量增

MyBatis学习之简单增删改查操作、MyBatis存储过程、MyBatis分页、MyBatis一对一、MyBatis一对多

一.用到的实体类如下: Student.java [html] view plaincopy package com.company.entity; import java.io.Serializable; import java.util.Date; public class Student implements Serializable{ private static final long serialVersionUID = 1L; private int id; private Stri

Mybatis实现简单的数据库增删改查操作

Mybatis实现简单的数据库增删改查操作 框架:mybatis(3.5.2) 数据库:mysql 工具:idea 1.新建一个maven项目,在pom文件中添加mybatis依赖及MySQL依赖 <!-- mybatis核心依赖 --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId&g

Mybatis实现单表增删改查操作

mybatis是对持久层进行了封装.mybatis文档地址:https://mybatis.org/mybatis-3/zh/index.html 下面实现单表的增删改查操作. 1.新建maven项目命名为mybatis.并在pom.xml中引入相关依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"

mybatis实现增删改查

MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索.MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录.    MyBatis的前身是IBatis,也是一个使用很广的持久化框架.和hibernate对比,MyBatis更基础,要求使用者自己控制的东西更多

(转)SQLite数据库增删改查操作

原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n).char(n).d

Scala对MongoDB的增删改查操作

=========================================== 原文链接: Scala对MongoDB的增删改查操作 转载请注明出处! =========================================== 依赖环境:jdk1.8.Scala 2.12.idea mongodb Driver:3.1.1.注意,mongo for scala的驱动涉及多个jar(如下图),依赖于mongo-java-driver.jar 这里使用的sbt管理依赖,直接在bu

Java+MyEclipse+Tomcat (六)详解Servlet和DAO数据库增删改查操作

此篇文章主要讲述DAO.Java Bean和Servlet实现操作数据库,把链接数据库.数据库操作.前端界面显示分模块化实现.其中包括数据的CRUD增删改查操作,并通过一个常用的JSP网站前端模板界面进行描述.参考前文: Java+MyEclipse+Tomcat (一)配置过程及jsp网站开发入门 Java+MyEclipse+Tomcat (二)配置Servlet及简单实现表单提交 Java+MyEclipse+Tomcat (三)配置MySQL及查询数据显示在JSP网页中 Java+MyE