一、引言

mybatis基本入门之后,简单的输入映射输出映射已经基本能搞定,不过像之前看起来很简单的模糊查询和主键值返回开始没有头绪,确实跟之前差距比较大,重新写了下,因为原理大家都懂所以直接上代码了==

二、模糊查询

mapper.java文件:

 public List<Info> selectInfoByname(String name);

mapper.xml文件:

 <select id="selectInfoByname" parameterType="string" resultType="Info">SELECT * from t_info WHERE f_name like '%${_parameter}%'</select>

这里我使用的是$代替了#,因为$仅仅是字符串的拼接,而#会自己带引号,这点区别大家不明白的可以查查资料,不过使用$有可能造成sql注入,尽量少使用了。

三、主键返回

1、自增主键

mapper.java:

 public void insertInfo (Info info);

mapper.xml

 <insert id="insertInfo" parameterType="com.xcy.po.Info"><selectKey keyProperty="f_id" order="AFTER" resultType="int">SELECT LAST_INSERT_ID()</selectKey>INSERT INTO t_info (f_name,f_blz,f_bld,f_yxx)values(#{f_name},#{f_blz},#{f_bld},#{f_yxx})</insert>

这里直接调用mapper.java的函数就会自动包装到Info对象中,这里需要注意的是order为before和after顺序的问题。

2、自动生成的uuid主键

mapper.java:

 public void insertInfo2 (TTest tTest);

mapper.xml:

 <insert id="insertInfo2" parameterType="com.xcy.po.TTest"><selectKey keyProperty="Fid" order="BEFORE" resultType="string">SELECT UUID()</selectKey>INSERT INTO ttest (fid,fname)values(#{Fid},#{Fname})</insert>

同样,这里是在执行sql操作之前将uuid付给实体类中的Fid属性,调用函数后直接可以使用。

四、总结

  • 模糊查询;
  • 插入数据获取自增主键;
  • 插入数据获取uuid主键;

JavaWeb——mybatis模糊查询与主键返回相关推荐

  1. @MyBatis主键返回

    在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数:如果业务层需要得到记录的主键时,可以通过配置的方式来完成这个功能. 比如在表的关联关系中,将数据插入主 ...

  2. mybatis新增时将主键值返回(注解方式)

    mybatis新增时将主键值返回: @Insert("insert into driver_account_appeal (driver_id,driver_name,driver_phon ...

  3. mybatis主键返回

    自增主键的返回: mysql自增主键,执行insert提交之前自动生成一个自增主键. 通过mysql函数获取到刚插入记录的自增主键: LAST_INSERT_ID() 是insert之后调用此函数. ...

  4. mybatis中设置主键返回

    mybatis中设置主键返回 <insert id="insertSelective" parameterType="com.nwow.pss.model.User ...

  5. Mybatis 插入时获取主键的方式

    mybatis 作为一个主流的 ORM 框架,深受广大开发者的喜爱.有人的地方就有江湖,有代码的地方自然有坑,下面来说说获取 mybatis 的插入后返回的主键. 我们可以想一下自动增长的主键特性,在 ...

  6. mysql自增主键返回---创建成功后返回用户的ID

    mysql自增主键返回 查询id的sql SELECT LAST_INSERT_ID() 通过修改User.xml映射文件,可以将mysql自增主键返回: 如下添加selectKey 标签 <! ...

  7. insert主键返回 selectKey使用

    有时候新增一条数据,知道新增成功即可,但是有时候,需要这条新增数据的主键,以便逻辑使用,再将其查询出来明显不符合要求,效率也变低了. 这时候,通过一些设置,mybatis可以将insert的数据的主键 ...

  8. insert into select 主键自增_springboot2结合mybatis拦截器实现主键自动生成

    点击上方蓝字关注我们 1 01 前言 前阵子和朋友聊天,他说他们项目有个需求,要实现主键自动生成,不想每次新增的时候,都手动设置主键.于是我就问他,那你们数据库表设置主键自动递增不就得了.他的回答是他 ...

  9. by mybatis 自定义order_springboot2结合mybatis拦截器实现主键自动生成

    点击上方蓝字关注我们 1 01 前言 前阵子和朋友聊天,他说他们项目有个需求,要实现主键自动生成,不想每次新增的时候,都手动设置主键.于是我就问他,那你们数据库表设置主键自动递增不就得了.他的回答是他 ...

最新文章

  1. Excel和数据库的导入与导出
  2. HDU 6156 Palindrome Function 数位DP
  3. 【深度学习入门到精通系列】Mean Iou
  4. Python 基础教程(第2版) 中文版+英文原版下载
  5. 我的小作品(烂笔头)
  6. Nginx技巧:灵活的server_name,Nginx配置一个服务器多个站点 和 一个站点多个二级域名...
  7. 在linux系统JDK安装中文字体
  8. mysql操作json优点和缺点_MySQL与JSON-为什么?
  9. ubuntu14.04 remmina远程连接rdp服务器失败解决办法
  10. 根据div 标签 查看数组@class=modulwrap 下面的/table/tbody/tr/td
  11. python y轴倒转_python – Config Kivy y轴的反转输入
  12. 采集网页数据生成到静态模板newslist.html文件中(正则表达式)
  13. 爬虫之User-Agent
  14. Windows NT各版本对应关系
  15. 刨根究底字符编码之九——字符编码方案的演变与字节序
  16. 利用Excel进行多张表的合并计算,操作简单
  17. docker配置mysql 中间件 ProxySQL
  18. Bootstrap栅格系统 xs sm md lg xl
  19. ae中计算机打字预设,Typewriter Pro(AE电脑打字动画特效预设)
  20. 计算机怎么设置网络,电脑怎么设置网络

热门文章

  1. 大兴服务器硬盘回收行情价格,回收服务器 硬盘 内
  2. PCL之求点云的BoundingBox
  3. python中int的用法归类
  4. matlab如何判断矩阵中元素都大于0_在MATLAB中找到矩阵中零元素的数量
  5. 转载关于使用Ant打包Flex的一些脚本
  6. @PathVariable、@RequestHeader与@CookieValue注解的使用案例
  7. git merge;fork同步集中库代码;a标签返回
  8. js进阶 14-6 $.ajax()方法如何使用
  9. 程序员思维看爱情是什么?
  10. shell基础(下) 特殊符号