Domino访问Mysql数据库
JAVA代理访问
使用Java代理库接Mysql,其与Java访问Mysql数据库大体上类似,使用JDBC进行数据库连接,但有一点区别,就是Java代理有安全性等级的设置。所以,使用JAVA代理访问Mysql时有以下几点需要注意:
1、需要将与Mysql对应的连接驱动拷贝至domino服务器程序目录下的jvm/lib/ext下(也可以将其拷贝至服务器的其它目录,并在notes.ini里做对应的配置),并重启domino服务器。
2、需要修改该domino代理的安全性等级为2级或3级,如下图:
3、如果该代理需要在Notes客户端上运行,需要将Mysql对应的驱动拷贝至Notes目录下的jvm/lib/ext下。
数据库添加代码:
import lotus.domino.*;
import java.sql.*;
java的jdbc连接数据库
import java.util.ArrayList;
import java.io.PrintWriter;
public class JavaAgent extends AgentBase {
    String url = "jdbc:mysql://localhost:3306/mytask";
    Connection conn=null;
    Statement statement=null;
    ResultSet rs=null;
   
    //数据库连接
    public boolean  CONN(){
      try{
      Class.forName("sql.jdbc.Driver");
    conn = Connection(url, "root", "mysql");
    statement = ateStatement();
      return true;
      }catch(Exception e){return false;}
  }
 
      //查询
      public ResultSet Select(String sql){
          if(this.CONN())
          {
              try{
              rs = uteQuery(sql);
              }
              catch(Exception e){}
              return rs;
          }
          else return null;
  }
 
      //执行Sql语句
      public boolean ExcuteSql(String sql){
      boolean x=false;
      if(this.CONN())
      {
          try{
          uteUpdate(sql);
          x=true;
          }catch(Exception e){e.printStackTrace();}
      }
        return x;
  }
 
      //数据库事务
      public boolean ExcuteTrans(ArrayList al) {
      boolean x=false;
      if(this.CONN()) {
          try{
              conn.setAutoCommit(false);
              for(int i=0;i<al.size();i++) {
                  String y = al.get(i).toString();
                  ute(y);
                 
              }
              connmit();
              conn.setAutoCommit(true);
              x=true;
          }catch(Exception e){
              try {
                  llback();
                  conn.setAutoCommit(true);
              }catch(Exception ex){}
             
          }
         
       
      }
        return x;
  }
    public void NotesMain() {
        try {
            Session s = getSession();
            AgentContext ag = s.getAgentContext();
            Database db = ag.getCurrentDatabase();
            //Document doc = db.createDocument();
            //doc.appendItemValue("Form", "showData");
            Document doc = ag.getDocumentContext();
            String sql;
            sql = "insert into tasks(deptname,proname,taskname,excctype) values ('"+ItemValueString("DeptName")+"','"+ItemValueString("ProName")+"','"+ItemValueString("TaskName")+"','"+ItemValueString("ExccType")+"')";
            PrintWriter pw = getAgentOutput();
           
            boolean result = this.ExcuteSql(sql);
            if (result)
            {
              pw.println("<Script>alert('增加成功');</Script>");
            }
            else pw.println("<Script>alert('增加失败');</Script>");
           
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
}
数据库查询代码:
import lotus.domino.*;
import java.sql.*;
import java.util.ArrayList;
public class JavaAgent extends AgentBase {
    String url = "jdbc:mysql://localhost:3306/anatast";
    Connection conn=null;
    Statement statement=null;
    ResultSet rs=null;
   
    //数据库连接
    public boolean  CONN(){
      try{
      Class.forName("sql.jdbc.Driver");
    conn = Connection(url, "root", "mysql");
    statement = ateStatement();
      return true;
      }catch(Exception e){return false;}
  }
 
      //查询
      public ResultSet Select(String sql){
          if(this.CONN())
          {
              try{
              rs = uteQuery(sql);
              }
              catch(Exception e){}
              return rs;
          }
          else return null;
  }
 
      //执行Sql语句
      public boolean ExcuteSql(String sql){
      boolean x=false;
      if(this.CONN())
      {
          try{
          uteUpdate(sql);
          x=true;
          }catch(Exception e){e.printStackTrace();}
      }
        return x;
  }
 
      //数据库事务
      public boolean ExcuteTrans(ArrayList al) {
      boolean x=false;
      if(this.CONN()) {
          try{
              conn.setAutoCommit(false);
              for(int i=0;i<al.size();i++) {
                  String y = al.get(i).toString();
                  ute(y);
                 
              }
              connmit();
              conn.setAutoCommit(true);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。