美章网 资料文库 数据库与web服务器分离时applet访问数据库方法范文

数据库与web服务器分离时applet访问数据库方法范文

本站小编为你精心准备了数据库与web服务器分离时applet访问数据库方法参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

数据库与web服务器分离时applet访问数据库方法

摘要:该文分析了applet连接数据库的限制,提出了通过连接解决applet限制的解决方案,实现了web服务器与数据库服务器部署在不同服务器的技术,均衡了负载,提高了系统运行效率。关键词:服务器;web;applel:数据库1引言随着java开发技术的不断提高。采用java开发的人员越来越多。Java利用ap-plet,可以随网页下载到客户端运行。并能通过JDBC与数据库连接,但是由于applet安全限制,applet仅能与它所在的web服务器建立连接,这意味着applet只能访问运行在web服务器上的数据库系统。如果数据库服务器和web服务器运行在一台主机上,不会出现任何问题,但由于web服务器和数据库服务器都需要大量的资源,实际部署中需要将web服务器和数据库服务器安装在不同的机器上,本文介绍了相应解决原理。2解决问题的思路applet的安全限制要求web服务器和数据库必须运行在一台机器上,要解决该安全限制可以通过两种方法,一是采用签名技术,该技术需要得到一个数字认证证书,对开发的applet打包,对每一个包签名,将签名证书导入到每个客户端;另外一种方法是采用“技术”,在web上配置服务,模拟数据库服务,接收客户端连接访问请求,再将访问请求转发到实际的数据库服务器上,该方法不需要修改原来的程序,实现方便,管理简单。3配置数据库连接服务oracle服务间的通信采用net8,它的主要功能是建立网络会话并在客户,服务器或服务器,服务器传输数据。在网络中要与数据库交互的每台机器(包括数据库主机)都安装net8,作用就像客户与服务器间的数据邮差。net8包括一系列产品,其中ConnectionManage连接管理器主要为了提高配置灵活性和运行效率而新增加的一个产品,功能相当于上文提到的连接,该管理器接受客户端net8的包并重新将接收的包转发到不同的服务器,对于运行net8的客户端,连接管理器就好像真正运行的数据库服务器,一个使用瘦JDBC驱动程序的applet可以连接到安装连接管理的web服务器,然后连接管理器将net8包重新发送到运行在不同主机的数据库服务器。使用oracle8连接管理器需要以下步骤:(1)安装并运行连接管理器。首先从oracle的安装介质上将连接管理器安装到web服务器上,安装完成后进行配置,在[ORACLE_HOME]/NET8/ADMIN下创建立CMAN.ORA文件。ORACLE提供的瘦JDBC驱动程序包含的net8不支持身份鉴别服务,因此必须将AUTHENTICATION_LEVEL参数设置为0。创建好该文件后,在操作系统下通过下面命令启动oracle连接管理器:cmctlstan。也可以通过系统管理使该服务器在机器启动时自动运行,启动完后,编写applet连接串。(2)编写连接到连接管理器的连接串。javaapplet中的连接串包括连接到连接管理器服务的参数和连接到数据库服务的参数,连接管理器参数包括采用的通信协议、端口号、服务器地址,连接到数据库服务器的参数包括通信协议、端口号、服务器地址、数据库SID,参数指定格式采用TNS的主键一值对。如果存在多个连接管理器,那么多个连接管理器可以组成“链”,applet同样可以连接到目的数据库。这样做时,将连接管理器地址列表按访问顺序添加到地址列表中,数据库监听地址必须在地址列表的末尾。(3)设置可以通过防火墙访问数据库的applet。防火墙是为了阻止非信任客户机访问服务器,使用瘦JDBC驱动程序的applet不能通过防火墙访问数据库。如果采用实现了连接的防火墙,则可以解决连接问题,将防火墙安装在web服务器上,相当于连接,防火墙将访问数据库的请求转发到实际的数据库服务器上。防火墙基于规则确定客户端可以连接或不能连接:首先将客户的机器名和规则进行比较,根据比较结果授权连接或拒绝连接,如果主机名查找失败,防火墙会再次抽取IP地址与规则匹配。设置通过防火墙连接的applet需要两步:①安装配置防火墙。在web服务器上安装与net8兼容的防火墙,设置防火墙访问规则:确保主机名“jdbc”不要出现在防火规则中,因为这个主机名被固定编码在驱动程序中作为虚主机名来强制使用IP地址查询。如果在规则中输入了这个主机名,那么所有使用oracle瘦JDBC驱动程序的applet都可以穿过防火墙。输入JDBCapplet运行客户端的IP地址,因为applet不能存取本地运行主机的主机名,所以必须以IP地址规则验证。②编写通过防火墙的连接串。该连接串必须指定防火墙主机名和要访问的数据库主机名。地址列表中的第一个地址是要连接的防火墙服务器,第二个地址是要访问的数据库,防火墙的地址必须在数据库服务器地址前面,所有的参数都是必须的。4结论运用本文介绍的原理和方法,解决了在oracle环境下,applet通过连接访问不同服务器上的数据库,具有以下优点:(1)软件开发方便,开发软件的方法不变,开发的applet程序不用修改。(2)部署方便,web服务器和数据库可以灵活的配置在不同机器上。(3)提高了系统整体效率,web服务器和数据库在不同机器上可以充分利用各自主机的资源,极大地提高系统运行效率。(4)方法具有通用性。