实体类如下:

package com.wondersgroup.test.entity;
 
import java.io.Serializable;
 
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
 
@Entity
@Table(name = "TB_YYZZ_DIC_Hospital")
public class TbDicHospital implements Serializable{
 
private static final long serialVersionUID = 1L;
private String yyjgbm;
private String byzd;
private String byzd1;
private String byzd2;
private String hysm;
private String hyss;
private String jgjc;
private String jglx;
private int xh;
private String yltbs;
private String yyjgmc;
 
public TbDicHospital() {
}
 
 
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="YYJGBM")
public String getYyjgbm() {
return this.yyjgbm;
}
 
public void setYyjgbm(String yyjgbm) {
this.yyjgbm = yyjgbm;
}
 
 
@Column(name="BYZD")
public String getByzd() {
return this.byzd;
}
 
public void setByzd(String byzd) {
this.byzd = byzd;
}
 
 
@Column(name="BYZD1")
public String getByzd1() {
return this.byzd1;
}
 
public void setByzd1(String byzd1) {
this.byzd1 = byzd1;
}
 
 
@Column(name="BYZD2")
public String getByzd2() {
return this.byzd2;
}
 
public void setByzd2(String byzd2) {
this.byzd2 = byzd2;
}
 
 
@Column(name="HYSM")
public String getHysm() {
return this.hysm;
}
 
public void setHysm(String hysm) {
this.hysm = hysm;
}
 
 
@Column(name="HYSS")
public String getHyss() {
return this.hyss;
}
 
public void setHyss(String hyss) {
this.hyss = hyss;
}
 
 
@Column(name="JGJC")
public String getJgjc() {
return this.jgjc;
}
 
public void setJgjc(String jgjc) {
this.jgjc = jgjc;
}
 
 
@Column(name="JGLX")
public String getJglx() {
return this.jglx;
}
 
public void setJglx(String jglx) {
this.jglx = jglx;
}
 
 
@Column(name="XH")
public int getXh() {
return this.xh;
}
 
public void setXh(int xh) {
this.xh = xh;
}
 
 
@Column(name="YLTBS")
public String getYltbs() {
return this.yltbs;
}
 
public void setYltbs(String yltbs) {
this.yltbs = yltbs;
}
 
 
@Column(name="YYJGMC")
public String getYyjgmc() {
return this.yyjgmc;
}
 
public void setYyjgmc(String yyjgmc) {
this.yyjgmc = yyjgmc;
}
}
dao调用如下:

@Override

public String addHospital(TbDicHospital tbDicHospital) {

Session session=null;

Boolean result=false;

System.out.println(tbDicHospital.getYyjgbm());

session=this.sessionFactory.getCurrentSession();

session.beginTransaction();

session.save(tbDicHospital);

session.getTransaction().commit();

session.close();

result=true;

return result.toString();

}

在执行过程中:存在以下问题:

经过排查,传递参数的过程中没有问题:

 

问题出在Hibernate自动生成的SQL语句中,缺少了该字段:

可以发现,并没有yyjgbm字段;

设置字段为@ID的时候,无反应;

是主键增长策略的问题,没法绕开,只好写sql了;

