重分求Domino用JDBC连接关系数据库的例子。

NickSam 2003-10-16 10:36:26
Domino用JDBC连接关系数据库(如SQL Server)的例子。并问问在Domino中如何调试Java代码?System.out.println打印在哪里去了,我在哪里看这些打印的信息,谢谢。
...全文
58 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
NickSam 2003-10-17
  • 打赏
  • 举报
回复
谢谢各位啊,诸位还有什么好东东啊,推荐推荐啊。
wuxing 2003-10-17
  • 打赏
  • 举报
回复
http://www-900.ibm.com/cn/support/nav/200103/p57.shtml

好东西哦。我编译通过了,有问题可以发段消息问我
gjd111686 2003-10-16
  • 打赏
  • 举报
回复
手头没有代码,只好给你一个自动生成的.
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import org.apache.jasper.runtime.*;
import java.sql.*;
import java.util.*;
import java.io.*;
import java.text.*;

public class Login_jsp extends HttpJspBase {


public String getStr(String strValue)
{
try
{
String strBuffer=strValue;
byte[] byteBuffer=strBuffer.getBytes("ISO8859-1");
String strReturn=new String(byteBuffer);
return strReturn;
}
catch(Exception e)
{
return null;
}
}
public String getUserName(String strId)
{
try
{
String odbcQuery;
Connection odbcConn;
Statement odbcStmt;
ResultSet odbcRs;
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Db_River\\Db_River.mdb";
//odbcConn=DriverManager.getConnection(url,"","");

Class.forName("oracle.jdbc.driver.OracleDriver");
odbcConn=DriverManager.getConnection("jdbc:oracle:thin:@(description=(address=(host=10.70.151.10)(protocol=tcp)(port=1521))(connect_data=(sid=orcl)))","zcy","zcy");

odbcStmt=odbcConn.createStatement();
odbcQuery="select * from UserInfo where Id="+strId;
String strUserName;
strUserName="";
odbcRs=odbcStmt.executeQuery(odbcQuery);
if(odbcRs.next())
{
strUserName=odbcRs.getString("UserName");
}
else
{
strUserName=strId;
}
odbcRs.close();
odbcStmt.close();
odbcConn.close();
return strUserName;
}
catch(Exception e)
{
return strId;
}
}

private static java.util.Vector _jspx_includes;

static {
_jspx_includes = new java.util.Vector(3);
_jspx_includes.add("/DataIni/DataOpen.jsp");
_jspx_includes.add("/ScriptLib/Init.jsp");
_jspx_includes.add("/DataIni/DataClose.jsp");
}

public java.util.List getIncludes() {
return _jspx_includes;
}

public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {

JspFactory _jspxFactory = null;
javax.servlet.jsp.PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;


try {
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html; charset=iso8859_1");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;

out.write("\r\n");
out.write("\r\n");
out.write("\r\n");
out.write("\r\n");
out.write("\r\n\r\n");

String odbcQuery;
Connection odbcConn;
Statement odbcStmt;
Statement odbcStmt_;
Statement odbcStmt__;
Statement odbcStmt___;
ResultSet odbcRs;
ResultSet odbcRs_;
ResultSet odbcRs__;

//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\Db_River\\Db_River.mdb";
//odbcConn=DriverManager.getConnection(url,"","");
Class.forName("oracle.jdbc.driver.OracleDriver");
odbcConn=DriverManager.getConnection("jdbc:oracle:thin:@(description=(address=(host=10.70.151.10)(protocol=tcp)(port=1521))(connect_data=(sid=orcl)))","zcy","zcy");
odbcStmt=odbcConn.createStatement();
odbcStmt_=odbcConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
odbcStmt__=odbcConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
odbcStmt___=odbcConn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
out.write("\r\n");
out.write("\r\n");
//×¢Ïú¡¢ÓÊÏä²»ºÃÓã¡

String UserName=request.getParameter("UserName").trim();
String Password=request.getParameter("Password").trim();

odbcQuery="select * from UserInfo where UserName='"+UserName+"' and Password='"+Password+"' and Status='1'";
odbcRs=odbcStmt.executeQuery(odbcQuery);
odbcRs.next();
if (odbcRs.getRow() == 0)
{
session.putValue("UserId",null);
session.putValue("UserName",null);
session.putValue("UserRate",null);
session.putValue("UserStatus",null);
session.putValue("UserDept",null);
//session.putValue("strModelName",null);
//session.putValue("strModelUrl",null);
out.write("\r\n\t\t");
out.write("<script>\r\n\t\t alert(\"ÇëÖØеǼϵͳ!\"); \r\n\t\t location.replace(\"/Index.jsp\");\r\n ");
out.write("</script>\r\n ");
}else{
session.putValue("UserId",odbcRs.getString("ID"));
session.putValue("UserName",odbcRs.getString("UserName"));
session.putValue("UserRate",odbcRs.getString("Rate"));
session.putValue("UserStatus",odbcRs.getString("Status"));
session.putValue("UserDept",odbcRs.getString("Dept"));
//session.putValue("strModelName",strModelName);
//session.putValue("strModelUrl",strModelUrl);
response.sendRedirect("/Index.jsp");
}
odbcRs.close();

out.write("\r\n");

odbcStmt.close();
odbcStmt_.close();
odbcStmt__.close();
odbcStmt___.close();
odbcConn.close();
out.write("\r\n");
out.write("<html>\r\n\r\n");
out.write("<head>\r\n");
out.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n");
out.write("<meta name=\"GENERATOR\" content=\"Microsoft FrontPage 4.0\">\r\n");
out.write("<meta name=\"ProgId\" content=\"FrontPage.Editor.Document\">\r\n");
out.write("<title>");
out.write("</title>\r\n");
out.write("<link rel=\"stylesheet\" type=\"text/css\" href=\"\">\r\n");
out.write("</head>\r\n\r\n");
out.write("<body>\r\n");
out.write("<!--#include virtual=\"/TemplateLib/Head.jsp\"-->\r\n");
out.write("<!--#include virtual=\"/TemplateLib/Tail.jsp\"-->\r\n");
out.write("</body>\r\n\r\n");
out.write("</html>");
} catch (Throwable t) {
out = _jspx_out;
if (out != null && out.getBufferSize() != 0)
out.clearBuffer();
if (pageContext != null) pageContext.handlePageException(t);
} finally {
if (_jspxFactory != null) _jspxFactory.releasePageContext(pageContext);
}
}
}
gjd111686 2003-10-16
  • 打赏
  • 举报
