怎么样在AS400平台上将lotus domino连接外部关系数据库SQL Server 2000?

怎么样在AS400平台上将lotus domino连接外部关系数据库SQL Server 2000?

AS400平台上lotus domino连接 外部 关系数据库 SQL Server 2000
【环境】:

oa AS400(或者windows 2000server)、domino R5.0.9

fdinfo linuxTomcat

数据库: SQL Server 2000

开发工具:Lotus Designer R6.5.3

【方案一】:
JDBC

【具体内容】:

1、新建一个java代理。

属性设置:

共享
运行此代理的时间:从代理列表中选择执行

指定代理操作的文档:运行一次(可能使用@Command
目标:

作为Web用户运行

安全等级 3

2、使用以下代码:

import lotus.domino.*;

import java.sql.*;

import java.io.*;

import java.util.Vector;

public class JavaAgent extends AgentBase {

public void NotesMain() {

PrintWriter response=getAgentOutput();

try {

Session session = getSession();

AgentContext agentContext = session.getAgentContext();

try{

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

System.out.println("load JDBC drivers succeed------JDBC ---");

//建立连接

Connection con =DriverManager.getConnection

("jdbc:microsoft:sqlserver://192.168.86.37:1433;

DatabaseName=SMSServer","sa","*******");

if(!con.isClosed()) {

System.out.println("connect to fdinfo DB succeed");

//response.println("connect to fdinfo DB succeed/n");//浏览器输出

} else{

System.out.println("con.isClosed");

response.println("con.isClosed/n");//浏览器输出

}

Statement stmt=null;

String sender=”aaaaa”;

String msg=”bbbbb”;

String ReceiverMobileNo=”123456789”;

String SQL="INSERT INTO OutBox

(ExpressLevel,Sender,ReceiverMobileNo,Msg,Url)

VALUES (0,'"+sender+"','"+ReceiverMobileNo+"','"+msg+"',0)";

stmt.executeUpdate(SQL);

System.out.println("insert record succeed");

//关闭Statement实例;

stmt.close();

stmt = null;

response.println("succeed/n");//浏览器输出

}catch(SQLException e1){

e1.printStackTrace();

response.println("err/n");//错误

}

} catch(Exception e) {

e.printStackTrace();

response.println(e);//错误

}

}

}

3、引入合适的JDBC驱动:

注: 驱动一定要找到最合适的版本,这里用到是msbase.jar, mssqlserver.jar, msutil.jar
点击编辑项目,把jar文件引入当前代理

4、表单调用代理
我选择的是执行热点时候

@Command([ToolsRunMacro];"test");

5、总结

以上实例只实现了对SQL Server 2000数据库的数据插入工作,删除等功能不在此文讨论范围内