Hibernate session.save()实体类,主键增长问题的更多相关文章

  1. nhibernate实体类主键ID赋值问题

    有个同事忽然来找我,说他遇到了一个问题,在调用nhibernate 进行update数据的时候报错,说是有数据行锁定. 看代码,没啥问题. 直接在PL/SQL developer里对数据库进行插入,也 ...

  2. (二)JPA实体类主键生成策略

    在JPA中,配置实体类的主键的生成策略使用 @GeneratedValue @Id @Column(name = "id") @GeneratedValue(strategy = ...

  3. Hibernate自动生成实体类注解(转)

    常用的hibernate annotation标签如下: @Entity --注释声明该类为持久类.将一个Javabean类声明为一 个实体的数据库表映射类,最好实现序列化.此时,默认情况下,所有的类 ...

  4. hibernate 非xml实体类配置方法!

    hibernate 非xml实体类配置方法! 这个是hibernate.cfg.xml配置文件 <?xml version='1.0' encoding='UTF-8'?> <!DO ...

  5. mysql 插入数据失败防止自增长主键增长的方法

    mysql设置了自增长主键ID,插入失败的那个自增长ID也加一的,比如失败5个,下一个成功的不是在原来最后成功数据加1,而是直接变成加6了,失败次数一次就自动增长1了,能不能让失败的不增长的? 或者说 ...

  6. 在Intellij IDEA下通过Hibernate逆向生成实体类

    前言:在IDEA中,通过相关插件,可以利用Hibernate逆向生成数据表对应的实体类.具体操作及注意事项见本篇随笔. 1.创建一个基于maven的hibernate工程.并在工程中添夹hiberna ...

  7. EF5+MVC4系列(2) EF5报错 无法确定“XXX”关系的主体端。添加的多个实体可能主键相同

    情景:用户表和订单表是一对多的关系,即 一个 Userinfo  对应对应有 多个 Order表   如果我在EF中,先创建一个用户,然后创建3个订单,然后关联这1个用户和3个订单的关系,毫无问题. ...

  8. hibernate 反向生实体类 and 为什么老是多一个id

    hibernate 反向生实体类 and 为什么老是多一个id 2017年04月01日 20:32:51 阅读数:548

  9. java框架之Hibernate(2)-持久化类&主键生成策略&缓存&事务&查询

    持久化类 概述 持久化:将内存中的对象持久化到数据库中的过程就是持久化.Hibernate 就是用来进行持久化的框架. 持久化类:一个 Java 对象与数据库的表建立了映射关系,那么这个类在 Hibe ...

随机推荐

  1. Day 04 作业

    目录 作业 简述Python的五大数据类型的作用.定义方式.使用方法: 数字类型 字符串类型 列表 字典 布尔型 一行代码实现下述代码实现的功能: 写出两种交换x.y值的方式: 一行代码取出nick的 ...

  2. 2019年终总结:10场演讲、内推20人、公众号2万粉丝、Code Runner 1000万下载

    2019年是值得记录的一年,成长许多,也收获许多. 做了 10 场大会的技术演讲,成功内推 20 人拿到微软 Offer,知乎 Live 2000 听众,公众号 2 万粉丝,GitHub 2万 sta ...

  3. CCF-CSP题解 201912-3 化学方程式

    判断化学方程式是否配平. 字符串处理. 有点编译原理递归下降法的感觉. 考场源码,比较粗糙. // INFO BEGIN // // User = 201911513451(陶杨) // Group ...

  4. 百万级高并发mongodb集群性能数十倍提升优化实践

    背景 线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性.该集群采 ...

  5. oracle创建索引

    数据库索引是为了提高查询速度的一种数据结构. 索引的创建语句 索引的创建语句非常简单. CREATE INDEX 索引名 ON 表名(列名); 除了单列索引,还可以创建包含多个列的复合索引. CREA ...

  6. SAP QM 主检验特性主数据关键字段解释

    SAP QM 主检验特性主数据关键字段解释 检验特征是QM模块中的一项重要主数据,可以说是QM检验业务的构成基础,它通过体现在Task list (检验任务清单)和/或material specifi ...

  7. HA: Infinity Stones Vulnhub Walkthrough

    下载地址: https://www.vulnhub.com/entry/ha-infinity-stones,366/ 主机扫描: 目录枚举 我们按照密码规则生成字典:gam,%%@@2012 cru ...

  8. Android框架式编程之架构方案

    目前移动端应用市场已经是百花齐放,很多独角兽公司都是通过App创业发展起来的,现在App类型更加丰富,功能越来越完善,基本上涵盖了各个行业的每个角落.为了开发出更加有竞争力的App,不仅需要功能上有创 ...

  9. MariaDB主从复制和读写分离

    一.基础环境 二.配置MariaDB服务 1.安装MariaDB # yum install -y mariadb mariadb-server # systemctl start mariadb # ...

  10. 封装和@property

    封装和@property 一.复习 1.接口类和抽象类 python中没有接口类,有抽象类,abc模块中的metaclass=ABCMeta,@abstructmethod,本质是做代码规范用的,希望 ...