⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 officeserver.jsp

📁 sms开发主要用于短信平台开发与应用45445倒萨啊打12221答案的第
💻 JSP
📖 第 1 页 / 共 3 页
字号:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.io.*" %>
<%@ page import="java.text.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.text.DateFormat" %>
<%@ page import="java.util.Date" %>
<%@ page import="oracle.sql.BLOB" %>
<%@ page import="oracle.jdbc.*" %>
<%@ page import="DBstep.iMsgServer2000.*" %>
<%@ page import="DBstep.iDBManager2000.*" %>
<%!
 private int mFileSize;
 private byte[] mFileBody;
 private String mFileName;
 private String mFileType;
 private String mFileDate;
 private String mFileID;
 private int mTemplateId;

 private String mRecordID;
 private String mTemplate;
 private String mDateTime;
 private String mOption;
 private String mMarkName;
 private String mPassword;
 private String mMarkList;
 private String mBookmark;
 private String mDescript;
 private String mHostName;
 private String mMarkGuid;
 private String mCommand;
 private String mContent;
 private String mHtmlName;
 private String mDirectory;
 private String mFilePath;

 private String mUserName;
 private int mColumns;
 private int mCells;
 private String mMyDefine1;
 private String mLocalFile;
 private String mRemoteFile;
 private String mLabelName;
 private String mImageName;
 private String mTableContent;

 private String Sql;

 private DBstep.iMsgServer2000 MsgObj;
 private DBstep.iDBManager2000 DbaObj;

// ************* Bolb字段处理、公共函数、接收流、写回流代码    开始  *******************************
 private void PutAtBlob(BLOB vField,int vSize) throws IOException
 {
   try
   {
     OutputStream outstream=vField.getBinaryOutputStream();
     outstream.write(mFileBody,0, vSize);
     outstream.close();
   }
   catch(SQLException e)
   {

   }
 }

 private void GetAtBlob(BLOB vField,int vSize) throws IOException
 {
   try
   {
     mFileBody = new byte[vSize];
     InputStream instream=vField.getBinaryStream();
     instream.read(mFileBody,0,vSize);
     instream.close();
   }
   catch(SQLException e)
   {

   }
 }
  /**
   * 功能或作用:格式化日期时间
   * @param DateValue 输入日期或时间
   * @param DateType 格式化 EEEE是星期, yyyy是年, MM是月, dd是日, HH是小时, mm是分钟,  ss是秒
   * @return 输出字符串
   */
  public String FormatDate(String DateValue,String DateType)
  {
    String Result;
    SimpleDateFormat formatter = new SimpleDateFormat(DateType);
    try{
      Date mDateTime = formatter.parse(DateValue);
      Result = formatter.format(mDateTime);
    }catch(Exception ex){
      Result = ex.getMessage();
    }
    if (Result.equalsIgnoreCase("1900-01-01")){
      Result = "";
    }
    return Result;
  }

//取得客户端发来的数据包
private byte[] ReadPackage(HttpServletRequest request)
{
  byte mStream[]=null;
  int totalRead = 0;
  int readBytes = 0;
  int totalBytes = 0;
  try
  {
    totalBytes = request.getContentLength();
    mStream = new byte[totalBytes];
    while(totalRead < totalBytes)
    {
      request.getInputStream();
      readBytes = request.getInputStream().read(mStream, totalRead, totalBytes - totalRead);
      totalRead += readBytes;
      continue;
    }
  }
  catch (Exception e)
  {
    System.out.println(e.toString());
  }
  return (mStream);
}

//发送处理后的数据包
  private void SendPackage(HttpServletResponse response)
  {
    try
    {
      ServletOutputStream OutBinarry=response.getOutputStream() ;
      OutBinarry.write(MsgObj.MsgVariant()) ;
      OutBinarry.flush();
      OutBinarry.close();
    }
    catch(IOException e)
    {
      System.out.println(e.toString());
    }
  }
// ************* Bolb字段处理、公共函数、接收流、写回流代码    结束  *******************************


