📄 roomconfiguration.java
字号:
package com.csbook.restaurant;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.sql.*;
import com.borland.dx.sql.dataset.*;
import com.borland.dbswing.*;
import com.borland.dx.dataset.*;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author pengtao
* @version 1.0
*/
public class RoomConfiguration extends JInternalFrame {
JPanel panel1 = new JPanel();
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
BorderLayout borderLayout2 = new BorderLayout();
JPanel jPanel2 = new JPanel();
JPanel jPanel3 = new JPanel();
JLabel jLabel1 = new JLabel();
JLabel jLabel4 = new JLabel();
JTextField remark = new JTextField();
JLabel jLabel5 = new JLabel();
JTextField capacity = new JTextField();
JLabel jLabel6 = new JLabel();
JLabel jLabel7 = new JLabel();
GridLayout gridLayout1 = new GridLayout(3,4);
JLabel jLabel8 = new JLabel();
JTextField roomNo = new JTextField();
JComboBox roomType = new JComboBox();
JPanel jPanel5 = new JPanel();
JButton addRoom = new JButton();
Database database1 = new Database();
TableScrollPane tableScrollPane1 = new TableScrollPane();
QueryDataSet queryDataSet1 = new QueryDataSet();
JdbTable jdbTable1 = new JdbTable();
Column column1 = new Column();
Column column2 = new Column();
Column column3 = new Column();
Column column4 = new Column();
Column column5 = new Column();
JComboBox deptName = new JComboBox();
String currentRoomType="";
JPanel jPanel6 = new JPanel();
JButton cancel = new JButton();
JButton deleteRoom = new JButton();
JdbNavToolBar DBNavToolBar = new JdbNavToolBar();
JButton modify = new JButton(); DBDisposeMonitor dBDisposeMonitor1 = new DBDisposeMonitor();
public RoomConfiguration(String title,boolean resizable,boolean closable,boolean maximizable,boolean iconifiable) {
super(title,resizable,closable,maximizable,iconifiable);
try {
jbInit();
pack();
}
catch(Exception ex) {
ex.printStackTrace();
}
}
private void jbInit() throws Exception {
panel1.setLayout(borderLayout1);
jPanel1.setLayout(borderLayout2);
jLabel1.setText("房台设置");
jLabel4.setText("备注");
jLabel5.setText("可容纳人数");
jLabel6.setText("房间类型");
jLabel7.setText("房间编号");
jPanel3.setDebugGraphicsOptions(0);
jPanel3.setLayout(gridLayout1);
jLabel8.setText("部门名称");
roomNo.setText("");
remark.setText("");
capacity.setText("");
addRoom.setText("添加房台");
addRoom.addActionListener(new RoomConfiguration_addRoom_actionAdapter(this));
database1.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Restaurant", "user", "user", false, "com.microsoft.jdbc.sqlserver.SQLServerDriver"));
queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, "SELECT room.id,room.deptName,room.type,room.capacity,room.remark " +
"FROM Restaurant.dbo.room", null, true, Load.ALL));
jdbTable1.setDataSet(queryDataSet1);
column1.setCaption("部门");
column1.setColumnName("deptName");
column1.setDataType(com.borland.dx.dataset.Variant.STRING);
column1.setPrecision(30);
column1.setSchemaName("dbo");
column1.setTableName("room");
column1.setWidth(10);
column1.setServerColumnName("deptName");
column1.setSqlType(1);
column2.setCaption("房台类型");
column2.setColumnName("type");
column2.setDataType(com.borland.dx.dataset.Variant.STRING);
column2.setPrecision(30);
column2.setSchemaName("dbo");
column2.setTableName("room");
column2.setWidth(10);
column2.setServerColumnName("type");
column2.setSqlType(1);
column3.setCaption("容量");
column3.setColumnName("capacity");
column3.setDataType(com.borland.dx.dataset.Variant.INT);
column3.setSchemaName("dbo");
column3.setTableName("room");
column3.setWidth(5);
column3.setServerColumnName("capacity");
column3.setSqlType(4);
column4.setCaption("备注");
column4.setColumnName("remark");
column4.setDataType(com.borland.dx.dataset.Variant.STRING);
column4.setPrecision(255);
column4.setSchemaName("dbo");
column4.setTableName("room");
column4.setServerColumnName("remark");
column4.setSqlType(1);
column5.setCaption("房台编号");
column5.setColumnName("id");
column5.setDataType(com.borland.dx.dataset.Variant.STRING);
column5.setPrecision(30);
column5.setRowId(true);
column5.setSchemaName("dbo");
column5.setTableName("room");
column5.setWidth(10);
column5.setServerColumnName("id");
column5.setSqlType(1);
queryDataSet1.setColumns(new Column[] {column5, column1, column2, column3, column4});
cancel.setText("关闭窗口");
cancel.addActionListener(new RoomConfiguration_cancel_actionAdapter(this));
cancel.addActionListener(new RoomConfiguration_cancel_actionAdapter(this));
deleteRoom.setText("删除房台");
deleteRoom.addActionListener(new RoomConfiguration_deleteRoom_actionAdapter(this));
DBNavToolBar.setVisible(false);
DBNavToolBar.setButtonStateInsert(JdbNavToolBar.AUTO_ENABLED);
DBNavToolBar.setButtonStateDelete(JdbNavToolBar.AUTO_ENABLED);
DBNavToolBar.setButtonStateCancel(JdbNavToolBar.AUTO_ENABLED);
DBNavToolBar.setButtonStateDitto(JdbNavToolBar.AUTO_ENABLED);
modify.setText("修改房台信息");
modify.addActionListener(new RoomConfiguration_modify_actionAdapter(this));
jPanel6.add(modify, null);
getContentPane().add(panel1, BorderLayout.CENTER);
panel1.add(tableScrollPane1, BorderLayout.CENTER);
tableScrollPane1.getViewport().add(jdbTable1, null);
this.getContentPane().add(jPanel1, BorderLayout.NORTH);
jPanel1.add(jPanel2, BorderLayout.NORTH);
jPanel2.add(jLabel1, null);
jPanel1.add(jPanel3, BorderLayout.CENTER);
jPanel3.add(jLabel7, null);
jPanel3.add(roomNo, null);
jPanel3.add(jLabel8, null);
jPanel3.add(deptName, null);
jPanel3.add(jLabel6, null);
jPanel3.add(roomType, null);
jPanel3.add(jLabel5, null);
jPanel3.add(capacity, null);
jPanel3.add(jLabel4, null);
jPanel3.add(remark, null);
jPanel1.add(jPanel5, BorderLayout.SOUTH);
jPanel5.add(addRoom, null);
jPanel5.add(deleteRoom, null);
this.getContentPane().add(jPanel6, BorderLayout.SOUTH);
jPanel6.add(cancel, null);
panel1.add(DBNavToolBar, BorderLayout.SOUTH);
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
this.prepareShow();
}
void addRoom_actionPerformed(ActionEvent e) {
if(roomNo.getText().trim().equals(""))
{
JOptionPane.showMessageDialog(this, "房台编号不能为空", "错误",JOptionPane.ERROR_MESSAGE);
return;
}
boolean roomExist=this.roomExist();
if(roomExist)
{
JOptionPane.showMessageDialog(this, "已存在该编号的房台", "错误",JOptionPane.ERROR_MESSAGE);
return;
}
Connection conn=null;
PreparedStatement ps=null;
try{
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Restaurant;user=user;password=user");
ps=conn.prepareStatement("insert into room(id,deptName,type,capacity,remark) values(?,?,?,?,?)");
ps.setString(1,roomNo.getText());
ps.setString(2,deptName.getSelectedItem().toString());
ps.setString(3,roomType.getSelectedItem().toString());
ps.setInt(4,Integer.parseInt(capacity.getText()));
ps.setString(5,remark.getText());
ps.executeUpdate();
//刷新列表显示
JButton refreshButton=DBNavToolBar.getRefreshButton();
refreshButton.doClick();
JOptionPane.showMessageDialog(this, "已成功增加该房台", "操作",JOptionPane.PLAIN_MESSAGE);
}
catch(SQLException ex){
ex.printStackTrace();
}
finally{
if(ps!=null)try{ps.close();}catch(SQLException ignore){}
if(conn!=null)try{conn.close();}catch(SQLException ignore){}
}
}
private boolean roomExist()
{
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs=null;
boolean exist=false;
try{
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Restaurant;user=user;password=user");
ps = conn.prepareStatement("select id from room where id=?");
ps.setString(1, roomNo.getText());
rs=ps.executeQuery();
if(rs.next())
exist=true;
}
catch(SQLException ex){
ex.printStackTrace();
}
finally{
if(rs!=null)try{rs.close();}catch(SQLException ignore){}
if(ps!=null)try{ps.close();}catch(SQLException ignore){}
if(conn!=null)try{conn.close();}catch(SQLException ignore){}
}
return exist;
}
void deleteRoom_actionPerformed(ActionEvent e) {
Connection conn=null;
PreparedStatement ps=null;
try{
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Restaurant;user=user;password=user");
ps = conn.prepareStatement("delete from room where id=?");
ps.setString(1,roomNo.getText());
if(ps.executeUpdate()==1)
{
//刷新列表显示
JButton refreshButton=DBNavToolBar.getRefreshButton();
refreshButton.doClick();
JOptionPane.showMessageDialog(this, "已成功删除该房台", "操作",
JOptionPane.PLAIN_MESSAGE);
}
}
catch(SQLException ex){
JOptionPane.showMessageDialog(this, "系统中存在与该房台相关的数据,现在不能删除该房台", "错误",JOptionPane.WARNING_MESSAGE);
}
finally{
if(ps!=null)try{ps.close();}catch(SQLException ignore){}
if(conn!=null)try{conn.close();}catch(SQLException ignore){}
}
}
private void prepareShow(){
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
try{
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Restaurant;user=user;password=user");
ps = conn.prepareStatement("select name from roomType");
rs=ps.executeQuery();
while(rs.next())
roomType.addItem(rs.getString("name"));
ps=conn.prepareStatement("select name from departments");
rs=ps.executeQuery();
while(rs.next())
deptName.addItem(rs.getString("name"));
}
catch(SQLException ex){
ex.printStackTrace();
}
finally{
if(rs!=null)try{rs.close();}catch(SQLException ignore){}
if(ps!=null)try{ps.close();}catch(SQLException ignore){}
if(conn!=null)try{conn.close();}catch(SQLException ignore){}
}
}
void cancel_actionPerformed(ActionEvent e) {
this.dispose();
}
void modify_actionPerformed(ActionEvent e) {
JButton postButton=DBNavToolBar.getPostButton();
postButton.doClick();
JButton saveButton=DBNavToolBar.getSaveButton();
saveButton.doClick();
JOptionPane.showMessageDialog(this, "已成功提交修改信息!", "提示",
JOptionPane.PLAIN_MESSAGE);
}
}
class RoomConfiguration_addRoom_actionAdapter implements java.awt.event.ActionListener {
RoomConfiguration adaptee;
RoomConfiguration_addRoom_actionAdapter(RoomConfiguration adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.addRoom_actionPerformed(e);
}
}
class RoomConfiguration_deleteRoom_actionAdapter implements java.awt.event.ActionListener {
RoomConfiguration adaptee;
RoomConfiguration_deleteRoom_actionAdapter(RoomConfiguration adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.deleteRoom_actionPerformed(e);
}
}
class RoomConfiguration_cancel_actionAdapter implements java.awt.event.ActionListener {
RoomConfiguration adaptee;
RoomConfiguration_cancel_actionAdapter(RoomConfiguration adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.cancel_actionPerformed(e);
}
}
class RoomConfiguration_modify_actionAdapter implements java.awt.event.ActionListener {
RoomConfiguration adaptee;
RoomConfiguration_modify_actionAdapter(RoomConfiguration adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.modify_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -