模糊查询用户信息

<!--

[${}]:表示拼接SQL字符串

[${value}]:表示要拼接的是简单类型参数。

注意:

1、如果参数为简单类型时,${}里面的参数名称必须为value

2、${}会引起SQL注入,一般情况下不推荐使用。但是有些场景必须使用${},比如order by ${colname}

-->

<select id="findUserByName" parameterType="String" resultType="com.gyf.domain.User">

SELECT * FROM USER WHERE username like '%${value}%'

</select>

插入用户信息

删除用户

更新用户

主键返回之MySQL自增主键

  思路:

  • MySQL自增主键,是指在insert之前MySQL会自动生成一个自增的主键。
  • 我们可以通过MySQL的函数获取到刚插入的自增主键:

  LAST_INSERT_ID()

  • 这个函数是在insert语句之后去调用。

<insert id="insertUser" parameterType="com.gyf.domain.User">

<!--

[selectKey标签]:通过select查询来生成主键

[keyProperty]:指定存放生成主键的属性

[resultType]:生成主键所对应的Java类型

[order]:指定该查询主键SQL语句的执行顺序,相对于insert语句

[last_insert_id]:MySQL的函数,要配合insert语句一起使用 -->

<selectKey keyProperty="id" resultType="int" order="AFTER">

SELECT LAST_INSERT_ID()

</selectKey>

<!-- 如果主键的值是通过MySQL自增机制生成的,那么我们此处不需要再显示的给ID赋值 -->

INSERT INTO USER (username,sex,birthday,address)

VALUES(#{username},#{sex},#{birthday},#{address})

</insert>

主键返回之MySQL自增UUID

<insert id="insertUser" parameterType="com.gyf.domain.User">

<selectKey keyProperty="id" resultType="String" order="BEFORE">

SELECT UUID()

</selectKey>

INSERT INTO USER (username,sex,birthday,address)

VALUES(#{username},#{sex},#{birthday},#{address})

</insert>

ORCLE主键

  SELECT user_seq.nextval() FROM dual

mybatis_02简单操作数据库的更多相关文章

  1. Spring_boot简单操作数据库

    Spring_boot搭配Spring Data JPA简单操作数据库 spring boot 配置文件可以使用yml文件,默认spring boot 会加载resources目录的下的applica ...

  2. php 简单操作数据库

    <?php header("content-type:text/html;charset=utf-8"); /*//造一个连接 $connect = @mysql_conne ...

  3. pymysql 简单操作数据库

    #!/usr/bin/env python #-*- coding:utf-8 -*- # author:leo # datetime:2019/4/24 15:22 # software: PyCh ...

  4. SQLiteDatabase里面的简单操作数据库的方法

    1.使用insert方法插入记录SQLiteDatabase的insert方法的签名为long insert(String table,String nullColumnHack,ContentVal ...

  5. spring框架整合hibernate框架简单操作数据库

    1.配置文件: <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http:/ ...

  6. pyqt5最简单操作数据库

    要先安一个包才能使用QtSql通过新立得安装 import PyQt5.QtSql as sql db=sql.QSqlDatabase.addDatabase('QMYSQL') db.setDat ...

  7. spring-boot-route(七)整合jdbcTemplate操作数据库

    在一部分内容中,我们学习了Restful接口的编写,及接口文档的生成.我们需要将接口数据进行持久化存储,这一部分我们主要学习几种持久化框架将数据进行存储.本部分内容中,我们都将使用mysql为例来做为 ...

  8. Django简单的数据库操作

    当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍. 一. 在settings.py文件中设置数据库属性. 如下: DATABASES = { 'default': { 'ENGINE': ...

  9. Android—Ormlite框架简单的操作数据库

    大家在Android项目中或多或少的都会使用数据库,为了提高我们的开发效率,当然少不了数据库ORM框架了,尤其是某些数据库操作特别频繁的app:本篇博客将详细介绍ORMLite的简易用法. 下面开始介 ...

随机推荐

  1. Avro序列化与反序列化

    4.Avro实现序列化的步骤 1.创建maven工程,引入pom文件(定义属性和依赖信息,以及定义Avro插件) 2.根据Avro插件的要求,更改maven工程结构,需要创建一个source/main ...

  2. JVM运行时数据区(二)

    4.本地方法栈 本地方法栈与虚拟机栈所发挥的作用是非常相似的,它们之间的区别不过是虚拟机栈为虚拟机执行Java方法服务,而本地方法栈则为虚拟机使用到的Native方法服务. 与Java虚拟机栈一样本地 ...

  3. 几个实用的CSS代码段总结

    废话不多说,直接上代码,希望能帮到有需要的小伙伴 ①:遮罩 position: fixed; background: rgba(0, 0, 0, .4); top: 0; left: 0; right ...

  4. Kali学习笔记17:OpenVAS安装部署

    正式介绍OpenVAS之前先说一些题外话 1.有一个网站记录了很多的漏洞: https://www.exploit-db.com/ 可以下载利用 2.如果觉得从网上寻找太麻烦,Kali自带工具:sea ...

  5. CoCos2dx开发:中文乱码

    一.FontToUTF8()方法修改字体: 1.HelloWorldScene.h头文件中声明方法: char* FontToUTF8(const char* font); 2.HelloWorldS ...

  6. ubuntu 16.04 安装matlab的替代工具Octave及使用指南

    为什么要安装Octave? 它是什么? GNU Octave是自由软件基金会(Free Software Foundation)支持的遵循GPL协议(GNU General Public Licens ...

  7. Liunx服务管理(Centos)

    RPM包安装的服务其安装文件是遵循系统默认安装位置,所以可以通过命令快速启动,但源码包的安装是统一放在一个自定义文件夹下,所有其服务要使用绝对路径,但也可以通过软连接方式,让其支持RPM包相同管理方式 ...

  8. Python的GUI编程(TK)

    TK在大多数 Unix平台.Windows平台和Macintosh系统都是预装好的,TKinter 模块是 Tk GUI 套件的标准Python接口.可实现Python的GUI编程. Tkinter模 ...

  9. 深入浅出 Java 中的包装类

    前阵子,我们分享了<Java中的基本数据类型转换>这篇文章,对许多粉丝还是有带来帮助的,今天讲一下 Java 包装类的的由来,及自动装箱.拆箱的概念和原理. 什么是包装类型 Java 设计 ...

  10. 机器学习(Machine Learning)算法总结-K临近算法

    一.算法详解 1.什么是K临近算法 Cover 和 Hart在1968年提出了最初的临近算法 属于分类(classification)算法 邻近算法,或者说K最近邻(kNN,k-NearestNeig ...