润乾连接domino数据库方法
Lotus Domino是当今办公自动化系统的主流开发平台之一,Domino自带一个非关系型数据库——文档型数据库,而目前大部分企业的信息都储存在诸如SQL Server等关系型数据库中,因此,在开发办公自动化系统过程中势必要涉及Domino和关系数据库的数据交换问题。下面介绍一些润乾报表从domino数据库取数的方法。主要分两种方式:
一:JDBC方式
1、 需要的环境:
在连接前必须安装:
a.Sun JDK 1.1.6或是更高的版本,并设置JVM的环境。
b.Lotus Domino Server 4.6 或是更高的版本。
c.Lotus Domino Driver for JDBC 1.1 。
2、连接程序编写:
a.必须将包 lotus.jdbc.domino.* 包含在程序开头。例:import lotus.jdbc.domino.*
b.调出Domino的驱动程序。例:Class.forName(lotus.jdbc.domino.DominoDriver); 注意捕捉ClassNotFoundException异常。
c.给出JDBC URL。例:url=jdbc:domino:/DatabaseName.nsf/ServerName 解释为jdbc:domino: 为JDBC URL连接协议的固定字,DatabaseName.nsf 为Domino数据库文件名,ServerName 为Domino服务器名。假设连接服务器名为Webserver上的names.nsf , url=jdbc:domino:/names.nsf/webserver ;假设连接服务器名为Webserver,office目录下的job.nsf , url=jdbc:domino:/officejob.nsf/webserver ;设置连接超时100秒,url=jdbc:domino:/simpler.nsf;threadtimeout=100 。
d. 建立连接。Connection con = DriverManager.getConnection(String JDBCURL);
3、部分连接例程:
import java.sql.*;
import lotus.jdbc.domino.*;
public class example{
public static void main (String[] args) {
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
String sql= SELECT * FROM Person;
String connStr = jdbc:domino:/names.nsf/webserver/weboa;
Class.forName(lotus.jdbc.domino.DominoDriver);
con = DriverManager.getConnection(connStr);
stmt = con.createStatement();
rs = stmt.executeQuery(sql); … .. }}
4、在润乾自定义数据集中,只需要将该连接例程获得的结果集转化为DATESET二维数组即可。
注意:1:客户端要装lotus客户端lotus notes,保证能正常连接
2:将jdbc驱动放置到数据库端Lotus\Notes\jvm\lib\ext下,重启数据库
二:ODBC方式
虽然能用JDBC方式连接domino数据库,但是IBM后来又对这种方式抛弃掉了。所以Notes6以后多是通过IBM提供的ODBC驱动来连接Domino/Notes数据库的。
下面是在润乾报表中使用ODBC连接Domino/Notes数据库的步骤。
1. 安装NotesSQL,并使用Authentication List Manager来配置到数据库服务器的ODBC授权。
下载NotesSQL安装包,并安装完成。Authentication List Manager配置页面如下:
2. 配置WINDOWS系统Domino/Notes ODBC数据源。
3. 在润乾报表设计器中配置Domino/Notes ODBC数据源。