如何从数据库加载数据并实例化实体(Hibernate和Spring)

时间:2019-02-21 10:43:24

标签: java spring hibernate rest

我想通过ID从保存对象的数据库中获取对象ResponsableEntity。我第一次使用Spring-boot和Hibernate,而其他主题的问题在我的项目中不起作用

这是我的代码:

ResponsableEntity:

@Entity
@Table(name = "responsable")
public class ResponsableEntity {

    /**
     * Id of the responsable
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    /**
     * First name of the responsable
     */
    @Column(nullable=false)
    private String firstName;

    /**
     * Lst name of the responsable
     */
    @Column(nullable=false)
    private String lastName;

    /**
     * Last latitude of the  responsable position
     */
    private Double latitude;

    /**
     * Last longitude of the  responsable position
     */
    private Double longitude;

    /**
     * All getters and setters [...]
     */
}

ResponsableDBRepository:

@Repository
public interface ResponsableDBRepository extends CrudRepository<ResponsableEntity, Long> {
}

ResponsableController(REST):

@RestController
@RequestMapping("/responsable")
public class ResponsableController {

    /**
     * CRUD Repository atribut needed for the methods below
     */

    private final ResponsableDBRepository responsableDBRepository;
    private final ResponsableStatDBRepository responsableStatDBRepository;

    /**
     * Constructor
     *
     * @param responsableDBRepository CRUD repository for ResponsableEntity
     * @param responsableStatDBRepository CRUD repository for ResponsableStatEntity
     */
    @Autowired
    public ResponsableController(ResponsableDBRepository responsableDBRepository, ResponsableStatDBRepository responsableStatDBRepository){
        this.responsableDBRepository = responsableDBRepository;
        this.responsableStatDBRepository = responsableStatDBRepository;
    }

    @GetMapping(path = "/get")
    public @ResponseBody String getAllResponsable(){

        //get object with id given

        return "Returned";
    }
}

当我们调用此请求时,我希望从数据库中加载实体,并使用存储在数据库中的信息创建对象ResponsableEntity。我已经尝试了在其他主题上找到的大多数答案,但是大多数时候我的IDE告诉我他找不到所需的类,并且似乎是Hibernate和Spring中的“默认”类

预先感谢您的回答!

1 个答案:

答案 0 :(得分:0)

使用此:-

ResponsableEntity responsableEntity = responsableDBRepository.findById(id);