W7 32位,java Rmijdbc远程连接其他电脑上的access数据库

转载http://blog.csdn.net/hongdi/article/details/5482470

在此之前没接触过access,项目需要,特来学习,有不足的请多多指教

例如A电脑要连接B电脑上的access数据库,B电脑上要装有java环境,调试好。access数据库后缀为mdb。


其次要在B电脑上设置odbc,odbc在控制面板中,系统和安全,管理工具,数据源(ODBC) ,打开面板后选择系统DSN,点击添加


选择这个类型的驱动程序,点击完成

点击

数据源名在A电脑上编写URL的时候用到,点击选择,选择B电脑上的数据库。

 http://forge.ow2.org/project/showfiles.php?group_id=8&release_id=623下载RmiJdbc.jar包。

配置系统环境变量。右键计算机——“高级”——“环境变量”,在“系统变量”中,新建变量名为CLASSPATH的系统变量,被配置其值。

CLASSPATH=%CLASSPATH%; E:/RmiJdbc/dist/lib/RmiJdbc.jar;

注意:E:/RmiJdbc/dist/lib/RmiJdbc.jarRmijdbc.jar放置的目录

与java设置环境变量类似。


使用”win”+r组合键,输入”cmd”,调出命令提示行对话框,输入:

java org.objectweb.rmijdbc.RJJdbcServer

运行结果如下:

注意:RmiJdbc服务启动后不能关闭,即不能关闭上图所示对话框。否则将提示:java.rmi.ConnectException: Connection refused to host错误。


package access;
import java.sql.Connection;        
import java.sql.DriverManager;        
import java.sql.ResultSet;        
import java.sql.SQLException;        
import java.sql.Statement;    

public class AccessUtil {

	public Connection conn=null; 
    
	 
	   /**
	    * 远程连接access
	    * @return
	    * @throws Exception
	    */
	    public Statement getStatement() throws Exception{
	    	Class.forName("org.objectweb.rmijdbc.Driver").newInstance();
         String url = "jdbc:rmi://192.168.111.111/jdbc:odbc:test_db";  //中间的是B电脑的ip地址,最后的test_db是B电脑odbc的数据源名
         System.out.println("准备连接数据库");
	        conn = DriverManager.getConnection(url); 
	        System.out.println("数据库连接成功");
	        return conn.createStatement(); 
	    } 
	   
	   
	    /** 
	     * 查询数据库 
	     * @param stmt 
	     * @param query 
	     * @return 
	     * @throws Exception 
	     */ 
	    public ResultSet executeQuery(Statement stmt,String query) throws Exception{ 
	        ResultSet rs=stmt.executeQuery(query); 
	        return rs; 
	    } 
	   
	    /** 
	     * 更新数据库 
	     * @param stmt 
	     * @param query 
	     * @throws SQLException 
	     */ 
	    public void executeUpdate(Statement stmt,String query) throws SQLException{  
	        stmt.executeUpdate(query); 
	    } 
	   
	    /** 
	     * 关闭链接 
	     * @throws SQLException 
	     */ 
	    public void close() throws SQLException{ 
	        if(conn!=null) 
	            conn.close(); 
	    } 
	   
	    public static void main(String args[]) throws Exception { 
	    	AccessUtil db=new AccessUtil(); 
	        String query="select  * from tbl_msg"; 
	      //  Statement stmt=db.getStatement();
	        Statement stmt=db.getStatement();//获取到statement后你就可以为所欲为了
ResultSet rs=db.executeQuery(stmt, query); while(rs.next()){ System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)) ; } rs.close(); stmt.close(); } }

//如果access数据库是加密的话,请先将数据库解密,即取消密码。百度上专门讲如何破解密码和加密,这里就不再复述了。

//在Eclipse中运行这段java代码,就可以了。

//如果有不懂的可以QQ我,1323397207


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值