Fak*_*ikh 5 java spring hibernate
有点像这个链接描述:用 编程方式配置Hibernate动态用户名和密码
只是,我需要相同的实现,但我无法指定applicationContext.xml而不是hibernate.cfg.xml,因为我的应用程序在dataSource里面指定了hibernate属性,applicationContext.xml
所以
<bean id="dataSourceShrms" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@192.168.100.155:1546:TSHRMS" />
<property name="username" value="${database.username}" />
<property name="password" value="${database.password}" />
</bean>
Run Code Online (Sandbox Code Playgroud)
编辑:使用像JDBC登录conn=DBUtils.getConnection(user, pass, host)(直接从Web应用程序UI),但使用Hibernate.
想象一下,您的数据库url、driverClassname、用户名和密码位于同名的变量中。在您的情况下,这些变量将从输入页面或用户引入该数据的任何地方填充。
并且您有一个MyClass类,在com.myapplication.POJO 包上配置了 Hibernate 注释
因此,您只需创建 Configuration 对象并查询数据库:
Configuration configuration = new Configuration().configure()
.setProperty("hibernate.dialect", "org.hibernate.dialect.Oracle8iDialect")
.setProperty("hibernate.connection.driver_class", driverClassname)
.setProperty("hibernate.connection.url", url)
.setProperty("hibernate.connection.username", username)
.setProperty("hibernate.connection.password", password)
//In next line you just tell Hibernate which classes are you going to query
configuration = configuration.addPackage("com.myapplication.POJO").
addAnnotatedClass(MyCustomClass.class);
StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties());
SessionFactory factory = configuration.buildSessionFactory(ssrb.build());
//We open session with database
Session session = factory.openSession();
List<MyCustomClass> result = null;
try {
//Here we get the list of MyCustomClass objects from database
result = session.createQuery("FROM MyCustomClass").list();
} catch (Exception e) {
e.printStackTrace();
} finally {
session.close();
}
Run Code Online (Sandbox Code Playgroud)
重要提示:我认为Oracle8iDialect是 Oracle DB 最常见的。如果您使用的是Oracle 10g或 Oracle 9i,则应该使用org.hibernate.dialect.Oracle10gDialect或org.hibernate.dialect.Oracle9iDialect。此处完整参考:http://docs.jboss.org/hibernate/orm/3.5/javadocs/org/hibernate/dialect/package-summary.html
| 归档时间: |
|
| 查看次数: |
3539 次 |
| 最近记录: |