文档章节

jdbcTemplate 插入Mysql 并返回主键ID

iamyangjy
 iamyangjy
发布于 2015/04/28 18:28
字数 73
阅读 1892
收藏 10
点赞 0
评论 1
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.PreparedStatementCreator;
import org.springframework.jdbc.support.GeneratedKeyHolder;
import org.springframework.jdbc.support.KeyHolder;

public class jdbcTest{
    //setter and getter
    //.....
    //function
    final String sql="...";
    KeyHolder keyHolder = new GeneratedKeyHolder();
    jdbcTemplate.update(new PreparedStatementCreator() {
        @Override
        public PreparedStatement createPreparedStatement(Connection connection) throws SQLException{
            PreparedStatement ps = connection.prepareStatement(sql, PreparedStatement.RETURN_GENERAT            ED_KEYS);
            ps.setString(1, "areaName");
            ps.setInt(2, 98);
            //....
            return ps;
        }
    }, keyHolder);
    return keyHolder.getKey().intValue();
}


© 著作权归作者所有

共有 人打赏支持
iamyangjy
粉丝 2
博文 33
码字总数 34904
作品 0
深圳
加载中

评论(1)

视点
视点
java.sql.SQLException: Generated keys not requested. You need to specify Statement.RETURN_GENERATED_KEYS to Statement.executeUpdate(), Statement.executeLargeUpdate() or Connection.prepareStatement().
Spring&JDBC杂谈

下面的问题都是从以下代码引申而来: this.simpleJdbcOperation.getJdbcOperations().update(new PreparedStatementCreator() { @Overridepublic PreparedStatement createPreparedStatement......

cwalet ⋅ 2012/07/13 ⋅ 3

spring jdbctemplate 项目使用完整记录

一、前言 项目使用jdbctemplate已经一段时间了,对于jdbcTemplate的使用有了一些小小心得,这里总结后跟大家分享下。 二、spring xml 配置jdbcTemplate 三、通过DBColumnMapper、泛型封装添加...

漂泊者及其影子 ⋅ 2015/05/27 ⋅ 0

JdbcTemplateTool

Spring 出品的 JdbcTemplate 对于不想使用hibernate或者ibatis那样需要大量学习成本而且还想获得对象化的人来说是很好用的。但是 JdbcTemplate还是有很多不足之处或者说是缺点。比如你没法像...

alexxiyang ⋅ 2014/09/25 ⋅ 0

mybatis自增主键配置

mybatis自增主键配置 mybatis进行插入操作时,如果表的主键是自增的,针对不同的数据库相应的操作也不同。基本上经常会遇到的就是 Oracle Sequece 和 MySQL 自增主键,至于其他的手动生成唯一...

李永china ⋅ 2016/05/20 ⋅ 0

spring学习笔记(八)

前言 今天整理下Spring JDBC,相信不少的Java开发人员都有过使用JDBC API的经历,但是每一次的操作都需要获取链接,创建Statement,异常处理,最后释放资源,这样的工作乏味而枯燥的,好在S...

casoc ⋅ 2014/02/14 ⋅ 2

Mysql、Sql Server、Oracle主键自动增长的设置

1、把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值。例如: create table customers(id int auto_increment primary k...

Junn ⋅ 2014/03/17 ⋅ 0

Mysql,SqlServer,Oracle主键自动增长的设置

1、把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值。例如: customers(id auto_increment , name ( customers(name) i...

北方攻城师 ⋅ 2014/07/29 ⋅ 0

MyBatis:获取插入记录的自增主键

我们知道MySql中主键可以设成auto_increment,也就是自增主键,每当新增一条记录,主键值自动加1。 在MyBatis中,执行insert,返回值为受影响的语句行数,此操作跟JDBC一致。 但是如果应用中...

kolbe ⋅ 2015/09/30 ⋅ 1

mybatis+mysql返回自增长主键的二种方式

一、第一种方式 INSERT INTO users (username,password,nickname,token,regtime,logintime) VALUES (#{username},#{password},#{nickname},#{token},#{regTime},#{loginTime}) u......

xtceetg ⋅ 2017/08/19 ⋅ 0

ibatis自动生成键selectkey(Oracle、MYSQL、MSSQL、SQLITE)

我们在数据库插入一条数据的时候,经常是需要返回插入这条数据的主键。但是数据库供应商之间生成主键的方式都不一样。 有些是预先生成(pre-generate)主键的,如Oracle和PostgreSQL;有些是事...

盛夏的白菜土豆西红柿 ⋅ 2013/12/16 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

HiSDP —— 高效的C++软件开发平台

目前阿里集团每天有近1000PB的数据是通过LogAgent采集的,为了让LogAgent做到资源占用节省和高效采集,背后是基于HiSDP去构建的。 缘由 当决定采用C++编程语言去开发一个软件时,紧接着所面临...

阿里云云栖社区 ⋅ 25分钟前 ⋅ 0

zookeeper-3.4.12 下载与安装教程

一、zookeeper下载地址 http://mirrors.hust.edu.cn/apache/zookeeper/ 二、启动教程 把压缩包放在指定目录下 第三: 进入 conf文件夹底下 zoo_sample.cfg 文件名改成 zoo.cfg 第四步: 进入b...

泉天下 ⋅ 27分钟前 ⋅ 0

Oracle 中文日期转换

SELECT TO_date('2011年11月11日', 'yy"年"mm"月"dd"日"') FROM DUAL; 1. Oracle无法识别中文格式,所以添加双引号。 2. 后面的格式是指字符串在转换前的格式,而不是指转换后的格式。...

江戸川 ⋅ 28分钟前 ⋅ 0

MySell:API Spring Boot

起步 类目 商品 订单

BeanHo ⋅ 31分钟前 ⋅ 0

Spring方法拦截器MethodInterceptor

参考资料 1、Spring方法拦截器MethodInterceptor 2、Sharding JDBC源码分析-JdbcMethodInvocation类的作用

哎小艾 ⋅ 34分钟前 ⋅ 0

正则表达式

元字符 元字符,又叫字符集,就是用一些特殊符号表示特定种类的字符或位置。 匹配字符 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 匹配...

wangchen1999 ⋅ 34分钟前 ⋅ 0

数据库数据导入Elasticsearch案例分享

基于bboss持久层和bboss elasticsearch客户端实现数据库数据导入es案例分享(支持各种数据库和各种es版本) 1.案例对应的源码 https://gitee.com/bboss/bboss-elastic/blob/master/bboss-el...

bboss ⋅ 35分钟前 ⋅ 0

动手---sbt(2)

参考 https://blog.csdn.net/leishangwen/article/details/46225587 建立一个chisel_max目录,文件内容如后面所述,现在开始执行命令: joe@joe-Aspire-Z3730:/media/sdb4/download/scala$ c......

whoisliang ⋅ 41分钟前 ⋅ 0

纯js实现最简单的文件上传(后台使用MultipartFile)

<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>XMLHttpRequest上传文件</title> <script type="text/javascript"> //图片上传 var xhr......

孟飞阳 ⋅ 46分钟前 ⋅ 0

iOS宇宙大战游戏、调试工具、各种动画、AR相册、相机图片编辑等源码

iOS精选源码 日期时间选择器,swift Space Battle 宇宙大战 SpriteKit游戏源码 LLDebugTool - 便捷的IOS调试工具(新增截屏功能) 相机扫描or长按识别二维码、FMDB、键盘动态高度、定位等 动画...

sunnyaigd ⋅ 47分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部