java中使用redis的方法,快速使用java开发软件

2022年 10月 20日 发表评论
腾讯云正在大促:点击直达 阿里云超级红包:点击领取
免费/便宜/高性价比服务器汇总入口(已更新):点击这里了解

从DominoR4.65.0,使用Serverlet的方式已经有了一些改变,这儿有关于在R5中

怎样使用它们的更新。在我们详细讨论细节之前,这儿对那些不熟悉Serverlet的

同志介绍一下其背景。

设计Serverlet的目的是为服务器提供”轻量级”服务,比如,一个Serverlet可

以从关系型数据库中分析表并把它们转化成XML.Serverlet通常用于完成一个指定

的任务。因此可以被认为是一个“小服务器“。

让一个Serverlet在Domino中运行是很简单的任务。但有一些地方要注意,我们将

从一个假想的情况开始。使用一个标准的HTML表单,我们可以获取用户输入的数

据并建立一个Notes文档。当然,实际上使用一个Notes表单更简单一点。但让我

们假定Domino仅用于作为一个Web服务器和一个数据库,并没有实际提供对数据库

的实际存取。

要使得Serverlet实际能够运行,首先在服务器上建立一个目录来存放Serverlet

并相应的.jar文件。编辑服务器配置文档以允许serverlet能通过Dominoserver

管理。然后编辑域以指向serverlet的URL(默认情况是/servelet)并编辑类路径

以指向.class和.jar文件的地方。

建议编辑notes.ini文件以包括以下两行:

DominoEnableJavaServlets=1

JavaUserClassess=

现在建立一个Servelet以执行该工作并建立一个文档。Serveltt必须工作于HTT

Ppost请求,所以有这种可能性,即从标准的httpservlet中继承其特性,并建

立一个方法以响应表单的post请求。处理post请求的代码类似如下:

...

NotesThread.sinitThread();

connectDB();

writeDetails(request);

NotesThread.stermThread();

try{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.println("

ServletSubmitResponse
");

out.println("

DatawrittentoNotesDocument

");

}catch(IOExceptione){

System.out.println(e.getMessage());

connectDB()方法仅仅是建立一个和Dominoserver的session.

publicvoidconnectDB(){

try{

session=NotesFactory.createSession();

db=session.getDatabase(null,"Servlet.nsf");

}catch(NotesExceptionne){

System.out.println(ne.getMessage());

}

}

writeDetails(request)把数据写到一个Notes文档.

publicvoidwriteDetails(HttpServletRequestrequest){

try{

doc=db.createDocument();

doc.appendItemValue("Form","ServletForm");

Enumerationenum=request.getParameterNames();

while(enum.hasMoreElements()){

StringparamName=(String)enum.nextElement();

doc.appendItemValue(paramName,request.getParameter(paramName));

}

doc.save();

}catch(NotesExceptionne){

System.out.println(ne.getMessage());

}

}

需要引起重视的地方是NotesThread在开始时被初试化,然后被终止。这是因为没

有NotesThread运行,Serverlet就不能和Domino建立serssion.

看看Serverlet的编写并运行servelet是学习的好方法。我们提供了源文件.jav

a,完整的代码.class,数据库.nsf和html表单用于下载,以指导你一个好的开始。

每当Servcelet被重新编译,domino都需要重新启动以生效。

小咸鱼

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: