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

📄 tablerelationsmodel.java

📁 一个OR Mapping 工具
💻 JAVA
字号:
package org.dbgen.view;import javax.swing.*;import javax.swing.table.*;import org.dbgen.*;import org.dbgen.event.*;/** * This class was generated by a SmartGuide. * */public class TableRelationsModel extends DefaultTableModel implements RelationChangedListener {  static final int COL_MASTER_KEY = 0;  static final int COL_FOREIGN_TABLE = 1;  static final int COL_FOREIGN_KEY = 2;  Table fieldTable = null;  protected transient java.beans.PropertyChangeSupport propertyChange = new java.beans.PropertyChangeSupport(this);  protected final static String[] columns = { "Master Key", "Foreign Table", "Foreign Key" };  /**   * TableFieldsModel constructor comment.   */  public TableRelationsModel() {    super();  }  /**   * This method was created by a SmartGuide.   * @param table org.dbgen.Table   */  public TableRelationsModel(Table table) {    super();    setTable(table);  }  /**   * The addPropertyChangeListener method was generated to support the propertyChange field.   */  public synchronized void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {    propertyChange.addPropertyChangeListener(listener);  }  /**   * The firePropertyChange method was generated to support the propertyChange field.   */  public void firePropertyChange(String propertyName, Object oldValue, Object newValue) {    propertyChange.firePropertyChange(propertyName, oldValue, newValue);  }  /**   * This method was created by a SmartGuide.   * @return java.lang.Class   * @param col int   */  public Class getColumnClass(int col) {    Object obj = getValueAt(0, col);    if ( obj != null )      return getValueAt(0, col).getClass();    else      return String.class;  }  /**   * getColumnCount method comment.   */  public int getColumnCount() {    return columns.length;  }  /**   * This method was created by a SmartGuide.   * @return java.lang.String   * @param col int   */  public String getColumnName(int col) {    return columns[col];  }  /**   * getRowCount method comment.   */  public int getRowCount() {    return getTable().getRelations().size();  }  /**   * Gets the table property (org.dbgen.Table) value.   * @return The table property value.   * @see #setTable   */  public Table getTable() {    /* Returns the table property value. */    if (fieldTable == null) {      try {        fieldTable = new Table();      } catch (Throwable exception) {        System.err.println("Exception creating table property.");      }    };    return fieldTable;  }  /**   * getValueAt method comment.   * XXX - make N/A fields for non-length or non-scale field cases.   */  public Object getValueAt(int row, int col) {    Relation relation = (Relation) getTable().getRelations().elementAt(row);    switch (col)    {    case 0:      if ( relation.getMasterKey() != null )        return relation.getMasterKey();      else        return null;    case 1:      if ( relation.getForeignTable() != null )        return relation.getForeignTable();      else        return null;    case 2:      if ( relation.getForeignKey() != null )        return relation.getForeignKey();      else        return null;    default:      return null;    }  }  /**   * This method was created by a SmartGuide.   * @return boolean   * @param row int   * @param col int   */  public boolean isCellEditable(int row, int col) {    return true;  }  /**   * Performs the refresh method.   */  public void refresh() {    fireTableChanged(new javax.swing.event.TableModelEvent(this, -1, -1));    return;  }  /**   * This method was created by a SmartGuide.   * @param table org.dbgen.Table   */  public void relationAdded(RelationAddedEvent event) {    refresh();    return;  }  /**   * This method was created by a SmartGuide.   */  public void relationDeleted(RelationDeletedEvent event) {    refresh();    return;  }  /**   * The removePropertyChangeListener method was generated to support the propertyChange field.   */  public synchronized void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {    propertyChange.removePropertyChangeListener(listener);  }  /**   * Sets the table property (org.dbgen.Table) value.   * @param table The new value for the property.   * @see #getTable   */  public void setTable(Table table) {    /* Get the old property value for fire property change event. */    Table oldValue = fieldTable;    /* Set the table property (attribute) to the new value. */    fieldTable = table;    /* Fire (signal/notify) the table property change event. */    firePropertyChange("table", oldValue, table);    /* Listen to field changed events */    table.addRelationChangedListener(this);    return;  }  /**   * This method was created in VisualAge.   * @param obj java.lang.Object   * @param row int   * @param col int   */  public void setValueAt(Object value, int row, int col) {    try {      Relation relation = (Relation) getTable().getRelations().elementAt(row);      switch (col) {      case 0 :        relation.setMasterKey((Field) value);        //				relation.setForeignTable(new Table());        relation.setForeignKey(new Field());      break;      case 1 :        relation.setForeignTable((Table) value);      break;      case 2 :        relation.setForeignKey((Field) value);      break;      default :      }      fireTableRowsUpdated(row, row);    } catch (Exception ex) {      ex.printStackTrace();    }  }}

⌨️ 快捷键说明

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