Spring Data JPA – @Id 注解
Spring Boot 建立在 Spring 之上,包含了 Spring 的所有特性。 Spring 还提供了 JPA 和 hibernate 来提高 Spring 应用程序和数据库之间的数据操作效率。简单来说,我们可以说 JPA(Java持久性 API)就像一个接口,而休眠是接口方法的实现,就像在休眠的帮助下已经定义了插入的方式一样。在本文中,我们将讨论如何在 Spring Application 中制作类主键的特定变量。 @Id 注释是 JPA 用于制作特定变量的主键。
在 JPA 中使用 @Id 注解
@Id 注解继承自javax.persistence.Id,表示下面的成员字段是当前实体的主键。因此,您的 Hibernate 和 spring 框架以及您可以基于此注释进行一些反射工作。
例子
Spring Initializr 是一个基于 Web 的工具,我们可以使用它轻松生成 Spring Boot 项目的结构。它还为元数据模型中表达的项目提供各种不同的功能。该模型允许我们配置 JVM 支持的依赖项列表。在这里,我们将使用 spring 初始化程序创建应用程序的结构。
第 1 步:转到此链接。根据要求填写详细信息。对于此应用程序:
Project: Maven
Language: Java
Spring Boot: 2.5.6
Packaging: JAR
Java: 11
Dependencies: Spring Web,Spring Data JPA, MySql Driver
单击生成将下载启动项目。
第 2 步:解压缩 zip 文件。现在打开一个合适的 IDE,然后转到 File > New > Project from existing sources > Mapping 并选择 pom.xml。点击提示导入更改,等待项目同步,如下图所示:
第 3 步:在 application.properties 文件中添加必要的属性。 (映射是数据库名称)
spring.datasource.username=root
spring.datasource.password=Aayush
spring.datasource.url=jdbc:mysql://localhost:3306/mapping
spring.jpa.hibernate.ddl-auto=update
第 4 步:转到 src->main-> Java->com->example->Mapping 并创建一个文件 StudentInformation.Java
项目结构:
学生信息:
Java
@Entity
@Table(name = "Student")
public class StudentInformation {
// Making roll number primary key
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int rollno;
private String name;
public int getRollno() { return rollno; }
public StudentInformation() {}
public StudentInformation(int rollno, String name)
{
this.rollno = rollno;
this.name = name;
}
public void setRollno(int rollno)
{
this.rollno = rollno;
}
public String getName() { return name; }
public void setName(String name) { this.name = name; }
}
运行主应用程序:
终端输出:
数据库输出: