《转载》java远程连接access数据库
2017-11-14 10:26
323 查看
本文转载自http://www.voidcn.com/article/p-tlrtkqlp-k.html
如果使用vc等工具,这也不是难题,使用ado不是很困难,但是使用java怎么办。。。
有人说是用odbc数据源,是的,但是odbc数据源怎么远程访问(使用java),网上有人这样写
jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=//192.168.0.1/目录/db.mdb";
简直是胡说八道,如果没有使用特别的手段(比如服务器路径映射等等。。我没有试过,反正直接这样写实不行的,这个我试过)。
那么有什么办法能够远程连接access数据库呢,使用rmijdbc( http://rmijdbc.objectweb.org)
,简单说一下怎么用。
1 首先下载rmijdbc.jar, 加入系统环境变量,
使你的CLASSPATH变量指向RmiJdbc.jar包:它位于RmiJdbc的dist/lib子目录
Unix example (bash style):
Windows
example:
2 接着,运行 java org.objectweb.rmijdbc.RJJdbcServer(这一步很重要,是启动rmijdbc服务,否则连接的时候报Connection refuse异常)。
在32位的jdk环境下安装成功
![](https://images2017.cnblogs.com/blog/490089/201711/490089-20171114174908577-965859808.png)
在64位的jdk环境下安装报错了
![](https://images2017.cnblogs.com/blog/490089/201711/490089-20171114143055843-1049168029.png)
3
剩下的当然就是怎么连接了。
第一步:在服务器上建一个odbc数据源,指向一个.mdb文件
第二步:客户端连接代码
Class.forName("org.objectweb.rmijdbc.Driver").newInstance();
String url = "jdbc:rmi://192.168.0.201/jdbc:odbc:english";
明白了吧,很简单。
这样,当规模不大的时候,我们就不需要安装Sql server 这些比较重量级的家伙了,采用access轻便又实用。
参考帖子:
http://blog.sina.com.cn/s/blog_5ee1ad480100ccsr.html
http://blog.csdn.net/f562867448/article/details/39499793
http://blog.csdn.net/hongdi/article/details/5482470(该帖验证步骤是正确的)
另一种方法:
package com.xu.access;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
//首先需要添加 ucanaccess 的jar包
//ucanaccess下载–>(http://download.csdn.net/detail/qq_34814092/9852513)
//ucanaccess官网–>(https://sourceforge.net/projects/ucanaccess/)
//然后引入 ucanaccess 的 jar 包
//可以只引入核心 ucanaccess 的 jar 包,建议全部引入
public class Access {
public static void main(String[] args) throws Exception {
//———————————————————————————————
Class.forName(“net.ucanaccess.jdbc.UcanaccessDriver”);//这个驱动的地址不要改
Connection con=DriverManager.getConnection(“jdbc:ucanaccess://G:\Access\bookmng.mdb”,”“,”“);
//DriverManager.getConnection(“jdbc:ucanaccess://G:\Access\bookmng.mdb”,”“,”“);
//只依据自己的实际情况更改 G:\Access\bookmng.mdb 即你的Access文件(如text.mdb) 的绝对路径或相对路径
//后面的两个参数可以不用填写
//除了上面的两步下面的操作和 MySQL Oracle 的基本一样
Statement stmt=con.createStatement();
//———————————————————————————————
//查找数据
ResultSet rs=stmt.executeQuery(“select * from test”);
while(rs.next()){
System.out.println(rs.getString(“name”));
}
1 rmijdbc远程连接access数据库
正常情况下,常用的数据库sql server, oracle,mysql等(曾经有同学居然说除了sql server和oracle就没有DBMS了。。。天。。。),做为一个服务在服务器上跑,java需要远程连接的时候使用jdbc非常方便。可是有的时候,也就是在一些非常特殊的情况下,使用sql server, oracle等数据库有点大炮打蚊子的感觉,这时候从问题规模上说,使用access是比较合理的,但是有需要远程访问这么办。如果使用vc等工具,这也不是难题,使用ado不是很困难,但是使用java怎么办。。。
有人说是用odbc数据源,是的,但是odbc数据源怎么远程访问(使用java),网上有人这样写
jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=//192.168.0.1/目录/db.mdb";
简直是胡说八道,如果没有使用特别的手段(比如服务器路径映射等等。。我没有试过,反正直接这样写实不行的,这个我试过)。
那么有什么办法能够远程连接access数据库呢,使用rmijdbc( http://rmijdbc.objectweb.org)
,简单说一下怎么用。
1 首先下载rmijdbc.jar, 加入系统环境变量,
使你的CLASSPATH变量指向RmiJdbc.jar包:它位于RmiJdbc的dist/lib子目录
Unix example (bash style):
export CLASSPATH=$CLASSPATH:/usr/local/RmiJdbc/dist/lib/RmiJdbc.jar
Windows
example:
set CLASSPATH=%CLASSPATH%;D:\RmiJdbc\dist\lib\RmiJdbc.jar
2 接着,运行 java org.objectweb.rmijdbc.RJJdbcServer(这一步很重要,是启动rmijdbc服务,否则连接的时候报Connection refuse异常)。
在32位的jdk环境下安装成功
![](https://images2017.cnblogs.com/blog/490089/201711/490089-20171114174908577-965859808.png)
在64位的jdk环境下安装报错了
![](https://images2017.cnblogs.com/blog/490089/201711/490089-20171114143055843-1049168029.png)
3
剩下的当然就是怎么连接了。
第一步:在服务器上建一个odbc数据源,指向一个.mdb文件
第二步:客户端连接代码
Class.forName("org.objectweb.rmijdbc.Driver").newInstance();
String url = "jdbc:rmi://192.168.0.201/jdbc:odbc:english";
明白了吧,很简单。
这样,当规模不大的时候,我们就不需要安装Sql server 这些比较重量级的家伙了,采用access轻便又实用。
参考帖子:
http://blog.sina.com.cn/s/blog_5ee1ad480100ccsr.html
http://blog.csdn.net/f562867448/article/details/39499793
http://blog.csdn.net/hongdi/article/details/5482470(该帖验证步骤是正确的)
另一种方法:
2 java 使用 ucanaccess 连接Access数据库
转载地址package com.xu.access;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
//首先需要添加 ucanaccess 的jar包
//ucanaccess下载–>(http://download.csdn.net/detail/qq_34814092/9852513)
//ucanaccess官网–>(https://sourceforge.net/projects/ucanaccess/)
//然后引入 ucanaccess 的 jar 包
//可以只引入核心 ucanaccess 的 jar 包,建议全部引入
public class Access {
public static void main(String[] args) throws Exception {
//———————————————————————————————
Class.forName(“net.ucanaccess.jdbc.UcanaccessDriver”);//这个驱动的地址不要改
Connection con=DriverManager.getConnection(“jdbc:ucanaccess://G:\Access\bookmng.mdb”,”“,”“);
//DriverManager.getConnection(“jdbc:ucanaccess://G:\Access\bookmng.mdb”,”“,”“);
//只依据自己的实际情况更改 G:\Access\bookmng.mdb 即你的Access文件(如text.mdb) 的绝对路径或相对路径
//后面的两个参数可以不用填写
//除了上面的两步下面的操作和 MySQL Oracle 的基本一样
Statement stmt=con.createStatement();
//———————————————————————————————
//查找数据
ResultSet rs=stmt.executeQuery(“select * from test”);
while(rs.next()){
System.out.println(rs.getString(“name”));
}
相关文章推荐
- JAVA远程连接ACCESS数据库
- W7 32位,java Rmijdbc远程连接其他电脑上的access数据库
- java的远程数据库连接,超时问题解决(转载请注明原处)
- adobe air for flex(利用blazeds连接远程java服务)
- 使用java远程连接redis
- 不用设置ODBC数据源实现Java与Access数据库的连接
- Spring-Java配置文件远程连接mongdb数据库
- 远程桌面连接历史记录清除(转载)
- [转载]Java远程通讯可选技术及原理
- Java连接Access数据库
- hbase连接java(转载)
- java 连接Access数据库
- Java程序通过JDBC连接远程的数据库SQL Server
- Java中,不用配置数据源,通过JDBC-ODBC与Access数据库建立连接
- elasticsearch中的java.io.IOException: 远程主机强迫关闭了一个现有的连接
- java连接Access数据库的代码
- JAVA 远程连接db2 windows 平台
- java 连接access数据库!!
- ADO.NET远程访问Access数据库的连接字符串
- java连接access数据库