java-Spring数据JPA只有一个组合键是自动递增的问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-Spring数据JPA只有一个组合键是自动递增的问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1992字,纯文字阅读大概需要3分钟。
内容图文
![java-Spring数据JPA只有一个组合键是自动递增的问题](/upload/InfoBanner/zyjiaocheng/695/16ec9ffca3c14546bf573b7310d32468.jpg)
我正在使用MySQL数据库.
在我的表中,有两个四个主键,其中一个是自动递增的.
@Embeddable
public class EmployeeId implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Column(name = "id", nullable = false)//
This is just Pk in mysql table
**private int id;**
// I have tried and @GeneratedValue(strategy = GenerationType.IDENTITY),
@GeneratedValue(strategy = GenerationType.IDENTITY)
//and @GeneratedValue(strategy = GenerationType.TABLE)
//@GeneratedValue(strategy = GenerationType.AUTO, generator = "id") @SequenceGenerator(name = "id", sequenceName = "id")
**this is auto incremented and pk in mysql table**
@Column(name = "gender_key", nullable = false)
private int gender_key;
}
@Entity
@Table(name = "employee")
public class employee {
@EmbeddedId
private EmployeeId employeeId;
private String emp_name;
private String mobile_no;
employee() {
}}
public interface employeeRepository extends
JpaRepository<employee, EmployeeId> {
}
在我的控制器中,我想要在employeeRepository.save(bean)之后的ID;方法,因为我想将该ID保存在其他db中.
logger.info(“ gender_key是—>” sex_key);
但是我总是得到0的sex_key值.
我尝试过的是:
bean = employeeRepository.save(bean)
int gender_key= bean.getGender_key();
logger.info("gender_keyis --- > "+gender_key);
但是,gender_key的值仍为0(零).
或我必须在存储库中编写的任何查询.
我如何获得插入MySQL表中的sex_key的自动递增值?
请帮忙.
提前致谢.
解决方法:
您的JPA @Id不需要匹配数据库PK列.只要它是唯一的,那就很重要.
从https://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing开始:
The JPA Id does not always have to match the database table primary
key constraint, nor is a primary key or a unique constraint required.
由于您保证自动增加的列是唯一的,因此只需将gender_key用作您的@ID,将地图ID用作普通列.
@Entity
@Table(name = "employee")
public class employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int genderKey;
@Column
private int id;
}
老实说,我会发现您的架构令人困惑.
我还建议阅读以下内容:
https://www.javatpoint.com/java-naming-conventions
内容总结
以上是互联网集市为您收集整理的java-Spring数据JPA只有一个组合键是自动递增的问题全部内容,希望文章能够帮你解决java-Spring数据JPA只有一个组合键是自动递增的问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。