回复
自己在JDK中写一个Servlet放在Domino的servlet目录下.就可以了.


System.out.println打印在Notes中的Java控制台.
NickSam 2003-10-16
  • 打赏
  • 举报
回复
我自己UP,诸位兄弟要分的迅速啊。
dxt1229 2003-10-16
  • 打赏
  • 举报
回复
本人曾经搞过一段时间的domino开发,象遇到这样的问题,最好的方法就是到domino designer的帮助里面找,里面一般都有介绍
gjd111686 2003-10-16
  • 打赏
  • 举报
回复
给你拷过来了
下面一个例子是Servlet和Domino的集成,Servlet访问Domino通信录中的对象。


import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import lotus.domino.*;
public class Example_2 extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException{
res.setContentType("text/html");
PrintWriter toBrowser = res.getWriter();
toBrowser.println("<HTML");
toBrowser.println("<HEAD>");
toBrowser.println("<TITLE>Example 2</TITLE>");
toBrowser.println("</HEAD>");
toBrowser.println("<BODY>");
toBrowser.println("<H1>Example 2</H1>");


----调用Domino对象的代码必须包含在try/catch 块中(见以下一段代码),首先创建一个NotesThread 对象,然后创建一个新的会话对象。此处创建会话对象的方法中没有参数,即是用服务器的ID访问Domino对象,您也可指定使用某一用户的Internet用户名和口令作为参数,用此用户身份访问Domino对象,从通信录(names.nsf) 数据库的People 视图取得第一个文档。


try {
NotesThread.sinitThread(); /*创建NotesThread对象
Session s = NotesFactory.createSession(); /*创建新会话对象
Database db = s.getDatabase("","names.nsf"); /*访问通信录数据库
View vw = db.getView("People"); /*访问视图People
Document doc = vw.getFirstDocument(); /*获得第一个文档
ToBrowser.println(db.getTitle()); /*获得数据库标题
toBrowser.println("<TABLE>");
while (doc != null)
{
toBrowser.println("<TR><TD>");
toBrowser.println(doc.getItemValueString("LastName"));
toBrowser.println("</TD></TR>");
doc = vw.getNextDocument(doc); /*获得下一个文档
}
toBrowser.println("</TABLE>");
vw.recycle();
db.recycle();
s.recycle();
}
catch (NotesException n) {



----toBrowser行代码发送数据库标题给请求的客户端浏览器。while (doc!=null) 行开始循环搜索视图中所有文档,将文档中的“Last Name ”值显示在浏览器上,完毕后释放Domino对象使用得内存。


----最后,显示任何Notes 错误并在finally 块中中止NotesThread对象。


System.out.println("Exception ID: " + n.id);
System.out.println("Exception description: " + n.text);
}
finally
{
NotesThread.stermThread(); }
toBrowser.println("</BODY></HTML>");
}
}

gjd111686 2003-10-16
  • 打赏
  • 举报
回复
算了,给你搜了个Href:
你侃侃吧:http://www-900.ibm.com/cn/support/nav/200103/p57.shtml里边有个例子
gjd111686 2003-10-16
  • 打赏
  • 举报
回复
可以的,我用过,你在Notes工作台上从文件菜单中启动Java控制台[具体位置记不清楚了]
我Copy的是一个Tomcat的文件,可能Servlet.jar有点问题.只是个样子[框架基本就这样org的包不能用.].你可以搜一下,很多的.
再:你需要看一下服务器配置文档中的classes路径,把你引的数据库驱动什么的放里.

你需要用JDK先编译*.java,然后把*.class文件放入Domino的servlet目录下.
NickSam 2003-10-16
  • 打赏
  • 举报
回复
回复人: gjd111686(数字金刚) ( ) 信誉:100 2003-10-16 12:33:00 得分:0

呵呵,兄台,我要的是在Notes中连接关系数据库的JAVA例子啊,你这个不行啊。
NickSam 2003-10-16
  • 打赏
  • 举报
回复
回复人: gjd111686(数字金刚) ( ) 信誉:100 2003-10-16 12:30:00 得分:0
自己在JDK中写一个Servlet放在Domino的servlet目录下.就可以了.
System.out.println打印在Notes中的Java控制台.

能不能详细一点啊,还有啊,在Tomcat能使用的Servlet在Notes就无法使用了,

initializing Servlet (bbs)
2003-10-16 11:21:44 Addin: Agent error message:
-----Servlet Information-----
Servlet name: bbs
Servlet class: bbs
Servlet state: <Error>
Configuration parameters: <none>
2003-10-16 11:21:44 Addin: Agent printing: java.lang.ClassFormatError: Bad
major version number: Bad major version number

怎么回事呢?
System.out.println是不是打印在这里啊,我就是看不到啊?

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