求助:hibernate警告 Could not obtain connection metadata是什么问题?

xhongyang 2005-12-01 02:01:26
我编写了一个Test类调用hibernate:
package test;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.HibernateException;
import org.hibernate.Transaction;
import org.hibernate.classic.Session;
public class Test {
public Test() {
}

public int insertAdmin(Admin c) throws HibernateException {
Transaction tx = null;
Session s = null;
try{
SessionFactory sf=new Configuration().buildSessionFactory();
s = sf.openSession();
tx = s.beginTransaction();
s.save(c);
tx.commit();
} catch (HibernateException he) {
if (tx != null) {
tx.rollback();
}
throw he;
} finally {
s.close();
}
return 1;
}



public void myTest(){
Admin c=new Admin();
c.setLoginName("test");
c.setPassword("test");
c.setTrueName("test");
System.out.println(insertAdmin(c));
}

public static void main(String[] args) {
Test test = new Test();
test.myTest();
}
}

被调用的Admin如下,对应数据库的Admin表:
package test;
public class Admin {
private String loginname;
private String password;
private String truename;

public String getLoginName() {
return loginname;
}

public String getPassword() {
return password;
}

public String getTrueName() {
return truename;
}

public void setLoginName(String string) {
loginname = string;
}

public void setPassword(String string) {
password = string;
}

public void setTrueName(String string) {
truename = string;
}

}




运行时报错如下:


test.Test
2005-12-1 13:29:18 org.hibernate.cfg.Environment <clinit>
信息: Hibernate 3.0
2005-12-1 13:29:18 org.hibernate.cfg.Environment <clinit>
信息: loaded properties from resource hibernate.properties: {hibernate.connection.password=****, hibernate.jdbc.batch_versioned_data=true, hibernate.query.substitutions=true 1, false 0, yes 'Y', no 'N', hibernate.use_identifer_rollback=true, hibernate.cache.region_prefix=hibernate.test, hibernate.show_sql=true, hibernate.proxool.pool_alias=pool1, hibernate.default_batch_fetch_size=8, hibernate.jdbc.use_streams_for_binary=true, hibernate.max_fetch_depth=3, hibernate.connection.pool_size=1, hibernate.connection.username=system, hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver, hibernate.cache.provider_class=org.hibernate.cache.HashtableCacheProvider, hibernate.use_sql_comments=true, hibernate.cglib.use_reflection_optimizer=true, hibernate.order_updates=true, hibernate.dialect=org.hibernate.dialect.Oracle9Dialect, hibernate.connection.url=jdbc:oracle:thin:@localhost:1521:icts}
2005-12-1 13:29:18 org.hibernate.cfg.Environment <clinit>
信息: using java.io streams to persist binary types
2005-12-1 13:29:18 org.hibernate.cfg.Environment <clinit>
信息: using CGLIB reflection optimizer
2005-12-1 13:29:18 org.hibernate.cfg.Environment <clinit>
信息: using JDK 1.4 java.sql.Timestamp handling
2005-12-1 13:29:19 org.hibernate.cfg.Configuration secondPassCompile
信息: processing extends queue
2005-12-1 13:29:19 org.hibernate.cfg.Configuration secondPassCompile
信息: processing collection mappings
2005-12-1 13:29:19 org.hibernate.cfg.Configuration secondPassCompile
信息: processing association property references
2005-12-1 13:29:19 org.hibernate.cfg.Configuration secondPassCompile
信息: processing foreign key constraints
2005-12-1 13:29:19 org.hibernate.dialect.Dialect <init>
信息: Using dialect: org.hibernate.dialect.Oracle9Dialect
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: Maximum outer join fetch depth: 3
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: Default batch fetch size: 8
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: Generate SQL with comments: enabled
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: Order SQL updates by primary key: enabled
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory createQueryTranslatorFactory
信息: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
2005-12-1 13:29:19 org.hibernate.hql.ast.ASTQueryTranslatorFactory <init>
信息: Using ASTQueryTranslatorFactory
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: Query language substitutions: {no='N', true=1, yes='Y', false=0}
2005-12-1 13:29:19 org.hibernate.connection.DriverManagerConnectionProvider configure
信息: Using Hibernate built-in connection pool (not for production use!)
2005-12-1 13:29:19 org.hibernate.connection.DriverManagerConnectionProvider configure
信息: Hibernate connection pool size: 1
2005-12-1 13:29:19 org.hibernate.connection.DriverManagerConnectionProvider configure
信息: autocommit mode: false
2005-12-1 13:29:19 org.hibernate.connection.DriverManagerConnectionProvider configure
信息: using driver: oracle.jdbc.driver.OracleDriver at URL: jdbc:oracle:thin:@localhost:1521:icts
2005-12-1 13:29:19 org.hibernate.connection.DriverManagerConnectionProvider configure
信息: connection properties: {user=system, password=****}
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
警告: Could not obtain connection metadata
java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)
at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:361)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:442)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:321)
at java.sql.DriverManager.getConnection(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:140)
at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:118)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1505)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1053)
at test.Test.insertAdmin(Test.java:31)
at test.Test.myTest(Test.java:54)
at test.Test.main(Test.java:59)
2005-12-1 13:29:19 org.hibernate.cfg.SettingsFactory buildSettings
信息: JDBC batch size: 15
......


classes根目录下放置了hibernate.properties及hibernate.cfg.xml文件。
classes\test目录下放置了Admin.hbm.xml文件。
工程中引用了hibernate3.jar及oracel数据库驱动程序classes12.jar等。

不知是哪里有问题,会报Could not obtain connection metadata的错误呢?

肯请各位大虾指点一下呀!
...全文
11058 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xhongyang 2005-12-01
  • 打赏
  • 举报
回复
谢谢yyc178(张凡) ,确实是hibernate.properties里面的数据库连接出错。
yyc178 2005-12-01
  • 打赏
  • 举报
回复
你连接数据库有问题。 检查用户名称与密码

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