小编Mes*_*gan的帖子

JPA的commit()方法是否使实体分离?

我一直在寻找JPA实体生命周期.但现在,有关实体生活的一些缺失点.我在stackoverflow帖子中发现了以下图形,请记住这个图表已被upvoted.

JPA实体生命周期

根据这个图,当我们坚持实体时,它变得受管理.好 .没问题 .提交时,数据会进入数据库.好 .没问题.但是图表显示了我们这个提交操作使得实体分离了!我们来看下面的伪代码.

entityManager.persist(entity);
transaction.commit(); // action completed and entity has become detached.(According to the diagram.)
entityManager.remove(entity); //Attention this step please .
Run Code Online (Sandbox Code Playgroud)

在上一步(提交步骤).那么如何删除分离的对象呢?如果该实体变得分离,我们都知道管理分离的实体是不可能的,因为它不再与持久化上下文相关联.

那么如何删除分离的对象呢?你能在这点澄清一下吗?提前致谢 !

java hibernate jpa

10
推荐指数
2
解决办法
4393
查看次数

JPA是否足以执行CRUD操作

几天来,我一直在研究JPA和Hibernate.现在我对JPA - Hibernate交互感到困惑.我知道JPA是一个规范,Hibernate实现它.但缺少的是一个工作原则.我的意思是在一个真实的应用程序中,hibernate做了什么以及jpa做了什么?我试图得到以下问题.让我问问你;

  1. 问题1: JPA只是抽象概念吗?它只包含接口吗?(我观察到javax.persistance包中的每个都是interfce.)
  2. 问题2: JPA是否足以执行CRUD操作?(是否可以在没有Hibernate的情况下使用JPA等)如果确实如此,为什么我们需要JPA提供程序,如Hibernate等?
  3. 问题3:最后一个,我正在寻找具体的东西.我需要知道Database-> JPA-> Hibernate交互.例如,在保存和获取某些内容时,后台会发生什么?哪一个正在执行数据库操作(hibernate或jpa)或哪一个负责提供数据库连接?
    我的意思是,在JPA /休眠基础的应用,负责是什么

java hibernate jpa

4
推荐指数
1
解决办法
303
查看次数

依赖注入接口与具体类相比?

我对DI中的几点感到困惑.让我解释一下:首先,依赖注入必须遵循依赖倒置原则吗?如果是这样,我们就不能将具体的类实例注入依赖.因为,此操作违反了DIP.让我们通过一个例子问我的问题:

public class Client {

private Service service; // Service is concrete class !

Client(Service service) {this.service = service;}
}
Run Code Online (Sandbox Code Playgroud)

所以在这个例子中,依赖和依赖都是具体的.这违反了DIP原则,我们可以说这是依赖注入吗?在我的意见中,是的,我们可以.因为DI是所有对象创建,这些代码履行实际职责并从依赖中获取创建对象的操作.但同时它也没有遵循DIP.我在等你的想法:)先谢谢你的朋友.

dependency-injection solid-principles

4
推荐指数
1
解决办法
605
查看次数

Spring Security 已弃用 @AuthenticationPrincipal

如您所知, web.bind.annotation.AuthenticationPrincipal 中的 @AuthenticationPrincipal 已弃用。推荐使用 core.annotation.AuthenticationPrincipal。所以我们将导入语句更改为 core.annotation.AuthenticationPrincipal ,现在我们收到以下错误:

org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.xxx.xxx.authentication.OurUserDetailsImpl]: No default constructor found; nested exception is java.lang.NoSuchMethodException: com.xxx.xxx.authentication.OurUserDetailsImpl.<init>()
Run Code Online (Sandbox Code Playgroud)

是否存在与此注释相关的任何已知问题?PS我们使用参数化构造函数,我们没有默认构造函数,所以我知道这一点。非常感谢。

java spring spring-mvc spring-security deprecated

2
推荐指数
1
解决办法
2162
查看次数