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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? datatypemanager.java

?? 我的文件是一個數據添加頁面
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package kmd.gxml;
import kmd.Debug;
import kmd.commo.PageList;
import kmd.commo.SQLTools;
import kmd.commo.SequenceProducer;
import kmd.jdbc.DBConnection;

import java.util.ArrayList;
import java.sql.Connection;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Types;


/**
 * 針對對象類型信息進行管理的類,此類包括新增、刪除、修改和查詢對象類型信息的基本方法
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2007</p>
 * <p>Company: 重慶科美達電腦有限公司</p>
 * @author not attributable
 * @version 1.0
 */
public class DataTypeManager {
  /**
   * 構造符
   */
  public DataTypeManager() {}


  /**
   * 新增對象類型基本信息以及屬性信息。名稱、父編號以及屬性信息必須填寫,如果此類型處于最頂級父編號傳0
   * @param info DataTypeInfo 對象類型信息
   * @throws Exception 保存信息失敗時拋出此異常。
   */
  public void addDataType(DataTypeInfo info) throws Exception {
    Connection cn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    try {
      cn = DBConnection.getConnection();
      //cn.setAutoCommit(false);
      info.setTid(SequenceProducer.getId());
      ps = cn.prepareStatement(
          "INSERT INTO DataType(TId, PId, Name, Digest) VALUES(?,?,?,?)");
      ps.setLong(1, info.getTid());
      ps.setLong(2, info.getPid());
      ps.setString(3, info.getName());
      if (info.getDigest() == null) {
        ps.setNull(4, Types.VARCHAR);
      } else {
        ps.setString(4, info.getDigest());
      }
      ps.executeUpdate();
      ps.close();
      ps = null;
      ArrayList attributeList = info.getAttributeList();
      AttributeManager aMan = new AttributeManager();
      for (int i = 0; i < attributeList.size(); i++) {
        AttributeInfo aInfo = (AttributeInfo) attributeList.get(i);
        aInfo.setTid(info.getTid());
        aMan.addAttribute(aInfo, cn);
      }
      //cn.commit();
      //cn.setAutoCommit(true);
    } catch (Exception ex) {
      if (Debug.isJavaBeanDebug) {
        ex.printStackTrace();
      }
      /**
      try {
        if (cn != null && !cn.getAutoCommit()) {
          cn.rollback();
          cn.setAutoCommit(true);
        }
      } catch (Exception e) {}
      */
      throw ex;
    } finally {
      if (rs != null) {try {rs.close();
      rs = null;
      } catch (Exception e) {}
      }
      if (ps != null) {try {ps.close();
      ps = null;
      } catch (Exception e) {}
      }
      if (cn != null) {try {cn.close();
      cn = null;
      } catch (Exception e) {}
      }
    }
  }


  /**
   * 修改對象類型信息,包括修改其基本信息以及屬性信息
   * 名稱、編號、父編號以及屬性信息必須填寫
   * @param info DataTypeInfo 對象類型信息
   * @throws Exception 修改信息失敗時拋出此異常
   */
  public void modifyDataType(DataTypeInfo info) throws Exception {
    Connection cn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    try {
      cn = DBConnection.getConnection();
      cn.setAutoCommit(false);
      ps = cn.prepareStatement("UPDATE DataType SET Name = ? WHERE TId = ?");
      ps.setString(1, info.getName());
      ps.setLong(2, info.getTid());
      ps.executeUpdate();
      ps.close();
      ps = null;
      AttributeManager aMan = new AttributeManager();
      ArrayList aids = aMan.getAids(info.getTid());
      ArrayList newAttributeList = info.getAttributeList();
      for (int i = 0; i < aids.size(); i++) {
        AttributeInfo aInfo = (AttributeInfo) newAttributeList.get(i);
        boolean exist = false;
        for (int j = 0; j < aids.size(); j++) {
          if (String.valueOf(aInfo.getAid()).equals((String) aids.get(j))) {
            exist = true;
            aids.remove(j);
            break;
          } else {
            continue;
          }
        }
        if (exist) {
          aMan.modifyAttribute(aInfo, cn);
        } else {
          aMan.addAttribute(aInfo, cn);
        }
      }
      for (int i = 0; i < aids.size(); i++) {
        aMan.deleteAttribute(Long.parseLong((String) aids.get(i)), cn);
      }
      cn.commit();
      cn.setAutoCommit(true);
    } catch (Exception ex) {
      if (Debug.isJavaBeanDebug) {
        ex.printStackTrace();
      }
      try {
        if (cn != null && !cn.getAutoCommit()) {
          cn.rollback();
          cn.setAutoCommit(true);
        }
      } catch (Exception e) {}
    } finally {
      if (rs != null) {try {rs.close();
      rs = null;
      } catch (Exception e) {}
      }
      if (ps != null) {try {ps.close();
      ps = null;
      } catch (Exception e) {}
      }
      if (cn != null) {try {cn.close();
      cn = null;
      } catch (Exception e) {}
      }
    }
  }


