Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Database/JDBC/SQL/JDO/Hibernate » MySQL  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 诡异的问题
ghostvic





发贴: 18
积分: 0
于 2008-01-09 23:58 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
小弟写了一个用java连接mysql的试验程序,在A机器(RH linux)上能正确运行,在B机器(windows)也能正确运行,但是到了我的机器C上( RH linux)却总出异常。

哪位大哥帮忙给解答一下,谢谢。

源代码:

import java.sql.*;

public class OpenDB {
String userName = "user";

String userPassword = "pass";

private String driverName = "org.gjt.mm.mysql.Driver";

private String url = "jdbc:mysql://210.29.134.131/USER";

Connection dbConn;

public Connection getConnection() {
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(url, userName, userPassword);
} catch (Exception ex) {
ex.printStackTrace();
System.out.println("Cannot connect to Database";
}
return dbConn;
}

public Statement getState() {
Statement stmt = null;
try {
stmt = this.getConnection().createStatement();
} catch (SQLException e) {
e.printStackTrace();
}
return stmt;
}

public int executeInsert(String strSql){
Statement stmt = this.getState();
try {
return stmt.executeUpdate(strSql);
} catch (SQLException e) {
System.out.println("Cannot execute Sql command: "+strSql);
}
return 0;
}

public ResultSet executeQuery(String strSql){
Statement stmt = this.getState();
try{
return stmt.executeQuery(strSql);
}catch (SQLException e){
System.out.println("Cannot execute Sql command: "+strSql);
}
return null;
}

public static void main(String[] args) {
OpenDB db = new OpenDB();

ResultSet rs = db.executeQuery("select * from user";
try {
while (rs.next()) System.out.println(rs.getString("DNS");
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
===================================================
异常为:
at java.lang.Class.initializeClass (libgcj.so.7)
at com.mysql.jdbc.NonRegisteringDriver.parseURL (NonRegisteringDriver.java:436)
at com.mysql.jdbc.NonRegisteringDriver.acceptsURL (NonRegisteringDriver.java:210)
at java.sql.DriverManager.getDriver (libgcj.so.7)
at java.sql.DriverManager.getConnection (libgcj.so.7)
at java.sql.DriverManager.getConnection (libgcj.so.7)
at OpenDB.getConnection (OpenDB.java:19)
at OpenDB.getState (OpenDB.java:30)
at OpenDB.executeQuery (OpenDB.java:4
at OpenDB.main (OpenDB.java:61)
Caused by: java.io.CharConversionException
at gnu.gcj.convert.Input_iconv.read (libgcj.so.7)
at java.lang.String.init (libgcj.so.7)
at java.lang.String.<init> (libgcj.so.7)
at com.mysql.jdbc.StringUtils.<clinit> (StringUtils.java:66)
at java.lang.Class.initializeClass (libgcj.so.7)
...9 more

====================================================
有以下几个条件:
1。A,C 在一个局域网,
2。数据库装在A上
3。A,C两个机器的mysql驱动都一样
4. 用C连接其他数据库也不行,出一样的异常。
5。A,C的classpath均为: /usr/java/jdk1.5.0_04/jre/lib/rt.jar:.:/etc/java/lib/mysql-connector-java-3.1.11-bin.jar
6。C上面跑其他的java程序正常




flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923