hibernate如何知道通过setter持久化传递给实体类的数据?

hibernate如何知道通过setter持久化传递给实体类的数据?,hibernate,Hibernate,我浏览过各种博客、文档、教程。。但是我没有看到hibernate内部发生的事情,比如hibernate如何知道通过setter持久化传递给实体类的数据? 请向我推荐文档或任何相关内容或任何答案。Hibernate用于生成查询的机制是call脏检查。默认情况下,从数据库加载记录后,Hibernate将在持久性上下文中存储实体的快照,并为您提供一个托管实体 在刷新时,框架将检查实体状态(托管、临时或删除),并在每个托管实体属性和相应的快照之间进行区分,以生成插入、更新和删除查询 这是默认的脏检查策略

我浏览过各种博客、文档、教程。。但是我没有看到hibernate内部发生的事情,比如hibernate如何知道通过setter持久化传递给实体类的数据?


请向我推荐文档或任何相关内容或任何答案。

Hibernate用于生成查询的机制是call脏检查。默认情况下,从数据库加载记录后,Hibernate将在持久性上下文中存储实体的快照,并为您提供一个托管实体

在刷新时,框架将检查实体状态(托管、临时或删除),并在每个托管实体属性和相应的快照之间进行区分,以生成插入、更新和删除查询

这是默认的脏检查策略,有一些CPU和内存占用。您可以使用一些机制来减少它,比如使用注释

另一个选择是使用。有了这个策略,每个实体都会记录内部发生了什么变化,在刷新时Hibernate只会询问每个实体发生了什么变化


希望有帮助

DB凭据将通过hibernate.cfg.xml文件传递,例如驱动程序类、url、用户名、密码、方言、hbm2ddl.auto等

在pojo类中,
@Table(name=“Table_name”)
用于访问数据库中的表

pojo类中的每个变量都用
@column(name=“column\u name”)
注释。变量指向表中相应的列。若要声明DB表中不存在的变量,请使用@Transient对其进行注释

现在,当您创建pojo类对象,然后使用setter将数据设置为object时,pojo中该对象的每个变量都会用一些值初始化,同时该变量会指向特定的列

因此,当您通过传递对象调用
persist()
save()
saveOrUpdate()
方法时,变量的值将输入到适当的列中

调用persistens或save或saveOrUpdate后,必须调用
commit()

转到youtube。搜索“durgasoft的hibernate教程”。这里有一个由纳文创作的35个视频系列。