网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用于Java SE的Hibernate.
.Java初学者入门需掌握的30个基本.
.在Java编程中如何使用线程.
.程序员必读:对JAVA语言的十个常.
.编写跨平台Java程序注意事项!.
.编写Java application时,如何设置.
.菜鸟初学Java的备忘录(三).
.在java体系结构中集成Macromedia.
.Java编程技巧(信号量,管道).
.返回中文unicode的byte字符串.
.Struts应用程序的流程控制简介.
.完全掌握Java中的“包”机制.
.详解J2EE与IBM对象关系的数据库.
.经典Java开发工具介绍(4):Bor.
.Lucene 索引文件格式的规格定义.
.java指南之使用图形:自定义绘图.
.Java 3D的动画展示图(Part1-使用.
.J2EE1.4新特性之JDBC3.0的新特性.
.Eclipse主要插件Lomboz介绍(4)_C.
.减法赋值运算符 (-=).

Java对Domino Objects的访问控制

发表日期:2008-1-5



  Java 对 Domino Objects 的访问是通过高级包 lotus.domino 进行的。根据运行时环境,这个包中的接口是在其他两个包中的一个包中实现的:
  


  lotus.domino.local 提供了从同一计算机上的 Notes/Domino 软件进行调用。
  


  lotus.domino.cso 提供了从通过远程连接访问的 Domino 服务器进行调用。
  


  对于本地访问,Java 程序运行在安装有 Notes 客户机或者 Domino 服务器的计算机上。本地类由 JNI(Java Native Interface)构建来,用于访问与 JVM(Java Virtual Machine)相同的进程中的 Notes/Domino 二进制文件。对于远程访问,Java 程序使用 CORBA(Common Object Request Broker Architecture)请求 Domino 服务器所提供的服务。远程类使用 CORBA 通过 TCP/IP 网络访问服务器。远程访问由以下两个部分组成:
  


  客户机通过 HTTP 协议获得服务器的初始对象,作为 IOR (Interoperable Object Reference)。
  


  客户机通过 IIOP 连接进一步获得其他对象。

  

 Java对Domino Objects的访问控制

  在 lotus.domino 中,NotesFactory 类提供了 createSession 和其他方法,以便在 Java 应用程序和 servlet 中启用对 Domino Objects 的访问。非凡的调用方式确定了访问是本地还是远程的。要编译使用 lotus.domino 包的 Java 程序,类路径必须包含 Notes.jar(本地)或者 NCSO.jar(远程)。例如:
  set classpath=%classpath%;c:\lotus\domino\Notes.jar 或者 set classpath=%classpath%;c:\lotus\domino\data\domino\java\NCSO.jar 其中 Notes.jar 可以在任何 Notes/Domino 安装的程序目录中找到。NCSO.jar 可以在 Domino Designer 或 Domino 服务器数据目录下的 domino\java 目录中找到。
  


  本地调用

  createSession 的调用没有参数,第一个参数为 null 或者第一个参数为空字符串都表示本地调用。下列代码是等价的:
  


  Session s = NotesFactory.createSession()

  Session s = NotesFactory.createSession((String)null)

  Session s = NotesFactory.createSession("")

  


  将 null 转换成 String,以避免过载冲突。要从应用程序和 servlet 中实现本地调用,路径中必须包含 Notes/Domino 的程序目录,类路径中必须包含 Notes/Domino 程序目录中的 Notes.jar。例如:
  


  set path := %path%;c:\lotus\domino

  set classpath := %classpath%;c:\lotus\domino\Notes.jar

  


  Notes.jar 中包含 lotus.domino 和 lotus.domino.loca 包。本地调用需要用 NotesThread 类治理线程。NotesThread 类扩展了 java.lang.Thread,包含专门针对 Domino 的初始化和终止代码。您有以下三种选择:
  


  通过继续来执行线程。

  通过 Runnable 接口来执行线程。
  


  通过静态方法来执行线程。
  


  通过继续来执行线程
  要通过继续来执行线程,需要扩展 NotesThread,而不是 Thread,并且需要包含 runNotes 方法,而不是 run 方法。NotesThread 线程可以和任何其他线程一样通过 start 方法来启动。这种方式比静态方法(稍后讨论)轻易使用,且不易出错。
  


  import lotus.domino.*;
  

  public class myClass extends NotesThread

  {

  public static void main(String argv[])

  {

  myClass t = new myClass();

  t.start();

  }

  public void runNotes() // entry point for Notes thread

  {

  try

  {

  Session s = NotesFactory.createSession();

  // Operational code goes here

  }

  catch (Exception e)

  {

  e.printStackTrace();

  }

  }

  }
  


上一篇:用 for/in 在 Java 5.0 中增强循环 人气:869
下一篇:ClearQuest管理和执行ClearCase中的软件部署 人气:776
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