Java自动生成增量补丁自动部署_java-Hibernate正在为表生成自动增量交替ID
我的环境:WAMP中的Hibernate 5,Java 8,Phpmyadmin
问题:Hibernate在表中创建自动增量ID,但是下一个序列被赋予另一个表.
预期
Table 1 Table 2
1. Hello 1. Foo
2. World 2. Bar
相反,它正在创造
Table 1 Table 2
1. Hello 2. Foo
3. World 4. Bar
项目结构
的hibernate.cfg.xml
/p>
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/ansarihibernate
localuser
1
org.hibernate.dialect.MySQLDialect
org.hibernate.cache.internal.NoCacheProvider
true
create
MainM2M.java
package org.ansari.hibernate.manytomany;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class MainM2M {
public static void main(String[] args) {
StudentM2MCertificates st1 = new StudentM2MCertificates();
st1.setM2m_cert_det("Oracle Cert");
StudentM2MCertificates st2 = new StudentM2MCertificates();
st2.setM2m_cert_det("Big Data Cert");
StudentM2M s1 = new StudentM2M();
s1.setM2m_stu_name("Ansari");
s1.getSetM2MCert().add(st1);
StudentM2M s2 = new StudentM2M();
s2.setM2m_stu_name("Mohammed");
s2.getSetM2MCert().add(st2);
SessionFactory sessFac = new Configuration().configure().buildSessionFactory();
Session session = sessFac.openSession();
session.beginTransaction();
session.save(s1);
session.save(s2);
session.getTransaction().commit();
session.close();
sessFac.close();
}
}
StudentM2M.java
package org.ansari.hibernate.manytomany;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name="STUDENTM2M")
public class StudentM2M {
@Id
@GeneratedValue
private int m2m_id;
private String m2m_stu_name;
@ManyToMany(cascade=CascadeType.ALL)
private Set setM2MCert = new HashSet(0);
public Set getSetM2MCert() {
return setM2MCert;
}
public void setSetM2MCert(Set setM2MCert) {
this.setM2MCert = setM2MCert;
}
public int getM2m_id() {
return m2m_id;
}
public void setM2m_id(int m2m_id) {
this.m2m_id = m2m_id;
}
public String getM2m_stu_name() {
return m2m_stu_name;
}
public void setM2m_stu_name(String m2m_stu_name) {
this.m2m_stu_name = m2m_stu_name;
}
}
StudentM2MCertificates
package org.ansari.hibernate.manytomany;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="CERTM2M")
public class StudentM2MCertificates {
@Id
@GeneratedValue
private int m2m_cert_id;
private String m2m_cert_det;
public int getM2m_cert_id() {
return m2m_cert_id;
}
public void setM2m_cert_id(int m2m_cert_id) {
this.m2m_cert_id = m2m_cert_id;
}
public String getM2m_cert_det() {
return m2m_cert_det;
}
public void setM2m_cert_det(String m2m_cert_det) {
this.m2m_cert_det = m2m_cert_det;
}
}
表结构
certm2m
hibernate_sequence
studentm2m
studentm2m_certm2m
Java自动生成增量补丁自动部署_java-Hibernate正在为表生成自动增量交替ID相关推荐
- 自动生成小工具(二):根据建表sql自动生成增删改查sql语句文件
Mybatis自动生成插件虽然功能强大,但是也略显笨重.我自己开发了一个自动生成的小工具,更加简单,更加轻量级. 一共只有几百行代码,想改的话,直接修改即可.根据自己的实际情况,可以进行灵活的二次开发 ...
- java中显示动态信息的方法_java里的动态表单技术
最近的一个项目,由于客户的需求等信息不确定,为了降低以后修改的成本及产品的推广考虑到动态表单技术,之前也一直在考虑到动态表单技术,毕竟在delphi里已经实现过了,由于我们采用的hibernate的执 ...
- typeorm 生成实体类_android常用orm框架greenDAO创建表生成实体类
package com.example.greendao_test.DB_Initialize; import java.io.IOException; import de.greenrobot.da ...
- java装箱和拆箱的意义_java的自动拆箱和装箱是每个程序员都要知道的
自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题.本文先讲述装箱和拆箱最基本的东西. 自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动 ...
- java 布尔表达式_java - 布尔值,条件运算符和自动装箱
java - 布尔值,条件运算符和自动装箱 为什么抛出false public static void main(String[] args) throws Exception { Boolean b ...
- java自动类型提升_Java中的基本数据类型转换(自动、强制、提升)
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...
- Hibernate入门(IDEA下自动生成映射文件及实体类)
1.Hibernate开发步骤 1.创建Hibernate配置文件 2.创建持久化类 3.创建对象-关系映射文件 4.通过Hibernate API编写访问数据库的代码 2.创建一个hibernate ...
- link url下载php,php脚本生成google play url的下载链接,下载apk并自动反编译后获取android版本号...
php脚本生成google play url的下载链接,下载apk并自动反编译后获取android版本号 需求: get the offer tracking link follow the redi ...
- java smart算法_Java Restful API 文档生成工具 smart-doc
谁说生成api文档就必须要定义注解? 谁说生成接口请求和返回示例必须要在线? 用代码去探路,不断尝试更多文档交付的可能性. 如果代码有生命,为什么不换种方式和它对话! 一.背景 没有背景.就自己做自己 ...
- 点滴积累【C#】---检验编号在本表中自动生成,与其他表无关
检验编号在本表中自动生成,与其他表无关 效果: 描述:在本表中自动生成编号,与其他表无关. 调用: 1 protected void Page_Load(object sender, EventArg ...
最新文章
- 项目管理过程中,如何编制初步工作说明书
- hdu 4311 Meeting point-1
- 【转】Apache 配置虚拟主机三种方式
- 一个好的销售团队需具备的4个特点
- tf.train.GradientDescentOptimizer().minimize()细致探索
- 转:毕业几年出来来的我们的生活
- [转载] 重新抛出异常与 public Throwable fillInStackTrace()
- 全网首发:给doubango增加支持H264 stap-a帧
- 【运筹学】匈牙利法 ( 匈牙利法示例 )
- 雷军,打不倒的王者!
- 第3章基本程序设计结构(java知识点笔记)
- 外贸沟通谈判中加分项,这些你都知道吗?
- Android触摸事件实现笔触画布
- java游戏 麦克斯 狗,奇幻射击针对兽人BOSS麦克斯的召唤兽用法
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(一、编译连接前准备)
- 解析人工智能与人类智慧的求同存异
- 14 Tornado - XSRF
- 在python中print表示的数据类型是_【Python连载】那些必须掌握的Python数据类型
- 工作流之activiti6新手上路
- 通往财富自由之路详细笔记(20)