模糊查询用户信息

<!--

[${}]:表示拼接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. 01 of lenrning python

    我也打算开始写博客啦!记录一下自己的学习过程~ 01密文登陆 这个在vscode中不显示密文 在cmd中看不到密码 # -*- coding: utf-8 -*- import getpass nam ...

  2. Hive数仓之快速入门(二)

    上次已经讲了<Hive数据仓库之快速入门一>不记得的小伙伴可以点击回顾一下,接下来我们再讲Hive数据仓库之快速入门二 DQL hive中的order by.distribute by.s ...

  3. JavaScript工作体系中不可或缺的函数

    一.函数的概念 日常生活中,我们要完成一件事,总是习惯先有一个计划,后期按照计划,一步一步执行,则能够完成,并且达到一定效果实现一定的功能.在编程的世界里,“功能”可称呼为“函数”,因此“函数”即一段 ...

  4. FFmpeg命令行工具学习(四):FFmpeg 采集设备

    在使用 FFmpeg 作为编码器时,可以使用FFmpeg采集本地的音视频采集设备的数据,然后进行编码.封装.传输等操作. 例如,我们可以采集摄像头的图像作为视频,采集麦克风的数据作为音频,然后对采集的 ...

  5. Android WebView 超大字号适配问题

    目前在使用 Android WebView 展示H5页面的时候,存在当系统字号设置超大的时候,出现页面内容展示不全的问题. 此问题是因为Android WebView 默认使用系统字号进行展示. 解决 ...

  6. shell 中let无法使用的原因

    运行 sh    let.sh 时,却显示  let: not found 百度之后知道: /bin/sh指向了dash而不是bash,dash不支持let命令. 解决方法: 法1.使用  bash ...

  7. deepin安装docker

    deepin在debian的基础上进行了一些修改,因此导致按照debian的安装指引是很难安装上docker的. 最近想学习docker,故尝试了安装docker(个人使用:deepin15.7桌面版 ...

  8. Spring Boot 的 10 个核心模块

    学习 Spring Boot 必须得了解它的核心模块,和 Spring 框架一样,Spring Boot 也是一个庞大的项目,也是由许多核心子模块组成的. 你所需具备的基础 告诉你,Spring Bo ...

  9. spark面试总结2

    Spark core面试篇02 1.cache后面能不能接其他算子,它是不是action操作? 答:cache可以接其他算子,但是接了算子之后,起不到缓存应有的效果,因为会重新触发cache. cac ...

  10. Lombok的@Data、@Setter、@Getter注解没反应问题解决

    在用@Data注解时,没有生成setter/getter方法.百度了一堆都没解决方法,后来用Google查了一下解决了~~~ 使用IDEA需要安装Lombok插件,我这里已经下载好,如果没下载安装点击 ...