因为用Oracle太占电脑资源了,受不了了,所以我用MySql数据库,弄了一早晨,总算连接成功。
我从安装MySql数据库到用eclipse中建立测试页面全程进行详细步骤的描述。
一、MySql数据库
1.安装数据库
2.安装navicat上面的截图有版本号。
3.连接数据库
这时已经创建了一个可以使用的数据库了。
二、创建jdbc连接程序
1.打开eclipse Java EE,(我用的是这个版本,其他的版本也可以)。创建项目这些都会吧,不在多说了。
2.导入jar包到webRoot 下web-INF的lib目录下,它会自动添加的。
3.继续将jar包复制到我截图中jdk路径的目录下,根据自己jdk安装的位置而不同,我的是在D盘。
4.接下来就编写java测试程序了。直接贴代码,要注意的地方我会在代码上面注明。
1 package test; 2 3 import java.sql.*; 4 public class ConnectToMySQL { 5 public static Connection getConnection() throws SQLException , 6 java.lang.ClassNotFoundException{ 7 String url = "jdbc:mysql://localhost:3306/shopping"; //这里的shopping是数据库名,填入自己创建的名字,前面的不用改。 注意这部分和Oracle连接时的分隔号不同。 8 Class.forName("com.mysql.jdbc.Driver"); //加载数据库驱动,不用改 9 String userName = "ivan"; //连接数据库的帐号和密码,填入自己的。 10 String password = "tom"; 11 Connection con = DriverManager.getConnection(url,userName,password); //建立连接,不用改 12 13 return con; 14 } 15 public static void main(String[] args) { //测试开始,其余的地方就是通用的方法。 16 try{ 17 Connection con = getConnection(); 18 Statement sql = con.createStatement(); 19 sql.execute("drop table if exists student"); 20 sql.execute("create table student(id int not null auto_increment," + 21 "name varchar(20) not null default 'name',math int not " + 22 "null default 60,primary key(id));"); 23 sql.execute("insert student values(1,'AAA','99')"); 24 sql.execute("insert student values(2,'BBB','77')"); 25 sql.execute("insert student values(3,'CCC','65')"); 26 String query = "select * from student"; 27 ResultSet result = sql.executeQuery(query); 28 System.out.println("Student表数据如下:"); 29 System.out.println("---------------------------------"); 30 System.out.println("学号"+" "+"姓名"+" "+"数学成绩"); 31 System.out.println("---------------------------------"); 32 int number; 33 String name; 34 String math; 35 while(result.next()){ 36 number = result.getInt("id"); 37 name = result.getString("name"); 38 math = result.getString("math"); 39 System.out.println(number + " " + name + " " + math); } 40 sql.close(); 41 con.close(); 42 }catch(java.lang.ClassNotFoundException e){ 43 System.err.println("ClassNotFoundException:" + e.getMessage()); 44 }catch(SQLException ex){ 45 System.err.println("SQLException:" + ex.getMessage()); 46 } 48 } 49 }
ok,你搞定了没?