关于Java的JDBC链接MySQL数据库时遇到的问题(Sublime Text 3版本)

关于Java的JDBC链接MySQL数据库时遇到的问题(Sublime Text 3版本)

因为eclipse这个IDE对我的电脑及其不友好,干脆不用了。(一开始不知道在哪下的(忘记了)打开的时候都报错,然后要我查看日志文件(我当然看不懂),咳咳,我是Java的初学者,后来停了一段时间之间一直在用sublime,学到JDBC的时候要导入MySQL的驱动包,我当时不会在sublime上导入,于是又去下载eclipse)
这里先说一下一开始用eclipse时候遇见的问题,希望有会的大佬帮忙看看是怎么回事。

eclipse遇见的问题。

写import java.sql.;这个语句的时候报错,说the import java.sql can’t be resolved。
按照CSDN上各种解决方法,比如右键再点开build path的configure build path,把libraries里的jre system library remove掉再重新add library进来。以及project里的clean也一点用也没有。后来我发现了一个问题,把jre system library remove掉后,import其他的库依旧可以用,感觉eclipse用的并不是classpath里设置的jre system library 而是其他位置的,所以才一直用不了java.sql.
?(在sublime里面java.sql.*是没问题的)。

sublime Text 3里导入mysql-connector-java-8.0.16.jar的方法。(直接上代码)

import java.sql.*;
import java.util.Properties;
import java.net.URL;
import java.net.URLClassLoader;

public class Sql1
{
private static Connection conn;
public static Connection getConn(String url,String user,String pass) throws Exception
{
if(conn==null)
{
URL[] urls={new URL(“file:mysql-connector-java-8.0.16.jar”)};
var myClassLoader = new URLClassLoader(urls);
var driver = (Driver) myClassLoader.loadClass(“com.mysql.jdbc.Driver”)
.getConstructor().newInstance();
var props = new Properties();
props.setProperty(“user”,user);
props.setProperty(“password”,pass);
conn=driver.connect(url,props);
}
return conn;
}
public static void main(String[] args) throws Exception
{
try (
Connection conn=getConn(“jdbc:mysql://127.0.0.1:3306/select_database?serverTimezone=UTC”,
“user”,“password”);
//select_database 选择的数据库的名字
//user 用户名
//password 密码
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(“select * from wawa”);
)
{
System.out.println("-------------------");
while(rs.next())
{
System.out.println(rs.getInt(1)+"\t"+rs.getString(3)+"\t"+rs.getString(2));
}

	}
}

}

这里用的是URLClassLoader类,java为ClassLoader提供了一个URLClassLoader实现类,
它可以从本地文件系统获取二进制文件来加载类(也可以从远程主机获取二进制文件来加载类)上面程序直接从文件系统中加载MySQL驱动,并使用该驱动来获取数据库连接。
注:该类加载器的类加载路径是当前路径下的mysql-connector-java-8.0.16.jar文件,将MySQL驱动复制到该路径下才可以正常加载到com.mysql.jdbc.Driver类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值