首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Hibernate中设置连接

在Hibernate中设置连接
EN

Stack Overflow用户
提问于 2011-06-27 13:24:14
回答 3查看 2.2K关注 0票数 0

我有一个要求,我需要在hibernate中设置连接,我不想让hibenate创建连接。原因是,到目前为止,我们把用户名,密码,连接相关的东西放到hibernate.cfg.xml中,没有加密,这在测试阶段,当我们需要测试应用程序时,这会导致问题。

要求是这样的,比如我不想在hibernate.cfg.xml中做任何类型的更改,相反,我可以添加一个属性文件,我可以在其中添加所有与连接相关的属性,并以加密的形式将其添加到。还会有一个字段,说明数据库类型。现在,根据数据库类型,我需要创建连接并将其设置为hibernate,以便稍后在处理过程中可以使用该连接。

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-04 13:14:01

我浏览了hibenate的文档,发现有一种方法可以创建您自己的连接,然后将其放入hibernate中。

我遵循了以下步骤:

在hibernate.cfg.xml.中,

  1. 添加了以下属性

<property name="connection.provider_class">com.home.framework.HibernateConnectionProvider</property>

  1. 创建了一个实现org.hibernate.connection.ConnectionProvider的类HibernateConnectionProvider,并覆盖了接口中的方法。
票数 1
EN

Stack Overflow用户

发布于 2011-06-27 15:49:12

可以在没有任何xml文件的情况下设置hibernate。只需使用属性,如下所示:

代码语言:javascript
复制
HBR_PROPS.put("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
HBR_PROPS.put("hibernate.connection.driver.class", "com.mysql.jdbc.Driver");
HBR_PROPS.put("hibernate.connection.username", "username");
HBR_PROPS.put("hibernate.connection.password", "somepassword");

以此类推。然后使用以下命令初始化配置:

代码语言:javascript
复制
cfg = new Configuration()
   .addClass(com.example.package.First.class)
   .addClass(com.example.package.First.class);
cfg.setProperties(HBR_PROPS);
sf = cfg.buildSessionFactory();

现在您可以通过从您自己的“encrypted_hbr_properties.xml”(示例)文件中读取属性文件中的设置,在代码中解密它们,并在HBR_PROPS中进行设置,来管理属性文件中的设置。

希望这会有帮助=)

票数 1
EN

Stack Overflow用户

发布于 2011-06-28 04:26:08

您可以创建一个使用您的自定义数据源的会话工厂。您可以按照自己喜欢的方式对连接属性进行加密,并让数据源对其进行解密。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6488888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档