SQL: Java 连接 MySQL
2016-06-16 16:26
555 查看
1. 开发环境
- java: Eclipse
- MySQL 5.7
- MySQL Connect/J
具体的开发环境搭建就不在这里赘述。
2. Java连接Mysql步骤
将Eclipse 项目中加入jar (connector J): 项目属性 -> Java Biuld Path -> add external JARs....
准备MySQL,
Java 程序:
我建了两个类, DBHelper.java 和 Test.java
DBHelper.java 文件如下:
Test.java 文件(程序)如下:
运行结果如下:
注意:由于我们没有配置SSL所以,出现WARN: Establishing SSL ....
SSL 配置,请自行百度。
- java: Eclipse
- MySQL 5.7
- MySQL Connect/J
具体的开发环境搭建就不在这里赘述。
2. Java连接Mysql步骤
将Eclipse 项目中加入jar (connector J): 项目属性 -> Java Biuld Path -> add external JARs....
准备MySQL,
<span style="font-size:18px;">mysql> create database mydb; Query OK, 1 row affected (0.00 sec) mysql> use mydb; Database changed mysql> create table test_tbl -> (id serial, -> name varchar(20) not null); Query OK, 0 rows affected (0.10 sec) mysql> desc test_tbl; +-------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------------------+------+-----+---------+----------------+ | id | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | name | varchar(20) | NO | | NULL | | +-------+---------------------+------+-----+---------+----------------+ 2 rows in set (0.04 sec) mysql></span>
Java 程序:
我建了两个类, DBHelper.java 和 Test.java
DBHelper.java 文件如下:
<span style="font-size:18px;">package SQL.Demo; import java.sql.*; import static java.lang.System.out; public class DBHelper { public static final String driver = "com.mysql.jdbc.Driver"; //url指向要访问的数据库 public Connection conn = null; public PreparedStatement pstmt = null; public Statement stmt = null; public ResultSet res = null; public void Connect(String url, String user, String passward){ try { // 利用forname 实现动态加载类 Class.forName(driver); conn = DriverManager.getConnection(url, user, passward); stmt = conn.createStatement(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e){ e.printStackTrace(); } } public void Close(){ try { if (!conn.isClosed()) conn.close(); } catch (SQLException e){ e.printStackTrace(); } } public void Excute(String sql){ try{ stmt.execute(sql); }catch (SQLException e){ e.printStackTrace(); } } public void ExcuteQuery(String sql){ try{ res = stmt.executeQuery(sql); }catch (SQLException e){ e.printStackTrace(); } } public void ExcutePreparedStmt(String sql){ try { pstmt = conn.prepareStatement(sql); res = pstmt.executeQuery(sql); }catch (SQLException e){ e.printStackTrace(); } } public void PrintResult(){ System.out.println("------result-------"); try { ResultSetMetaData resdata = res.getMetaData(); int i; // 打印结果的字段 for ( i = 0; i < resdata.getColumnCount(); i++){ //out.println("colum count = " + resdata.getColumnCount()); String columnname = resdata.getColumnName(i+1); System.out.print(columnname + "\t\t"); } // 打印结果的数据(除字段外) out.println(); while(res.next()){ for (i = 0; i < resdata.getColumnCount(); i++){ String s = res.getString(i+1); System.out.print(s + "\t\t"); } out.println(); } } catch (SQLException e){ e.printStackTrace(); } } }</span>
Test.java 文件(程序)如下:
package SQL.Demo; public class Test { public static void main(String[] args){ //驱动程序 //"jdbc:mysql://127.0.0.1:3306/scutcs"; String url = "jdbc:mysql://localhost:3306/mydb"; //数据的用户和密码 String user = "andrew"; String pwd = "andrew123"; //DBHelper db1 = new DBHelper(); DBHelper db1 = new DBHelper(); db1.Connect(url, user, pwd); String sql = "Insert into test_tbl (name) values ('Andrew'); "; db1.Excute(sql); db1.Excute("Insert into test_tbl (name) values ('Ray'); "); db1.Excute("Insert into test_tbl (name) values ('Fenny'); "); db1.ExcuteQuery("select * from test_tbl"); db1.PrintResult(); db1.Close(); } }
运行结果如下:
注意:由于我们没有配置SSL所以,出现WARN: Establishing SSL ....
SSL 配置,请自行百度。
相关文章推荐
- jdbc中的Statement和PreparedStatement接口对象
- MySQL中的integer 数据类型
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- MySQL存储过程
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- PropertyChangeListener简单理解