用来纪念一下,bug
搞了很长一段时间,各种报错
我的mysql是没有设置密码的,因此
我在网上Copy的这段代码
// b.与数据库进行连接
String url = "jdbc:mysql://localhost:3306/school?user=root&password=&useUnicode=true&characterEncoding=utf-8";
看了很久,说jar包变成小奶瓶,可是我早就变成了小奶瓶了啊!
难道是我的版本下的不对?因此我去sql官网下载了更低的版本,但是零零总总,报错的还是两种方式
第一种报错方式:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at OO.update(OO.java:16)
at OO.main(OO.java:43)
java.lang.NullPointerException
at OO.update(OO.java:32)
at OO.main(OO.java:43)
说明并未找到该jar包
- 方式一:可以可见直接导入压缩包是错误的
- 方式二:将jar包压缩出来
成功!!!!
如果你报错了,可以参考这种方式
- 方式三:新建一个lib文件夹
直接复制到lib文件夹下,不是压缩包哦~~~~~
右击
点击右边的ADD JARS,找到lib文件夹下的jar包
完结撒花~~~~
附上代码:
注意:开篇已经讲过我的错误,如果你的数据库没有设置用户名,密码,那么用户名默认是root,我这里的写法是
String url = "jdbc:mysql://localhost:3306/stt?user=root&password=&useUnicode=true&characterEncoding=utf-8";
String sql = “insert into sta values(‘10’,‘张三’,‘男’,‘26’)”;
!!!!!!!
我的错误就在这段代码,要注意的是stt?
这里是!!!我的数据库名称
sta是我在他之下建的新表
你相应的数据库名称,我用的是mysql,数据库软件是navicat
import java.beans.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class OO{
private static final String URL = "jdbc:mysql://localhost:3306/mysql";
public static void update() {
Connection conn = null;
java.sql.Statement stmt = null;
// a.导入驱动包,加载具体的驱动类
try {
Class.forName("com.mysql.jdbc.Driver");
// b.与数据库进行连接
String url = "jdbc:mysql://localhost:3306/stt?user=root&password=&useUnicode=true&characterEncoding=utf-8";
conn = DriverManager.getConnection(url);
stmt = conn.createStatement();
String sql = "insert into sta values('10','张三','男','26')";
int count = stmt.executeUpdate(sql);
if (count > 0) {
System.out.println("发送成功");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
try {
stmt.close();// 对象.方法
conn.close();
}catch(Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
public static void main(String[] args) {
update();
}
}
ps:在这里,踩雷的经验就已经附在上面了,告诉自己:一定要看报错的信息,一定要搞懂报错信息,不用一直想着是不是自己装的版本不对,回头看一看代码。就这样吧,小白先下啦~~~