亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? multidboperator.java

?? 某知名大學(xué)的軟件專業(yè)編寫的一個大型的CERP系統(tǒng)程序
?? JAVA
字號:
package com.huiton.cerp.pub.util;

/**
 * Title:        WorkFlowSubsystem
 * Description:  工作流子系統(tǒng)相關(guān)類包
 * Copyright:    Copyright (c) 2001
 * Company:      BRITC
 * @author 高云鵬
 * @version 1.0
 */
import java.sql.*;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import java.util.Vector;
import com.huiton.pub.dbx.JdbOp;
import com.huiton.pub.dbx.PageQuery;
import com.huiton.cerp.pub.util.WebKeys;
import com.huiton.cerp.pub.util.SubsystemKeys;
import com.huiton.cerp.pub.util.DBOperators;
import com.huiton.mainframe.util.tracer.Debug;

public class MultiDBOperator {


static private JdbOp jdbOp;
static private PageQuery pageQuery;
static private String mainDB;
static private String attachDB;
static private String tablenameMain;
static private String tablenameAttached;
static private String funcCode;
static private String sessioncode;
static private HttpServletRequest request;

static private int pageCount;
/*public MultiDBOperator( HttpServletRequest request,String mainDB,
                         String attachDB,String sessioncode,String funcCode){

                          jdbOp=getJdbOp(request,sessionCode,mainDB);
                          pageQuery=getPageQuery(request,sessionCode,mainDB,funcCode);
                         }*/
public MultiDBOperator(String mainDB,
                        String attachDB,
                        String tablenameMain,
                        String tablenameAttached,
                        String funcCode,
                        String sessioncode,
                        HttpServletRequest request)
                  throws Exception{
                          this.mainDB=mainDB;
                          this.attachDB=attachDB;
                          this.tablenameMain=tablenameMain;
                          this.tablenameAttached=tablenameAttached;
                          this.funcCode=funcCode;
                          this.sessioncode=sessioncode;
                          this.request=request;
                          this.pageQuery=DBOperators.getPageQuery(request,sessioncode,mainDB,funcCode);
                          this.jdbOp=jdbOp=DBOperators.getJdbOp(request,sessioncode,attachDB);
                          }




/*@@說明
    本方法有一定局限性,不是通用方法,須完善。
    適合于:對兩個表的查詢,其中的一個表中的某個字段為特定值時,另外一個表中有元組與之對應(yīng),須取出該元組中的某些字段
    局限:第二個表中的關(guān)鍵字為一個
         第二個表中的關(guān)鍵字為字串
    @@param:mainDB--主子系統(tǒng)名
            attachDB--副子系統(tǒng)名
            tablenameMain--主表名
            tablenameAttached--副表名
            keyWord--主表中特定字段昭示附表中有對應(yīng)元組時的值
            keyFieldLocation--特定字段在取出的Vector中數(shù)組中的序號
            pagesize--取1頁的長度
            offset--無附表元組時返回數(shù)組的填充值
            mainSQL--主表查詢條件
            mainFields--主表字段:須在第一個字段中設(shè)置與附表的聯(lián)系鍵值
            mainNo--主表字段數(shù)
            attachFields--附表字段:須在第一個字段中設(shè)置與主表的聯(lián)系鍵值,該值不在最后的vector-row中出現(xiàn)
            attachNo--附表字段數(shù)
            currentpage--當(dāng)前頁
            */
public Vector multiDBDividePage(String keyWord,
                                      int keyFieldLocation,
                                      int pagesize,
                                         String offset,
                                         String mainSQL,
                                         String[] mainFields,
                                         String[] attachFields,
                                      int currentpage)
                                       throws SQLException, Exception{
                    Debug.println("multiDBOperator:參數(shù)帶來的currentPage為:"+currentpage);
                    Debug.println("multiDBOperator:mainSQL為:"+mainSQL);
                    jdbOp=DBOperators.getJdbOp(request,sessioncode,attachDB);
                    pageQuery=DBOperators.getPageQuery(request,sessioncode,mainDB,funcCode);
                    Debug.println("multiDBOperator:獲得主、副數(shù)據(jù)庫代理......");

                  int mainNo=mainFields.length;
                  int attachNo=attachFields.length;
                    //獲取第一個表中的相關(guān)字段結(jié)果集
                    String fields=mainFields[0];
                    for(int i=1;i<mainNo;i++)
                                                fields+=","+mainFields[i];
                    Debug.println("multiDBOperator:主數(shù)據(jù)庫字段為:"+fields);
                    Debug.println("multiDBOperator:table為:"+tablenameMain);
                    Debug.println("multiDBOperator:獲得主數(shù)據(jù)庫參數(shù)為:"+mainDB);
                    Debug.println("multiDBOperator:主數(shù)據(jù)庫名為:"+pageQuery.m_conn.getCatalog());
                    pageQuery.getData(fields,tablenameMain,mainSQL,pagesize);

                   this.pageCount=pageQuery.pageCount;
                    Debug.println("multiDBOperator:pagecount為:"+pageCount);
                    Debug.println("multiDBOperator:pageQuery取數(shù)據(jù)完成......");
                  if(currentpage<=0)currentpage=1;
                    Debug.println("multiDBOperator:當(dāng)前頁為:"+currentpage);
                    Vector mainVCT=pageQuery.dividePage(currentpage,pagesize);
                   if(mainVCT==null){
                              Debug.println("multiDBOperator:無記錄,返回空......");
                            return null;
                    }
                    Debug.println("multiDBOperator:pageQuery分頁完成......");
                    Debug.println("multiDBOperator:pageQuery元素數(shù)為:"+String.valueOf(mainVCT.size()));

                    //處理與第二個表的關(guān)聯(lián)
                    fields=attachFields[0];
                    Vector ultimateVCT=new Vector();
                  for(int i=1;i<attachNo;i++)
                                                fields+=","+attachFields[i];
                    Debug.println("multiDBOperator:副數(shù)據(jù)庫字段為:"+fields);

                    for(int i=0;i<mainVCT.size();++i){
                            String VCTArray[]=new String[mainNo+attachNo-1];
                            String tmpVCTArray[]=new String[mainNo];
                            Debug.println("----MultiDBOperator:mainNo="+mainNo+"attachNo="+attachNo);
                            tmpVCTArray = (String[])mainVCT.elementAt(i);
                            Debug.println("----MultiDBOperator:從Vector 中取得第"+i+"個數(shù)組");
                          for(int j=0;j<mainNo;j++){
                                           VCTArray[j]=tmpVCTArray[j];
                                           Debug.println("multiDBOperator:主數(shù)據(jù)庫中的數(shù)組元素["+j+"]為:"+VCTArray[j]);
                                          }
                          if(VCTArray[keyFieldLocation].toLowerCase().equals(keyWord)){
                                         String attachSQL="select "+fields+" from "+tablenameAttached+" where "
                                                        +attachFields[0]+"='"+VCTArray[0]+"'";
                                         Debug.println("multiDBOperator:副數(shù)據(jù)庫查詢SQL為:"+attachSQL);
                                         ResultSet rs=jdbOp.getData(attachSQL);
                                          Debug.println("multiDBOperator:取得副數(shù)據(jù)庫結(jié)果集......");
                                   //   int appendLengh=attachFields.length;
                                         if(rs!=null){
                                                  rs.beforeFirst();
                                               if(rs.next()){
                                                       // String[] appendArray=new String[appendLength];
                                                    for(int j=1;j<attachNo;j++){
                                                                VCTArray[mainNo+j-1]=rs.getString(j+1);
                                                                Debug.println("multiDBOperator:副數(shù)據(jù)庫中的數(shù)組元素["+j+"]為:"+VCTArray[mainNo+j-1]);
                                                                }
                                                    }else{
                                                    for(int j=0;j<attachNo-1;j++)
                                                                  VCTArray[mainNo+j]=offset;
                                                        Debug.println("multiDBOperator:填充1");
                                                          }
                                              }else{
                                               for(int j=0;j<attachNo-1;j++)
                                                        VCTArray[mainNo+j]=offset;
                                                   Debug.println("multiDBOperator:填充2");
                                                    }
                             }else{
                                       for(int j=0;j<attachNo-1;j++)
                                                        VCTArray[mainNo+j]=offset;
                                          Debug.println("multiDBOperator:填充3");
                              }
                              ultimateVCT.addElement(VCTArray);
                              Debug.println("multiDBOperator:即一個數(shù)組到最終返回的矢量中......");
                        }
                            return ultimateVCT;
                }

public int getPageCount()
                  {
                          return this.pageCount;
         }

public void multiDBDelete(String mainFlagField,
                            String keyWord,
                            String mainField,
                            String attachField,
                            String delSQL)
                          throws SQLException, Exception{
              Debug.println("multiDBOperator:delSQL為:"+delSQL);
              jdbOp=DBOperators.getJdbOp(request,sessioncode,mainDB);
              Debug.println("multiDBOperator:獲取住數(shù)據(jù)庫代理:"+mainDB);
              String tempSQL="select "+mainFlagField+","+mainField+" from "+tablenameMain+" where "+delSQL;
              Debug.println("multiDBOperator:tempSQL為:"+tempSQL);
              ResultSet rs=jdbOp.getData(tempSQL);
              Debug.println("multiDBOperator:查得主數(shù)據(jù)庫數(shù)據(jù)......");
              int mainFlagFieldColNo;
              int mainFiledColNo;
              mainFlagFieldColNo=rs.findColumn(mainFlagField);
              mainFiledColNo=rs.findColumn(mainField);
              if(rs!=null){
                      Debug.println("multiDBOperator:結(jié)果集不為空......");
                      rs.beforeFirst();
                    while(rs.next()){
                          String mainFlagValue=rs.getString(mainFlagFieldColNo);
                          String mainValue=rs.getString(mainFiledColNo);
                          Debug.println("multiDBOperator:主數(shù)據(jù)庫標(biāo)示--"+mainFlagValue);
                          Debug.println("multiDBOperator:主數(shù)據(jù)庫連接字段值--"+mainValue);
                          if(mainFlagValue.equals(keyWord)){
                                  tempSQL=attachField+"="+mainValue;
                                  Debug.println("multiDBOperator:有對應(yīng)元組---SQL為:"+tempSQL);
                                  jdbOp=DBOperators.getJdbOp(request,sessioncode,attachDB);
                                  jdbOp.delete(tablenameAttached,tempSQL);
                                  Debug.println("multiDBOperator:副數(shù)據(jù)庫刪除一條元組");
                                  }
                        }
                }
              jdbOp=DBOperators.getJdbOp(request,sessioncode,mainDB);
              jdbOp.delete(tablenameMain,delSQL);
              Debug.println("multiDBOperator:主數(shù)據(jù)庫刪除完成");
        return;

        }

public PageQuery getPageQuery(){
        return this.pageQuery;
    }

public JdbOp getJdbOp(){
        return this.jdbOp;
    }
}
 /*                   pageQuery.getData("USER_NAME,USER_UNIQUE_NO",
                                      "EPD_ADDRESS_EMPLOYEE_V", mySQL, SLIT_Vct.size());

                    jdbOp=getJdbOp(request,sessioncode,dbnameMain);
                    pageQuery=getPageQuery(request,sessioncode,dbnameMain,funcCode);
                    Vector mainVCT





  /*private DBOperators dbOperator;
  private JdbOp jdbOp;
  private PageQuery pageQuery;

  public MultiDBOperator() {
        this.dbOperator=new DBOperators();
  }

  public MultiDBOperator(String mainDB,String attachDB,sessioncode, funcCode) {
          this.dbOperator=new DBOperators();

  public JdbOp getJdbOp(HttpServletRequest request,
                          String sessionCode,
                          String subsystemKey){
        JdbOp tempJdbOp=dbOperator.getJdbOp(request,sessioncode,subsystemKey);
        this.jdbOp=tempJdbOp;
        return tempJdbOp;
  }

  public getPageQuery(HttpServletRequest request,
                        String sessionCode,
                        String subsystemKey,
                        String funcCode){
        PageQuery tempPageQuery=dbOperator.getPageQuery(request,sessioncode,subsystemKey,funcCode);
        this.pageQuery=tempPageQuery;
        return tempPageQuery;
  }
  /*用于將兩個數(shù)據(jù)庫聯(lián)起來查詢一頁
  param:

  public Vector multiDBDividePage(String dbnameMain,String dbnameAttached,String field,
                                    String keyword,int pagesize,String offset){
     Vector vct1=new Vector();
*/



