JDBC *** 作数据库的基本步骤:
1、加载JDBC驱动程序。
在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过javalangClass类的静态方法forName(String className)实现。成功加载后,会将Driver类的实例注册到DriverManager类中。
2、提供JDBC连接的URL。
连接URL定义了连接数据库时的协议、子协议、数据源标识。
书写形式:协议:子协议:数据源标识。
3、创建数据库的连接。
要连接数据库,需要向javasqlDriverManager请求并获得Connection对象, 该对象就代表一个数据库的连接。
使用DriverManager的getConnectin(String url , String username , String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和 密码来获得。
4、创建一个Statement,要执行SQL语句,必须获得javasqlStatement实例。
Statement实例分为以下3 种类型:
(1)执行静态SQL语句。通常通过Statement实例实现。
(2)执行动态SQL语句。通常通过PreparedStatement实例实现。
(3)执行数据库存储过程。通常通过CallableStatement实例实现。
5、执行SQL语句。
Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 和execute
6、处理两种情况的结果。
(1)执行更新返回的是本次 *** 作影响到的记录数。
(2)执行查询返回的结果是一个ResultSet对象。
ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。
使用结果集(ResultSet)对象的访问方法获取数据。
7、关闭JDBC对象(关闭结果集-->关闭数据库 *** 作对象-->关闭连接)。
*** 作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声 明顺序相反:
(1)关闭记录集。
(2)关闭声明。
(3)关闭连接对象。
扩展资料:
一、JDBC(Java DataBase Connectivity,java数据库连接)
是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。
二、特性
Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。
三、用途
简单地说,JDBC 可做三件事:与数据库建立连接、发送 *** 作数据库的语句并处理结果。
参考资料来源:百度百科-JDBC
用JDBC就能实现
当你要读取数据时 先生成个MySQL的连接
然后Select 再生成个Oracle的连接 把rs弄到那个数据库中去
同步的问题
如果你用Spring的话 里面有事务处理
开起个事务
tmbegin(); //tm是事务对象
把JDBC查询Mysql 并插入Oracle数据的代码
用try catch捕获出来
在catch(Exception e)
{
tmrollback();//事务回滚
}
应该能够保证同步吧 修改Mysql时 用主键 像楼上所有就行。
一般数据库的实时同步都是通过服务器自身的特点或者集群件来实现的。
mysql可以做集群也可以做主从。主从就可以实时同步了。
实现方法有点长,搜索一些关键字 mysql 主从
>
建议你使用一下DBMoto这个工具,网上有免费的版本下载。使用此工具有一个前提条件就是同步的表必须都有Primary key或者Unique index。它可以直接读取数据日志,所以主从表你可以考虑一下transaction,其它就没有必要了。
使用此工具会遇到很多问题的,要求你有很强的数据库异常处理能力。 另外假如你是测试的或者你的公司不怎么出名,可以下载来完完,否则会找麻烦的。
将连接封装起来 一个工厂类
public class ConnectionFactory {
private static String _url = null;
private static String _user = null;
private static String _pwd = null;
private static String _driver = null;
public ConnectionFactory() {
// TODO Auto-generated constructor stub
}
static {
_driver = DBConfiggetDBConfig()getValue("driver");
_user = DBConfiggetDBConfig()getValue("user");
_pwd = DBConfiggetDBConfig()getValue("password");
_url = DBConfiggetDBConfig()getValue("url");
}
public static Connection getConnection() throws SQLException {
try {
ClassforName(_driver);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
Systemoutprintln("注册驱动失败");
eprintStackTrace();
throw new SQLException("注册驱动失败");
}
return DriverManagergetConnection(_url, _user, _pwd);
}
public static void release(Connection con, Statement stm, ResultSet rs) {
try {
if (con != null) {
conclose();
}
if (stm != null) {
conclose();
}
if (rs != null) {
rsclose();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
}
然后再写一个配置文件
public class DBConfig {
private static DBConfig instance;
private static Properties info = new Properties();
private static String path = "dbconfigproperties";
public DBConfig() {
// TODO Auto-generated constructor stub
readDBConfig();
}
private void readDBConfig() {
InputStream inputStream = null;
try {
if (!(new File(path)exists())) {
path = "/bin/" + path;
}
inputStream = new FileInputStream(path);
infoload(inputStream);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
eprintStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
eprintStackTrace();
} finally {
if (inputStream != null) {
try {
inputStreamclose();
} catch (IOException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
}
}
public synchronized static DBConfig getDBConfig() {
// 注意这里
if (instance == null) {
instance = new DBConfig();
}
return instance;
}
public String getValue(String key) {
return infogetProperty(key);
}
public static void main(String[] args) {
String driver = DBConfiggetDBConfig()getValue("driver");
String user = DBConfiggetDBConfig()getValue("user");
String pwd = DBConfiggetDBConfig()getValue("password");
String url = DBConfiggetDBConfig()getValue("url");
Systemoutprintln(driver + '\n' + user + '\n' + pwd + '\n' + url);
}
}
到时调用的时候
你将DBConfig中放在一个file文件中 读出来 下面就是DBConfig文件:是sqlserver的
想连接什么数据库 把driver url改一下就OK了 到网上查
driver=commicrosoftjdbcsqlserverSQLServerDriver
url=jdbc:microsoft:sqlserver://localhost:1433;databaseName=pubs
user=sa
password=
ConnectionFactorygetConnection(); 这样一句话就连接上了
ConnectionFactoryrelease(); 就关闭相关对象了
1利用Excel第三方工具,将Excel文件读取到内存中。使用最简单,方便的工具是apache的poi工具包,自己网上下载 >
以上就是关于JDBC使用步骤过程全部的内容,包括:JDBC使用步骤过程、mysql 和 Oracle 如何同步、求助编程实现数据库同步问题(java)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)