  /**
   * 刪除指定編號的對象類型信息,并且關聯在此對象類型下的具體數據對象也將會被刪除
   * @param tid long 對象類型編號
   * @param isChild boolean 是否刪除此對象類型的所有子對象類型
   * @throws Exception 刪除信息失敗時拋出此異常
   */
  public int deleteDataType(long tid, boolean isChild) throws Exception {
    Connection cn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    int deleteNum = 0;
    try {
      cn = DBConnection.getConnection();
      cn.setAutoCommit(false);
      deleteNum = deleteNum + deleteDataType(tid, isChild, cn);
      cn.commit();
      cn.setAutoCommit(true);
    } catch (Exception ex) {
      if (Debug.isJavaBeanDebug) {
        ex.printStackTrace();
      }
      try {
        if (cn != null && !cn.getAutoCommit()) {
          cn.rollback();
          cn.setAutoCommit(true);
        }
      } catch (Exception e) {}
    } finally {
      if (rs != null) {try {rs.close();
      rs = null;
      } catch (Exception e) {}
      }
      if (ps != null) {try {ps.close();
      ps = null;
      } catch (Exception e) {}
      }
      if (cn != null) {try {cn.close();
      cn = null;
      } catch (Exception e) {}
      }
    }
    return deleteNum;
  }


  /**
   * 刪除指定編號的一組對象類型信息,并且關聯在這些對象類型下的具體數據對象也將會被刪除
   * @param tid long[] 對象類型編號
   * @param isChild boolean 是否刪除所指定對象類型的所有子對象類型
   * @return int 成功刪除的對象類型數量
   * @throws Exception
   */
  public int deleteDataType(long[] tid, boolean isChild) throws Exception {
    Connection cn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    int deleteNum = 0;
    try {
      cn = DBConnection.getConnection();
      cn.setAutoCommit(false);
      for (int i = 0; i < tid.length; i++) {
        deleteNum = deleteNum + deleteDataType(tid[i], isChild, cn);
      }
      cn.commit();
      cn.setAutoCommit(true);
    } catch (Exception ex) {
      if (Debug.isJavaBeanDebug) {
        ex.printStackTrace();
      }
      try {
        if (cn != null && !cn.getAutoCommit()) {
          cn.rollback();
          cn.setAutoCommit(true);
        }
      } catch (Exception e) {}
    } finally {
      if (rs != null) {try {rs.close();
      rs = null;
      } catch (Exception e) {}
      }
      if (ps != null) {try {ps.close();
      ps = null;
      } catch (Exception e) {}
      }
      if (cn != null) {try {cn.close();
      cn = null;
      } catch (Exception e) {}
      }
    }
    return deleteNum;
  }


