iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >往DAO类中注入@PersistenceContext和@Resource有什么区别
  • 235
分享到

往DAO类中注入@PersistenceContext和@Resource有什么区别

2023-06-29 07:06:58 235人浏览 八月长安
摘要

本文小编为大家详细介绍“往DAO类中注入@PersistenceContext和@Resource有什么区别”,内容详细,步骤清晰,细节处理妥当,希望这篇“往DAO类中注入@PersistenceContext和@Resource有什么区别

本文小编为大家详细介绍“往DAO类中注入@PersistenceContext和@Resource有什么区别”,内容详细,步骤清晰,细节处理妥当,希望这篇“往DAO类中注入@PersistenceContext和@Resource有什么区别”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

DAO类注入@PersistenceContext和@Resource区别

@PersistenceContext

private EntityManager em;

注入的是实体管理器,执行持久化操作的,需要配置文件persistence.xml。

注入一堆保存实体类状态的数据结构,针对实体类的不同状态(四种,managedh或detached等)可以做出不同的反应(merge,persist等等),其实就是把数据从数据库里提出,然后在内存里处理的,再返回数据库的法则。

@Resource

是注入容器提供的资源对象,比如SessionContext MessageDrivenContext。或者你那个name指定的JNDI对象

可以理解为资源->数据源->也就是数据连接,基本上就是告诉程序数据库在哪里 

JPA中为什么EntityManager的注解要用@PersistenceContext

在使用springJPA的时候,看到如下代码

 @PersistenceContext private EntityManager entityManager;

于是就有些好奇,这个@PersistenceContext是几个意思,如果是实体注入的话,统一采用

@Autowired可以吗?于是上网查了下,几乎所有的EntityManager都是采用这个注解的,就去找了找原因。

往DAO类中注入@PersistenceContext和@Resource有什么区别

根据上面的描述,总结如下

  • @PersistenceContext是jpa专有的注解,而@Autowired是spring自带的注释

  • EntityManager不是线程安全的,当多个请求进来的时候,spring会创建多个线程,@PersistenceContext就是用来为每个线程创建一个EntityManager的,而@Autowired只创建了一个,为所有线程共用,有可能报错

  • 在使用EntityManager的时,请采用@PersistenceContext进行注解,而不要使用@Autowired

读到这里,这篇“往DAO类中注入@PersistenceContext和@Resource有什么区别”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: 往DAO类中注入@PersistenceContext和@Resource有什么区别

本文链接: https://www.lsjlt.com/news/323333.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 往DAO类中注入@PersistenceContext和@Resource有什么区别
    本文小编为大家详细介绍“往DAO类中注入@PersistenceContext和@Resource有什么区别”,内容详细,步骤清晰,细节处理妥当,希望这篇“往DAO类中注入@PersistenceContext和@Resource有什么区别...
    99+
    2023-06-29
  • 往DAO类中注入@PersistenceContext和@Resource的区别详解
    目录DAO类注入@PersistenceContext和@Resource区别@PersistenceContext@ResourceJPA中为什么EntityManager的注解要...
    99+
    2024-04-02
  • java中PersistenceUnit与PersistenceContext有什么区别
    在Java中,PersistenceUnit和PersistenceContext是与Java持久化API(JPA)相关的两个重要注...
    99+
    2023-09-22
    java
  • Spring中@Autowired@Resource@Inject三个注解有什么区别
    目录@Autowired@Inject@Resourcejavax.annotation.Resource jdk 内置的,JSR-250 中的注解。 依赖注入通过 org.spri...
    99+
    2023-03-06
    Spring @Autowired注解 Spring @Resource注解 Spring @Inject注解
  • Spring中@Autowired、@Resource和@Inject注解的区别是什么
    这篇文章主要介绍了Spring中@Autowired、@Resource和@Inject注解的区别是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Spring中@Autowired、@Resource和@I...
    99+
    2023-07-05
  • SQL字符型注入和数字型注入有什么区别
    SQL字符型注入和数字型注入的区别:当输入的参数为整形时,存在注入漏洞,则是数字型注入,而字符型注入的参数是字符串。数字型不需要单引号来闭合,而字符串一般需要通过单引号来闭合的,例如://数字型:select * from tab...
    99+
    2024-04-02
  • MySQL中varchar和char类型有什么区别
    本篇内容介绍了“MySQL中varchar和char类型有什么区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!VARCHAR类型VARCH...
    99+
    2023-06-25
  • Oracle中NVARCHAR2和VARCHAR2类型有什么区别
    在Oracle数据库中,NVARCHAR2和VARCHAR2类型都用于存储字符串数据,但它们之间有一些区别: 存储方式: VA...
    99+
    2024-04-09
    Oracle
  • 批注和修订有什么区别
    这篇文章给大家介绍批注和修订有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、意思不同修订是一种模式,该模式可以将修改过程的痕迹保留下来;批注是一种补充,该补充是对内容的解释,可以随时删除,而不影响你的内容。...
    99+
    2023-06-14
  • python函数和类有什么区别
    python中函数与类的区别有以下几点规则不同类是一种引用数据类型,类似于byte、short、int(char)、long、float、double等基本数据类型;而函数必须声明后才可以被调用,调用格式为:函数名(实参)调用时函数名后的小...
    99+
    2024-04-02
  • C#中引用类型和值类型有什么区别
    在C#中,引用类型和值类型是两种不同的数据类型。 值类型是直接存储在堆栈中的数据,它们保存的是实际的数据值。当值类型的变量被赋值给另...
    99+
    2024-03-07
    C#
  • css中伪类和伪对象有什么区别
    这篇文章给大家分享的是有关css中伪类和伪对象有什么区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 伪类是用于向某些选择器添加特殊效果的;伪元素是...
    99+
    2024-04-02
  • Redis中的Set类型和List有什么区别
    数据结构: Set类型是无序且不重复的数据集合,类似于集合。 List类型是有序且可重复的数据集合,类似于数组。 元素的唯...
    99+
    2024-04-09
    Redis
  • php抽象类和普通类有什么区别
    PHP中,抽象类和普通类有以下区别:1. 定义方式:抽象类使用关键字`abstract`定义,普通类不使用。2. 实例化:抽象类不能...
    99+
    2023-08-09
    php
  • Android中的URI和Uri类有什么区别和联系
    本篇内容主要讲解“Android中的URI和Uri类有什么区别和联系”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Android中的URI和Uri类有什么区别和联系”吧!一、URI与Uri大家可...
    99+
    2023-06-02
  • java中 ${} 和 #{} 有什么区别
    目录前言1.功能不同1.1 ${} 的问题2.使用场景不同3.安全性不同3.1 使用 ${} 实现用户登录3.2 使用 #{} 实现用户登录总结前言 ${} 和 #{} 都...
    99+
    2024-04-02
  • c++内部类和外部类有什么区别
    在C++中,内部类和外部类的主要区别在于其访问权限和作用域。 内部类是在另一个类的内部声明的类,在外部类的作用域内,内部类可以访...
    99+
    2024-04-02
  • C++11类型别名和typedef有什么区别
    这篇文章主要讲解了“C++11类型别名和typedef有什么区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++11类型别名和typedef有什么区别”吧!为什么需要别名下面的说明只是一...
    99+
    2023-06-19
  • javascript中原始类型和引用类型有什么区别
    小编给大家分享一下javascript中原始类型和引用类型有什么区别,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、区别(1)原始类型存储的是值,引用类型存储的...
    99+
    2023-06-15
  • Java中引用类型和原始类型有什么区别
    本篇文章给大家分享的是有关Java中引用类型和原始类型有什么区别,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。另...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作