数据库——应⽤程序与数据库的连接
⽬录1.
2.
1
JDBC, 全称为Java DataBase Connectivity standard, 它是⼀个⾯向对象的应⽤程序接⼝(API), 通过它可访问各类关系数据库。JDBC也是java核⼼类库的⼀部分。
JDBC的最⼤特点是它独⽴于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了⼀些Java类分别⽤来表⽰与数据库的连接(connections), SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能⽅便地与数据库交互并处理所得的结果。使⽤JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。
要通过JDBC来存取某⼀特定的数据库,必须有相应的JDBC driver,它往往是由⽣产数据库的⼚家提供,是连接JDBC API与具体数据库之间的桥梁。
通常,Java程序⾸先使⽤JDBC API来与JDBC Driver Manager交互,由JDBC Driver Manager载⼊指定的JDBC drivers, 以后就可以通过JDBC API来存取数据库。
ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的⼀个组成部分,它建⽴了⼀组规范,并提供了⼀组对数据库访问的标准API(应⽤程序编程接⼝)。这些API利⽤SQL来完成其⼤部分任务。ODBC本⾝也提供了对SQL语⾔的⽀持,⽤户可以直接将SQL语句送给ODBC。
⼀个基于ODBC的应⽤程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可⽤ODBC API进⾏访问。由此可见,ODBC的最⼤优点是能以统⼀的⽅式处理所有的数据库。
2
这⾥提供⼀个具体的例⼦,step by step ,为刚刚接触数据库的⼈提供⼀个更为直观感性的认识。
我们具体使⽤ java应⽤程序连接 mysql 数据库,整体步骤如下:
1、java 开发环境的准备
2、安装 java IDE以便开发 (如 Eclipse )
3、安装 mysql 数据库
4、下载数据库对应的 jdbc driver
5、将 jdbc driver 库导⼊到程序环境中
6、连接测试
1、java 开发环境的准备:配置java开发环境——JDK的配置。步骤⽹上很多⽐如:
2、搜索下载合适你系统(64bit/32bit)的IDE, ⽐如 Eclipse :
3、下载并安装mysql数据库,各个平台
  按照安装教程,设置好默认⽤户(root)的密码,安装完毕后,可以打开终端命令⾏登录数据库:(更加具体的使⽤,请访问官⽅)mysql -u root -p
创建待会要测试的数据库, 并创建要测试的表:
create database test;
use test;
create table temp(name varchar(20), password varchar(20));
这时应该可以使⽤语句查看到你的表了:
show tables;    //查看当前数据库所有的表
describe temp;  //查看表的具体字段信息
select*from temp;  //查看表的数据
4、下载mysql 提供的 jdbc driver , ( Windows下载 (mysql-connector-java-5.1.40.zip) Linux下载: (mysql-connector-java-5.1.))
下载好后解压,任意路径都可以,不要以后随便给删掉就可以。
5、将jdbc driver 库导⼊到Eclipse 环境中
1)在 Eclipse 中建⽴⽤户库(以后不同的项⽬,要连接数据库,直接为⼯程加⼊这个⽤户库就好了):
   打开Eclipse,进⼊菜单windows->prefrences,进⼊Java->Build Path->user libraries,选择新建,命名为mysql,路径为:.../mysql-connector-java-5.X.XX-bin.jar
  2) 创建java project,命名为testmysql,右键项⽬名称,选择Build Path->Add libraries,从列表中选择user library,在next界⾯中选择上⾯部署的mysql安装包即可;
6、现在可以开始写代码连接刚才的数据库了。在testmysql⼯程下新建class,命名为Test.java⽂件:
public class Test {
public static void main(String args[]) {
try {
Class.forName("sql.jdbc.Driver"); // 加载MYSQL JDBC驱动程序
System.out.println("Success loading Mysql Driver!");
} catch (Exception e) {
System.out.print("Error loading Mysql Driver!");
mysql下载jar包e.printStackTrace();
}
try {
Connection connect = Connection(
"jdbc:mysql://localhost:3306/test", "root", "XXXXXXX"); //test 为你的数据库名称,XXXXXXX 这⾥改为你⾃⼰的密码
System.out.println("Success connect Mysql server!");
       //插⼊⼀⾏数据
PreparedStatement Statement = connect
.prepareStatement("INSERT INTO temp(name,password) VALUES(?,?)");
Statement.setString(1, "name3");
Statement.setString(2, "password3");
// 获取temp表的数据来打印
Statement stmt = ateStatement();
ResultSet rs = uteQuery("select * from temp");// temp 为表的名称
System.out.println("query result:");
while (rs.next()) {
System.out.String("name")+" :"+rs.getString("password") );
}
} catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
}
运⾏程序,执⾏完毕后查看数据库,此时应该可以看到:
mysql> select * from temp;
+-------+-----------+
| name  | password  |
+-------+-----------+
| name3 | password3 |
+-------+-----------+
1 row in set (0.00 sec)
到这⾥,例⼦就讲完了,希望对初学者有所帮助:)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。