?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩黄视频| 国产精品久久99| 国产偷v国产偷v亚洲高清| 亚洲色图都市小说| 激情欧美日韩一区二区| 在线国产电影不卡| 国产精品女上位| 寂寞少妇一区二区三区| 欧美日韩aaaaaa| 一区二区免费视频| 成人av电影免费在线播放| 欧美大片国产精品| 亚洲成人动漫在线免费观看| 91亚洲永久精品| 国产精品卡一卡二卡三| 国产福利精品一区| 久久综合久久鬼色中文字| 日韩不卡一二三区| 欧美人与z0zoxxxx视频| 久久久精品2019中文字幕之3| 日韩成人精品在线观看| 欧美丝袜丝交足nylons图片| 亚洲美女屁股眼交| 波多野结衣亚洲一区| 久久久国产精华| 麻豆一区二区三区| 日韩精品综合一本久道在线视频| 久久久精品人体av艺术| 午夜一区二区三区在线观看| www.爱久久.com| 久久精品一区二区| 久久不见久久见免费视频1| 欧洲精品一区二区| 亚洲欧美电影院| 成人丝袜18视频在线观看| 欧美成人精品高清在线播放 | 国产一区二区三区综合| 欧美一级国产精品| 久久不见久久见中文字幕免费| 日韩欧美123| 国产一区二区三区在线观看免费视频 | 欧美—级在线免费片| 国产mv日韩mv欧美| 综合电影一区二区三区| 日本高清成人免费播放| 免费在线看成人av| 久久免费偷拍视频| 成人h动漫精品一区二区| 中文字幕第一区第二区| av不卡一区二区三区| 亚洲一区二区视频| 欧美军同video69gay| 裸体一区二区三区| 国产日韩欧美精品在线| 91成人在线观看喷潮| 日韩精品欧美成人高清一区二区| 日韩欧美中文字幕一区| 国产黄色精品视频| 亚洲精品欧美激情| 日韩一级二级三级精品视频| 国产一区二区三区精品视频| 亚洲天堂a在线| 欧美精品日韩精品| 丁香婷婷综合网| 亚洲国产一区视频| 国产人妖乱国产精品人妖| 日本丶国产丶欧美色综合| 人禽交欧美网站| 国产精品久久久久久福利一牛影视| 色欲综合视频天天天| 精品在线亚洲视频| 一区二区三区中文字幕电影| 精品国产精品网麻豆系列| av成人老司机| 国产在线麻豆精品观看| 亚洲男人的天堂一区二区| 日韩一区二区精品葵司在线| 91天堂素人约啪| 国产一区二区成人久久免费影院 | 精品国产免费一区二区三区四区 | 成人午夜看片网址| 免费观看30秒视频久久| 亚洲欧美另类小说视频| 日韩免费高清av| 日本福利一区二区| 成人一区二区视频| 国内精品伊人久久久久影院对白| 一区二区三区久久| 国产精品久99| 欧美精品一区二| 欧美日韩午夜在线视频| 波多野结衣亚洲一区| 国产毛片精品视频| 久久成人综合网| 日本不卡视频在线| 天天影视色香欲综合网老头| 日韩伦理电影网| 中文字幕精品一区二区精品绿巨人| 欧美不卡一区二区三区| 欧美亚洲另类激情小说| 91蝌蚪国产九色| 成人高清在线视频| 国产高清在线精品| 国产一区二区三区不卡在线观看 | 一区二区三区日韩精品视频| 亚洲国产精品成人久久综合一区| 日韩精品一区二区三区三区免费| 7777女厕盗摄久久久| 欧美日韩一二三区| 欧美午夜精品久久久久久孕妇| 99re热这里只有精品免费视频| 风间由美一区二区三区在线观看| 国产精品99久久久久久久女警| 精品一区二区三区在线播放视频| 免费欧美在线视频| 久久99国产精品久久99| 美女一区二区三区在线观看| 奇米精品一区二区三区在线观看| 午夜视频在线观看一区| 亚洲成人资源网| 日本欧美一区二区| 精品一区二区免费| 国产麻豆精品久久一二三| 国产精品1区2区3区在线观看| 国产成人丝袜美腿| 成人黄色大片在线观看| 91美女片黄在线| 在线精品亚洲一区二区不卡| 在线电影一区二区三区| 日韩欧美色电影| 久久久久久久一区| 亚洲欧洲精品天堂一级| 一区二区三区在线影院| 图片区日韩欧美亚洲| 久久精品免费看| 成人激情黄色小说| 欧美亚洲综合色| 欧美电影免费观看完整版| 国产拍欧美日韩视频二区| 亚洲美女偷拍久久| 日韩成人伦理电影在线观看| 国产福利不卡视频| 色狠狠综合天天综合综合| 欧美猛男gaygay网站| xvideos.蜜桃一区二区| 国产精品高潮呻吟| 日韩电影免费一区| 成人av小说网| 日韩欧美在线影院| 中文字幕成人在线观看| 亚洲成av人片在www色猫咪| 激情偷乱视频一区二区三区| 一本到高清视频免费精品| 欧美一区二区三区视频在线观看 | 性久久久久久久| 国产精品亚洲第一| 欧美色手机在线观看| 久久精品一区二区三区不卡 | 成人av在线看| 日韩一级黄色片| 一个色在线综合| 国产传媒欧美日韩成人| 欧美日韩在线播| 国产精品福利一区二区三区| 蜜臀91精品一区二区三区| 色综合天天综合色综合av | 成人网男人的天堂| 日韩欧美国产wwwww| 亚洲一区二区欧美| 丁香五精品蜜臀久久久久99网站| 91精品国产色综合久久ai换脸| 亚洲欧美偷拍卡通变态| 狠狠色丁香婷综合久久| 欧美日韩精品免费观看视频| 国产精品丝袜久久久久久app| 久久精品国产精品亚洲综合| 欧美三级乱人伦电影| 国产精品灌醉下药二区| 国产精品资源网| 51午夜精品国产| 亚洲国产综合色| 在线免费不卡视频| 亚洲欧美激情小说另类| 国产大陆精品国产| 久久久精品免费免费| 精品无人区卡一卡二卡三乱码免费卡| 日本丰满少妇一区二区三区| 亚洲蜜桃精久久久久久久| 波多野结衣亚洲一区| 国产精品久久久久影院老司| 国产美女在线观看一区| 精品国产人成亚洲区| 老色鬼精品视频在线观看播放| 69av一区二区三区| 日本成人在线网站| 日韩一区二区不卡| 精品午夜一区二区三区在线观看| 日韩精品专区在线影院重磅| 日本欧美肥老太交大片| 日韩精品一区二区三区在线观看 |