您的位置:首页 > 编程语言 > Java开发

java技术之RMI+odbc中环境搭建主要步骤及异常处理

2017-06-26 21:17 393 查看
这篇文章假设看官们会RMI.

首先看一下Rmi的配置环境步骤

一,.配置jdk环境

在环境变量中

用户的JAVA_HOME目录中设置jdk的根目录如:D:\java\jdk7

用户的classPath设置%JAVA_HOME%\lib\tools.jar和%JAVA_HOME%\lib\dt.jar

系统的path目录下配置%JAVA_HOME%\jre\bin

记得点确定!!!记得点确定!!!记得点确定!!!

2.设置数据源

可能出现的异常:[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

首先确定你所使用的jdk是64还是32位的,如果64位那么打开C:\Windows\System32, 32位打开C:\Windows\SysWOW64打开其中的

odbcad.exe(什么?你说我说错了吧?64对应System32,这坑爹吧!然而事实就是这样system32里面的是64位的,而SysWOW64是32位的,windows的这个大坑啊!如果你太天真,那么就会报上面的异常)

打开对应的odbcad.exe出现的页面如下:(注意页面上面所标注的64位)

点击添加

选择MicroSoft Acess Driver(*.mdb)(没有相关驱动的话去下载安装)

下载链接:

点击确定:

设置数据源名(你写的项目中应该与之对应)点击选择,

在目录中选中所选的数据库文件(*.mdb)点击确定

结果如下

3.给jre设置相关的权限(因为java的安全问题,所以java的运行环境有很多没有设置的权限)

在这种情况下我们有两个选择:给所有的java指令赋以相关权限或者给执行这个java命令的用户以相关权限。接下来分别看一下这两个方法:

//这里特别说明一下:一般我们在安装jdk的时候可能会有两个安装包分别为jre(你没特别设置的话一般在c:\program file\java下)

//和jdk(即你上面JAVA_HOME中所配置的那个目录),注意设置jdk的时候全部使用jdk的那个包的路径。

1).给你所用的jre设置相关的权限

在jdk的\jre\lib\security下找到java.policy文件,打开(注意以管理员模式打开,不然不能修改)

在grant里添加:

[b]*************[/b]对应报错:Java.security.AccessControlException: access denied (“java.lang.RuntimePermission”“accessClassInPackage.sun.jdbc.odbc”)[b]*******[/b]

permission java.lang.RuntimePermission”accessClassInPackage.sun.jdbc.odbc”;

[b]**********[/b]对应报错: java.security.AccessControlException:access denied (java.lang.RuntimePermissionfile.encoding read)

permission java.util.PropertyPermission “file.encoding”, “read”;

[b]************[/b]对应报错 : java.security.AccessControlException:access denied ( “java.net.SocketPermission”,”connect”,”liesten”)[b]************[/b]

permission java.net.SocketPermission “127.0.0.1:1099”,”accept”;

permission java.Net.SocketPermission “127.0.0.1:1099”,”listen”;

permission java.net.SocketPermission “127.0.0.1:1099”,”resolve”;

permission java.net.SocketPermission “127.0.0.1:1099”,”connect”;

其实不用accept等四个都加,报错需要哪个加哪个。。。。。。。。。。。。。。。。。。。。。。。。。。

什么!?你说太麻烦了吧,加着加那的!!行,那么看2)

2)给执行这个java命令的用户以相关权限

以管理员的形式打开cmd,输入policytool

点击添加策略条目

点击添加权限

权限里面选择AllPermission,之后一路确定到

点击文件另存为到 你所使用的用户下(也就是Desktop上层的那个目录)命名位.java.policy 注意java前面的’.’

结束。。。。。。。。。。。。。。

接下来就可以运行你的程序了

注:还可能出现的异常有:



你肯定没执行 start rmiregistry 或者说程序的Server端在rmi.Naming.bin()之前里面没有java.rmi.registry.LocateRegistry.createRegistry(1099)。两者效果一样,只做其中之一,如果两个都做会报错:



如果还有其他奇怪的错误,将jdk用1.8以下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java rmi odbc