  /**
   * 刪除指定編號的對象類型信息,并且關聯在此對象類型下的具體數據對象也將會被刪除
   * @param tid long 對象類型編號
   * @param isChild boolean  是否刪除所指定對象類型的所有子對象類型
   * @param conn Connection 數據庫連接
   * @return int 成功刪除的對象類型數量
   * @throws Exception
   */
  public int deleteDataType(long tid, boolean isChild, Connection conn) throws
      Exception {
    Connection cn = null;
    PreparedStatement ps = null;
    int deleteNum = 0;
    try {
      cn = conn;
      ArrayList childIds = getChileId(tid);
      ps = cn.prepareStatement("DELETE FROM CharAttribute a WHERE EXISTS ("
                               +
                               "SELECT b.* FROM CharAttribute b WHERE a.AId = b.AId AND a.Oid IN("
                               +
                               "SELECT c.Oid FROM DataInfo c WHERE c.TId = ?))");
      ps.setLong(1, tid);
      ps.executeUpdate();
      ps.close();
      ps = null;
      ps = cn.prepareStatement("DELETE FROM DoubleAttribute a WHERE EXISTS ("
                               +
                               "SELECT b.* FROM CharAttribute b WHERE a.AId = b.AId AND a.Oid IN("
                               +
                               "SELECT c.Oid FROM DataInfo c WHERE c.TId = ?))");
      ps.setLong(1, tid);
      ps.executeUpdate();
      ps.close();
      ps = null;
      ps = cn.prepareStatement("DELETE FROM IntegerAttribute a WHERE EXISTS ("
                               +
                               "SELECT b.* FROM CharAttribute b WHERE a.AId = b.AId AND a.Oid IN("
                               +
                               "SELECT c.Oid FROM DataInfo c WHERE c.TId = ?))");
      ps.setLong(1, tid);
      ps.executeUpdate();
      ps.close();
      ps = null;
      ps = cn.prepareStatement("DELETE FROM BooleanAttribute a WHERE EXISTS ("

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合久久国产九一剧情麻豆| 国产在线精品一区二区三区不卡| 麻豆极品一区二区三区| 成人综合激情网| 欧美一区二区三区四区高清 | 91精品国模一区二区三区| 国产欧美日韩另类视频免费观看| 亚洲sss视频在线视频| 风流少妇一区二区| 精品日产卡一卡二卡麻豆| 亚洲mv在线观看| 在线观看国产91| 国产精品国产三级国产普通话99| 久久9热精品视频| 欧美一级片在线观看| 一区二区三区四区中文字幕| 99精品国产91久久久久久| 日本一区二区三区四区在线视频| 美女视频第一区二区三区免费观看网站| 97精品视频在线观看自产线路二| 国产视频一区二区三区在线观看| 久久精品国产久精国产爱| 欧美丝袜丝交足nylons| 日韩伦理av电影| 色综合天天性综合| 国产精品久久看| 风间由美一区二区av101| 久久久av毛片精品| 国产91精品露脸国语对白| 337p日本欧洲亚洲大胆精品| 国产综合久久久久久鬼色| 久久丝袜美腿综合| 国产成人综合网站| 国产无一区二区| 成人网在线免费视频| 中文字幕一区二区视频| www.欧美.com| 日韩理论在线观看| 欧美日韩色一区| 日本成人在线看| 久久蜜桃香蕉精品一区二区三区| 国产主播一区二区三区| 亚洲国产激情av| 色悠久久久久综合欧美99| 亚洲国产成人精品视频| 日韩一区二区影院| 国产福利一区二区三区视频在线| 国产人成亚洲第一网站在线播放| 91在线云播放| 亚洲成av人片在www色猫咪| 欧美欧美欧美欧美| 国产一区欧美一区| 中文字幕中文字幕在线一区 | 亚洲黄色小视频| 欧美福利电影网| 国产一区二区看久久| 国产精品久久久久久福利一牛影视| 色综合久久天天| 日韩电影免费在线观看网站| 久久久久国产精品麻豆ai换脸 | 成人久久久精品乱码一区二区三区| 国产精品污污网站在线观看| 91久久精品一区二区三区| 婷婷国产在线综合| 久久一区二区三区四区| 在线视频欧美区| 精品一区二区免费视频| 1区2区3区欧美| 日韩欧美国产一区二区在线播放| 成人免费视频播放| 日韩精品久久理论片| 国产精品久久久久久久午夜片| 911精品产国品一二三产区| 国产精品一区二区无线| 亚洲电影一区二区三区| 国产欧美一区二区三区在线老狼| 欧美影院一区二区三区| 国产精品 欧美精品| 首页国产丝袜综合| 亚洲视频香蕉人妖| 国产视频一区在线播放| 欧美一区二区成人6969| 在线视频观看一区| 国产成人精品一区二区三区四区 | 一区二区三区成人| 欧美激情艳妇裸体舞| 91麻豆精品久久久久蜜臀| 99精品视频一区| 国产精品99久久久| 日精品一区二区| 亚洲午夜精品网| 日韩美女视频一区| 国产精品无人区| 久久久久九九视频| 日韩女优av电影| 91.麻豆视频| 在线看不卡av| 一本一本久久a久久精品综合麻豆| 精品系列免费在线观看| 视频一区视频二区中文| 亚洲福中文字幕伊人影院| 亚洲男人天堂av| 亚洲免费在线观看| 亚洲少妇30p| 综合中文字幕亚洲| 亚洲欧洲www| 综合久久久久综合| 国产精品家庭影院| 亚洲天堂中文字幕| 亚洲伦理在线精品| 亚洲免费观看高清在线观看| 亚洲色图视频网| 亚洲色图清纯唯美| 亚洲精品va在线观看| 一区二区三区四区乱视频| 亚洲欧美一区二区不卡| 亚洲欧美国产三级| 亚洲精品成人悠悠色影视| 综合自拍亚洲综合图不卡区| 亚洲视频香蕉人妖| 亚洲一区在线观看免费 | 91精品国产一区二区三区| 欧美疯狂做受xxxx富婆| 日韩三级视频中文字幕| 欧美mv日韩mv国产网站app| 久久日韩精品一区二区五区| 久久免费电影网| 国产精品久久久久久久午夜片| 中文字幕一区av| 亚洲一二三专区| 日韩黄色一级片| 国产永久精品大片wwwapp| 成人a区在线观看| 在线亚洲一区二区| 欧美精品18+| 久久久精品国产免大香伊| 最近日韩中文字幕| 日韩高清电影一区| 国产精品18久久久久久vr| av在线免费不卡| 欧美系列在线观看| 2020日本不卡一区二区视频| 中文字幕第一区综合| 亚洲一区二区影院| 精品一区二区精品| av一区二区不卡| 色噜噜夜夜夜综合网| 欧美一级高清片| 国产精品久99| 麻豆精品视频在线| 91在线观看成人| 日韩一区二区免费在线电影| 中文子幕无线码一区tr| 香蕉影视欧美成人| 成人avav影音| 欧美xxxxxxxx| 亚洲一区二区在线免费看| 国产在线精品免费av| 91官网在线免费观看| 亚洲精品一区二区三区福利| 亚洲精品中文字幕在线观看| 精品一区二区国语对白| 欧美午夜片在线看| 国产精品传媒在线| 国产最新精品免费| 91精品欧美综合在线观看最新| 中文字幕第一页久久| 狠狠色综合播放一区二区| 欧美亚洲禁片免费| 亚洲欧洲日韩一区二区三区| 久久99精品国产麻豆不卡| 欧美性猛交xxxx黑人交| 亚洲天堂久久久久久久| 国产精品一级片| 欧美电视剧在线看免费| 日韩黄色免费网站| 欧美专区日韩专区| 亚洲人成网站影音先锋播放| 国产乱码精品一区二区三 | 日本福利一区二区| 亚洲国产成人自拍| 国产尤物一区二区| 欧美大片免费久久精品三p| 亚洲大片免费看| 欧美性色aⅴ视频一区日韩精品| 亚洲国产精品t66y| 国产91在线|亚洲| 久久一日本道色综合| 久久精品国产一区二区三| 8v天堂国产在线一区二区| 亚洲一区二三区| 在线视频国内一区二区| 亚洲精品国产精华液| 91热门视频在线观看| 亚洲欧美福利一区二区| 91免费精品国自产拍在线不卡| 国产精品久久久爽爽爽麻豆色哟哟| 韩日精品视频一区| 久久久久久久久岛国免费| 国产精品一区在线观看你懂的|