/hibernate.cfg.xml 在 Intellij 中找不到
Posted
技术标签:
【中文标题】/hibernate.cfg.xml 在 Intellij 中找不到【英文标题】:/hibernate.cfg.xml not found in Intellij 【发布时间】:2017-09-07 01:44:13 【问题描述】:现在,我正在使用 IntelliJ 学习 Hibernate。所以,我创建了一个 Maven 项目并创建了一个 Hibernate 程序。但后来我得到了一个错误,就像这张图片中的节目一样。
然后我在互联网上搜索解决方案。但我找不到任何正确的解决方案。
【问题讨论】:
您尝试过这些吗:***.com/questions/24065817/…、***.com/questions/4934330/…、***.com/questions/8196370/hibernate-cfg-xml-not-found、***.com/questions/15258594/…? 你能展示一下你的项目目录结构吗? hibernate.cfg.xml 文件在哪里? 【参考方案1】:如果您正在使用 IntelliJ Idea,则在 src\main\java 下创建一个名为“resources”的文件夹。打开你项目的Modules设置,从左侧选择“Modules”,在“sources”选项卡中选择新创建的“resources”文件夹并将其标记为“Resources”。
那么这应该可以工作。
Configuration con = new Configuration().configure("hibernate.cfg.xml");
【讨论】:
【参考方案2】:我们开始...如果有人在 2020 年在 IntelliJ 中学习 Hibernate,这可能会对您有所帮助 :)
在 IntelliJ 中创建一个 JAVA 项目 2)在搜索框中输入 Hibernate 以在列表中找到必要的插件。 如果未选中 Hibernate 旁边的复选框,请选中它以启用插件。 点击确定。
添加 JDBC 驱动并测试连接using the common code snippet
如果运行正常,则将 Hibernate 配置文件添加到 src 目录的根目录
术语
实体类:映射到数据库表的 Java 类
这个实体类应该映射到实际的数据库表
ORM - 对象关系映射
所以应该有一些方法将这个类映射到一个数据库表
JAVA 注释 - 用于映射的现代且首选的注释
step 1: Map the class to the database table
@Entity
@Table(name="db_name")
step 2: Map fields to database columns
@Id(signify primary key)
@Column(name="column_name")
喜欢这里..
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="student")
public class Student
@Id
@Column(name = "id")
private int id;
@Column(name = "first_name")
private String firstName;
@Column(name = "last_name")
private String lastName;
@Column(name = "email")
private String email;
public Student()
开发 Java 代码以执行数据库操作
Hibernate 的两个关键人物:
SessionFactory:
这个读取休眠配置文件并创建会话对象。 只是因为沉重的对象,我们只在应用程序中创建一次并使用 一遍又一遍。
Session :
它就像 JDBC 连接中的包装器,用于保存/检索 来自数据库的对象。这是一个短暂的对象并已检索 来自 SessionFactory。
public static void main(String [] args)
SessionFactory factory = new Configuration()
.configure("hibernate.cfg.xml")
.addAnnotatedClass(Student.class)
.buildSessionFactory();
Session session = factory.getCurrentSession();
try
// use the session object to save/ retrieve java objects
//create a test db object
Student temoStudent = new Student("Tim","NIke","timnike@gmail.com");
// start transaction
session.beginTransaction();
// save the student
session.save(tempStudent);
//commit the transaction
session.getTransaction().commit();
finally
factory.close();
【讨论】:
【参考方案3】:将你的 hibernate.cfg.xml 文件放在“resource”文件夹中。
在 main 你需要像这样配置它
Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
【讨论】:
以上是关于/hibernate.cfg.xml 在 Intellij 中找不到的主要内容,如果未能解决你的问题,请参考以下文章
使用 hibernate.cfg.xml 时更改 hibernate.properties 文件的位置
Hibernate----配置文件Hibernate.cfg.xml
hibernate.cfg.xml 和 applicationContext.xml的关系,
如何使用 hibernate.properties 文件而不是 hibernate.cfg.xml
/hibernate.cfg.xml 在 Intellij 中找不到
hibernate.cache.region.factory_class 在 hibernate.cfg.xml 中是必需的