Java hibernate session.get inside constructor



我刚刚开始在项目中使用Hibernate,我正在努力理解Hibernate。这是我的模型:

package tech.simorgh.syam.model;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.Metadata;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import javax.persistence.*;
@Entity
@Table(name = "tbl_user")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int user_id;
    @Column(nullable = false)
    private String firstName, lastName, fatherName, password, email;

    public int getUser_id() {
        return user_id;
    }
    public String getFirstName() {
        return firstName;
    }
    public String getLastName() {
        return lastName;
    }
    public String getFatherName() {
        return fatherName;
    }
    public String getPassword() {
        return password;
    }
    public String getEmail() {
        return email;
    }
}

我正在寻找一种像这样启动班级的方法:

 User user = new User(1);
 System.out.printf(user.getFirstName());

我正在使用Spring Boot和Hibernate来构建此项目

您不需要使用构造函数从数据库中获取数据。您可以直接致电session.get获取记录。

User user = (User) session.get(User.class, 1);

最新更新