// ************* 文档、模板管理代码    开始  *******************************
 //调出文档,将文档内容保存在mFileBody里,以便进行打包
  private boolean LoadFile()
  {
    boolean mResult = false;
    String Sql = "SELECT FileBody,FileSize FROM Document_File WHERE RecordID='" + mRecordID + "'";
    try {
      if (DbaObj.OpenConnection()) {
        try {
          ResultSet result = DbaObj.ExecuteQuery(Sql);
          if (result.next()) {
            try {
              mFileSize=result.getInt("FileSize");
	      GetAtBlob(((OracleResultSet)result).getBLOB("FileBody"),mFileSize);
              mResult = true ;
            }
            catch (IOException ex) {
              System.out.println(ex.toString());
            }
          }
          result.close();
        }
        catch (SQLException e) {
          System.out.println(e.getMessage());
          mResult = false;
        }
      }
    }
    finally {
      DbaObj.CloseConnection();
    }
    return (mResult);
  }

 //保存文档,如果文档存在,则覆盖,不存在,则添加
  private boolean SaveFile()
  {
    boolean mResult = false;
    int iFileId = -1;
    String Sql = "SELECT * FROM Document_File WHERE RecordID='" + mRecordID + "'";
    try{
      if (DbaObj.OpenConnection()) {
        try {
          ResultSet result = DbaObj.ExecuteQuery(Sql);
          if (result.next()) {
            Sql="update Document_File set FileID=?,RecordID=?,FileName=?,FileType=?,FileSize=?,FileDate=?,FileBody=EMPTY_BLOB(),FilePath=?,UserName=?,Descript=? WHERE RecordID='" + mRecordID + "'";
            iFileId=result.getInt("FileId");
          }
          else {
            Sql="insert into Document_File (FileID,RecordID,FileName,FileType,FileSize,FileDate,FileBody,FilePath,UserName,Descript) values (?,?,?,?,?,?,EMPTY_BLOB(),?,?,? )";
            iFileId=DbaObj.GetMaxID("Document_File","FileId");
          }
          result.close();
        }
        catch (SQLException e) {
          System.out.println(e.toString());
          mResult = false;
        }
        java.sql.PreparedStatement prestmt=null;
        try {
          prestmt =DbaObj.Conn.prepareStatement(Sql);
          prestmt.setInt(1,iFileId);
          prestmt.setString(2, mRecordID);
          prestmt.setString(3, mFileName);
          prestmt.setString(4, mFileType);
          prestmt.setInt(5, mFileSize);
          prestmt.setDate(6 ,DbaObj.GetDate());
          prestmt.setString(7, mFilePath);
          prestmt.setString(8, mUserName);
          prestmt.setString(9, mDescript);                                          //"通用版本"
          DbaObj.Conn.setAutoCommit(true) ;
          prestmt.execute();
          DbaObj.Conn.commit();
          prestmt.close();
          Statement stmt=null;
          DbaObj.Conn.setAutoCommit(false) ;
          stmt = DbaObj.Conn.createStatement();
          OracleResultSet update=(OracleResultSet)stmt.executeQuery("select FileBody from Document_File where Fileid=" + String.valueOf(iFileId)+ " for update");
          if (update.next()){
            try
            {
              PutAtBlob(((oracle.jdbc.OracleResultSet)update).getBLOB("FileBody"),mFileSize);
            }
            catch (IOException e) {
               System.out.println(e.toString());
               mResult = false;
            }
          }
          update.close();
          stmt.close();

          DbaObj.Conn.commit();
          mFileBody=null;
          mResult=true;
        }
        catch (SQLException e) {
          System.out.println(e.toString());
          mResult = false;
        }
      }
    }
    finally {
      DbaObj.CloseConnection();
    }
    return (mResult);
  }

 //调出模板文档,将模板文档内容保存在mFileBody里,以便进行打包
  private boolean LoadTemplate()
  {
    boolean mResult = false;
    String Sql = "SELECT FileBody,FileSize FROM Template_File WHERE RecordID='" + mTemplate + "'";
    try {
      if (DbaObj.OpenConnection()) {
        try {
          ResultSet result = DbaObj.ExecuteQuery(Sql);
          if (result.next()) {
            try {
              mFileSize=result.getInt("FileSize");
	      GetAtBlob(((OracleResultSet)result).getBLOB("FileBody"),mFileSize);
              mResult = true ;
            }
            catch (Exception ex) {
              System.out.println(ex.toString());
            }
          }
          result.close();
        }
        catch (SQLException e) {
          System.out.println(e.getMessage());
          mResult = false;
        }
      }
    }
    finally {
      DbaObj.CloseConnection();
    }
    return (mResult);
  }

 //保存模板文档,如果模板文档存在,则覆盖,不存在,则添加
  private boolean SaveTemplate()
  {
    boolean mResult = false;
    String Sql = "SELECT * FROM Template_File WHERE RecordID='" + mTemplate + "'";
    try {
      if (DbaObj.OpenConnection()) {
        try {
          ResultSet result = DbaObj.ExecuteQuery(Sql);
          if (result.next()) {
            Sql="update Template_File set TemplateID=?,RecordID=?,FileName=?,FileType=?,FileSize=?,FileDate=?,FileBody=EMPTY_BLOB(),FilePath=?,UserName=?,Descript=? WHERE RecordID='" + mTemplate + "'";
            mTemplateId=result.getInt("TemplateId");
          }
          else {
            Sql="insert into Template_File (TemplateID,RecordID,FileName,FileType,FileSize,FileDate,FileBody,FilePath,UserName,Descript) values (?,?,?,?,?,?,EMPTY_BLOB(),?,?,? )";
            mTemplateId=DbaObj.GetMaxID("Template_File","TemplateId");
          }
          result.close();
        }
        catch (SQLException e) {
          System.out.println(e.toString());
          mResult = false;
        }
        java.sql.PreparedStatement prestmt=null;
        try {
          prestmt =DbaObj.Conn.prepareStatement(Sql);
          prestmt.setInt(1,mTemplateId);
          prestmt.setString(2, mTemplate);
          prestmt.setString(3, mFileName);
          prestmt.setString(4, mFileType);
          prestmt.setInt(5, mFileSize);
          prestmt.setDate(6 ,DbaObj.GetDate());
          prestmt.setString(7, mFilePath);
          prestmt.setString(8, mUserName);
          prestmt.setString(9, mDescript);                                          //"通用版本"
          DbaObj.Conn.setAutoCommit(true) ;
          prestmt.execute();
          DbaObj.Conn.commit();
          prestmt.close();
          Statement stmt=null;
          DbaObj.Conn.setAutoCommit(false) ;
          stmt = DbaObj.Conn.createStatement();
          OracleResultSet update=(OracleResultSet)stmt.executeQuery("select FileBody from Template_File where TEMPLATEID=" + String.valueOf(mTemplateId)+ " for update");
          if (update.next()){
            try
            {
	      mFileSize=mFileBody.length;
              PutAtBlob(((oracle.jdbc.OracleResultSet)update).getBLOB("FileBody"),mFileSize);
            }
            catch (IOException e) {
               System.out.println(e.toString());
               mResult = false;
            }
          }
          update.close();
          stmt.close();

          DbaObj.Conn.commit();
          mFileBody=null;
          mResult=true;
        }
        catch (SQLException e) {
          System.out.println(e.toString());
          mResult = false;
        }
      }
    }
    finally {
      DbaObj.CloseConnection();
    }
    return (mResult);
  }
// ************* 文档、模板管理代码    结束  *******************************



//调入选中版本,通过文件号调用mFileID,并把文件放入mFileBody里,以便进行打包
private boolean LoadVersion(String mFileID)
{
    boolean mResult = false;
    String Sql= "SELECT FileBody,FileSize FROM Version_File WHERE RecordID='" + mRecordID + "' and  FileID=" + mFileID;
    try {
      if (DbaObj.OpenConnection()) {
        try {
          ResultSet result = DbaObj.ExecuteQuery(Sql);
          if (result.next()) {
            try {
              mFileSize=result.getInt("FileSize");
	      GetAtBlob(((OracleResultSet)result).getBLOB("FileBody"),mFileSize);
              mResult = true ;
            }
            catch (Exception ex) {
              System.out.println(ex.toString());
            }
          }
          result.close();
        }
        catch (SQLException e) {
          System.out.println(e.getMessage());
          mResult = false;
        }
      }
    }
    finally {
      DbaObj.CloseConnection();
    }
    return (mResult);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -