当前位置:  技术问答>java相关

高手请帮忙,我的class连不上mysql数据库?

    来源: 互联网  发布时间:2015-08-07

    本文导语:  我的读取connection的java文件如下: import java.sql.*; import java.io.*; import java.util.Properties; import com.mysql.jdbc.Driver; //import org.gjt.mm.mysql.Driver;//这个驱动程序我也试过了,抛出的错误一样 public class MysqlConn implements Serializab...

我的读取connection的java文件如下:

import java.sql.*;
import java.io.*;
import java.util.Properties;
import com.mysql.jdbc.Driver;
//import org.gjt.mm.mysql.Driver;//这个驱动程序我也试过了,抛出的错误一样

public class MysqlConn implements Serializable{
  public MysqlConn() {
  }
    private static String MysqlJdbcDrv ="com.mysql.jdbc.Driver";
  //private static String MysqlJdbcDrv = "org.gjt.mm.mysql.Driver";
   private static String MysqlJdbcURL = "jdbc:mysql://localhost:3306/caac?user=root&password=12345678";
    public String getMysqlJdbcDrv() {
    return MysqlJdbcDrv;
  }
  public String getMysqlJdbcURL() {
    return MysqlJdbcURL;
  }
  public void setMysqlJdbcURL(/tech-qa-java/String MysqlJdbcURL/index.html) {
    this.MysqlJdbcURL = MysqlJdbcURL;
  }
  public void setMysqlJdbcDrv(String MysqlJdbcDrv) {
    this.MysqlJdbcDrv = MysqlJdbcDrv;
  }
  public static Connection getConnection(boolean isappserver) {
    if(!isappserver) {
        System.out.println("There is not any application server");
        return null;
      }
       Connection con = null;
     try {
         Class.forName(MysqlJdbcDrv).newInstance();
    }catch(Exception e){
      e.printStackTrace();
      return null;
    }

    try {

      con = DriverManager.getConnection(MysqlJdbcURL);//在这里就抛错了
       }catch(Exception e){
      e.printStackTrace();
      return null;
    }

    return con ;
  }
    private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException {
    ois.defaultReadObject();
  }
  private void writeObject(ObjectOutputStream oos) throws IOException {
    oos.defaultWriteObject();
  }

}
读取查询结果文件的函数如下,这是一个application可以运行,我调用了下面的方法.
public News getNews(short newsid){
       Connection con = null;
       PreparedStatement pst = null;
       ResultSet rs = null;
       Statement st = null;
       String sql = null;

       try {
         con = MysqlConn.getConnection(true);
         sql = "select newid,title,content1,picture,developtime,developbranch,createtime,articledes,ptutoindex from News where newsid=?";
         System.out.println("sql="+sql);
         pst.setShort(1,newsid);
         News news = null;
         if(rs!=null && rs.next()){
           news = new News();
           if (con==null) return null;
           news.Newsid = rs.getShort("newid");
           news.content = new String(rs.getBlob("content1").getBytes(0,2));
           news.Picture = rs.getString("picture");
           news.Developtime = rs.getTimestamp("developtime");
           news.Developbranch = rs.getString("developbranch");
           news.Createtime = rs.getDate("createtime");
           news.Articledes = rs.getString("articledes");
           if(rs.getShort("puttoindex")==1)
             news.Puttoindex=true;
           else news.Puttoindex=false;
           rs.close(); rs = null ;
           pst.close(); pst = null ;

         }
         return news;

         }catch(Exception e){e.printStackTrace();return null;}
          finally {
           try { rs.close();  } catch(SQLException ne) { ne.printStackTrace(); }
           try { pst.close(); } catch(SQLException ne) { ne.printStackTrace(); }
           try { con.close(); } catch(SQLException ne) { ne.printStackTrace(); }
         }

  }
错误显示:

java.sql.SQLException: Server configuration denies access to data source
at com.mysql.jdbc.MysqlIO.init(MysqlIO.java:446)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1605)
at com.mysql.jdbc.Connection.connectionInit(Connection.java:1056)
at com.mysql.jdbc.Driver.connect(Driver.java:297)
at java.sql.DriverManager.getConnection(DriverManager.java:512)
at java.sql.DriverManager.getConnection(DriverManager.java:193)
at com.touch.MysqlConn.getConnection(MysqlConn.java:88)
at com.touch.NewsConnBean.getNews(NewsConnBean.java:63)
at website.TestNews.getNews(TestNews.java:34)
at website.TestNews.main(TestNews.java:25)

我的配置如下:
mysql-3.23.51,已经起动了服务器,

我的mysql jdbc包


org.gjt.mm.mysql.Driver----mm.mysql-2.0.4-bin.jar
com.mysql.jdbc.Driver---Connection/J 的mysql-connector-java-3.0.0-bin.jar
两个驱动程序都已经尝试过了,都抛出同样的错误,请问高手,
(1)知道java如何与mysql通信吗?
(2)我的驱动程序包正确吗?如果不正确的话可以告诉我应该是哪个jar呢?可以给我发一个吗?jacquiyan@21cn.com


|
1、将localhost改为127.0.0.1试, 我曾经有一次就这问题。
2。你建立一个新的用户,记住要分配它localhost登陆的权限,在试!

