RT. Mysql5.6版本竟然废弃了com.mysql.jdbc.Driver????
?????一群黑人冒号... 替代的是com.mysql.cj.jdbc.Driver
进入正题:
TIP:针对Mysql5.6版本以上的java连接
1.下载,并解压Mysql连接器
首先去Mysql下载java-connection.. 传送门(windows 64版本)
将文件(mysql-connector-java-8.0.11.jar)解压到jsp目录下的lib(我的jsp目录在:D:\jsp\apache-tomcat-9.0.5\lib)文件夹下:
2.在Mysql中创建数据库Student,并在数据库Student创建表stu_info
2.1创建数据库Student指令:
CREATE DATABASE Student;
2.2进入数据库Student
use Student
2.3创建表stu_info
CREATE TABLE stu_info(
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(45) DEFAULT NULL,
phone VARCHAR(20) DEFAULT NULL,
PRIMARY KEY(id)
)ENGINE=InnoDB;
3.编写jsp代码
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import="java.sql.*" %>
<%
//加载驱动程序
String driverName="com.mysql.cj.jdbc.Driver";
//数据库信息
String userName="root"; //数据库用户名
//密码
String userPasswd="root123"; // 数据库密码
//数据库名
String dbName="Student";
//表名
String tableName="stu_info";
//将数据库信息字符串连接成为一个完整的url(也可以直接写成url,分开写是明了可维护性强)
String url="jdbc:mysql://localhost:3306/"+dbName+"?user="+userName+"&password="+userPasswd;
Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection(url);
Statement stmt = conn.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = stmt.executeQuery(sql);
out.print("id");
out.print("|");
out.print("name");
out.print("|");
out.print("phone");
out.print("<br>");
while(rs.next()) {
out.print(rs.getString(1)+" ");
out.print("|");
out.print(rs.getString(2)+" ");
out.print("|");
out.print(rs.getString(3));
out.print("<br>");
}
out.print("<br>");
out.print("ok, Database Query Successd!");
rs.close();
stmt.close();
conn.close();
%>