然后我也不知道了!

|
一定是数据库访问权限设置问题,进入mysql后建立一个新用户并赋予权限就应该可以了!
如:
grant all on databaseName.* to yanyan identified by "123456";
flush privileges;
就把databaseName数据库的权限赋给了yanyan用户,并刷新。

然后修改
private static String MysqlJdbcURL = "jdbc:mysql://localhost:3306/caac?user=yanyan&password=123456";
就可以了!

|
Driver driver = (Driver) Class.forName( ServerTreeNode.driverName ).newInstance();
DriverManager.registerDriver( driver );
connection = DriverManager.getConnection( connURL, userID, passWord);

试一下,我一直用的就是那个org.gjt包,没问题的。而且也是2.0.4最好用了:)


|
这就不是jdbc的问题了!是你数据库设置问题!
你试试看在mysql下用root能否登陆!或者新建一个database用户

|
String driver ="org.gjt.mm.mysql.Driver";
Connection conn = null;
Statement stmt= null;
ResultSet rs = null;
String sql="select * from test";
Class.forName(driver); 
conn = DriverManager.getConnection("jdbc:mysql://localhost/caac?user=root&password=12345678"); 
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
你试试看!!!





|
很可能是你的环境配置问题了,

看在是本家的份上,我的MSN是sharetop@hotmail.com



|
请问你在jbuilder中运行吗?如果是,请看一下project->project properties->path->Required Libraries下有没加入你的mysql?
有可能是这个问题吧

    
 
 

您可能感兴趣的文章:

  • webmail问题,请高手帮忙!!!谁会使用IMP 3.0????!!!
  • 高手帮忙解释
  • 那位高手帮忙 100分
  • ★★★在linux下编译pro*c文件,提示"sqlcxt"没有定义,哪位高手帮忙,定赠分!
  • 装linux遇到问题,有高手在线帮忙吗?请发信息给我
  • free BSD ROOT密码丢失。请高手帮忙
  • red hat 9 不能上网了,请高手帮忙
  • 如何获取 文件类型?文件更新日期?多谢高手帮忙!
  • 高手帮忙啊!!!主板内置声卡怎么安装啊!
  • 升级Linux的问题,急!请高手帮忙!
  • 高手帮忙!linux初次安装的问题?
  • 急!高手帮忙!cximage库在Linux下运行使用的问题。
  • 高手帮忙,pkg安装包结束后,如何启动GUI程序?
  • 请高手帮忙
  • 请高手帮忙想个shell脚本
  • 高手帮帮忙,SHELL脚本编程~~~~~~~~~~~~~~~~~~
  • 限制ssh登录,放开sftp登录,怎么办?跪求高手帮帮忙!
  • 不小心远程注销了linux,然后再进去时桌面不见?急!!在线等,高手帮忙啊!
  • 一个linux shell编程求素数问题 高手帮帮忙啊
  • 100分 , 请高手帮忙...,linux网络配制,得解立即结贴
  • 高手救命,很急——ORACLE817安装在UNIXWARE711上,手工启动数据库后在netasst中连接错误,高手帮我看看?
  • 高手请看,关于数据库插入的问题
  • 请各位数据库高手指点
  • 求高手指点shell导入.dat文件到ORACLE数据库
  • linux数据库,高手指点
  • 请高手介绍一个LINUX下最小的免费数据库给我用啊!急
  • 请高手指教,关于linux下的数据库选择
  • Jbuilder中如何建立与SQL Server数据库的连接?(Jbuider高手请帮忙!)
  • 高手请入,LINUX下数据库问题
  • CSS属性参考手册 iis7站长之家
  • 求教有开发经验的高手关于XML和数据库的简单问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高手,高手,高高手请进!
  • 有熟悉EXIM的高手高手么??
  • to 高手:学java应该怎样一步步学习,从菜鸟到高手.
  • 高分请高手,高手定能解决
  • 请问高手在linux中用什么命令可以做linux的启动盘???在等待高手??
  • 有高手研究Agent++麽?里面有个thread.h,蛮难读的,请高手指点
  • 难道高手区里的人就是高手?
  • 在dos下用bc31挑战高手******开发mssql程序,连接时报link err:undefined symbol GETNOTE in module DBEXTERN?(挑战高手)
  • 真正的linux高手,请看过来,看你符合高手标准不?
  • 难道这没有高手吗?难道这没有乐于助人的高手?(高分酬谢62+50+50)
  • 关于我对linux高手用yum,非高手用源码的理由
  • 请教高手lvs的奇怪问题,我挺着急,希望高手别潜水,就就我,先谢谢了
  • 各个高手看看这个问题!本人第一次学习java所以要各位高手的帮助。。
  • :请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 我是新手,高手,高手,快来救我
  • EJB问题,请教高手(非高手莫进)
  • 请各位JAVA高手,网业高手看过来,我把能给的分都送出!!!只能给37分,哎!!
  • eWEEK沙龙征集高手座谈
  • 高手请进,中文乱码问题,这是我同一个问题的第五个帖子了,大伙帮忙,心情好郁闷.期待高手.


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3