📄 hotel.java
字号:
else
jTextArea1.append( "\n没找到记录\n" );
if(morerows)
{
rs.beforeFirst();
message(" 您要删除的人的姓名不止一个,请在信息栏中查看,并填入他的房号,谢谢!");
String p="gname"+"\t\t"+"room"+"\n";
while(rs.next())
{
String temp=rs.getString(6);
Countdays count =new Countdays(temp,c);
String money=" "+price_eachday*count.getdays();
p=p+rs.getString( 1 )+"\t\t"+ rs.getString( 5 )+"\n";
}
jTextArea1.setText(p);
//boolean judgeinput=false;
String roomnumstring=rs.getString( 5 );
int roomnum=Integer.parseInt(roomnumstring);
String command="";
//while(judge_roomnum(roomnum))
// roomnum=JOptionPane.showInputDialog(" 您要删除的人的姓名不止一个,请在信息栏中查看,并在当前行填入他的具体房号,谢谢!");
while(!judge_roomnum(roomnum))
{
jTextField5.setText("");
jTextArea1.setText("");
}
command= "DELETE FROM hotel WHERE gname LIKE" + "'" + jTextField2.getText() + "'"+"AND room LIKE"+"'"+roomnum + "'";
delete(command);
}
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
void delete(String m) {
try {
Statement statement = connect.createStatement();
//if ( !jTextField2.getText().equals( "" ) ) {
String query=m;
// if(morethanone==false)
/*if(morethanone==true)
{
boolean notblank=false;
if(!jTextField6.getText().equals(" "))
notblank=true;
if(notblank)
query = "DELETE FROM hotel WHERE gname LIKE" + "'" + jTextField2.getText() + "'"+"AND room LIKE"+"'"+jTextField6.getText() + "'";
}*/
jTextArea1.append("\n发送的命令:"+connect.nativeSQL(query)+"\n");
//可以返回int吗???????????
int result = statement.executeUpdate( query );
if ( result == 1 )
jTextArea1.append( "\n删除成功\n" );
else {
jTextArea1.append( "\n删除失败,请查看输入的房号是否正确。\n" );
jTextField2.setText( "" );
jComboBox1.setSelectedIndex(-1);
jTextField4.setText( "" );
jTextField5.setText( "" );
jTextField6.setText( "" );
}
// }
// else
// jTextArea1.append( "\n请您输入名子" );
statement.close();
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
//房客查询 Butten 3
void jButton3_actionPerformed(ActionEvent e) {
try {
//根据姓名查询
if ( !jTextField2.getText().equals( "" ) ) {
Statement statement =connect.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String query="SELECT * FROM hotel " +
"WHERE gname = '" +
jTextField2.getText() + "'";
jTextArea1.append( "\n发送的命令: " +
connect.nativeSQL( query )
+ "\n" );
ResultSet rs = statement.executeQuery( query );
display( rs );
jTextArea1.append( "\n查询成功\n" );
statement.close();
}
else
jTextArea1.setText(
"请输入要查找的房客姓名" );
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
void display( ResultSet rs )
{
try {
Calendar cal=Calendar.getInstance( );
String c=cal.get(Calendar.YEAR)+"-"+(cal.get(Calendar.MONTH)+1)+"-"+cal.get(Calendar.DATE);
boolean morerows=false;//是否不只一名该姓名房客
if (rs.next() ) {
jTextField2.setText( rs.getString(1) );
jComboBox1.setSelectedItem( rs.getString( 2 ) );
jTextField4.setText( rs.getString( 3 ) );
jTextField5.setText( rs.getString( 4 ) );
jTextField6.setText( rs.getString( 5 ) );
String temp=rs.getString(6);
Countdays count =new Countdays(temp,c);//调用Countdays类
jTextField1.setText(" "+price_eachday*count.getdays());
if(rs.next()) morerows=true;
}
else
jTextArea1.append( "\n没找到记录\n" );
if(morerows)
{ rs.beforeFirst();
message(" 您要查找的人的姓名不止一个,请在信息栏中查看,谢谢!");
String p="gname"+"\t\t"+"sex"+"\t\t"+"age"+"\t\t"+"idnumber"+"\t\t\t\t"+"room"
+"\t\t"+"money"+"\n";
while(rs.next())
{
String temp=rs.getString(6);
Countdays count =new Countdays(temp,c);
String money=" "+price_eachday*count.getdays();
p=p+rs.getString( 1 )+"\t\t"+ rs.getString( 2 )+"\t\t"+rs.getString( 3 )
+"\t\t"+ rs.getString( 4 )+"\t\t\t"+rs.getString( 5 )+"\t\t"+money+"\n";
}
jTextArea1.setText(p);
}
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
//空房查询 Button 4
void jButton4_actionPerformed(ActionEvent e) {
try {
Statement statement =connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
//先查询
String query = "SELECT * FROM hotel ";
jTextArea1.append( "\n发送的命令: " +
connect.nativeSQL( query )
+ "\n" );
ResultSet rs = statement.executeQuery( query );
findemptyroom( rs );
jTextArea1.append( "\n查询成功\n" );
statement.close();
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
void findemptyroom(ResultSet r)
{
int m=0;
String emptyroom=" ";
try {
if(r.next())
{
//r.beforeFirst();
for(int j=1;j<=100;j++)
{
r.first();
int full=0;
do
{
if(r.getString( 5 ).equals(Integer.toString(j)))
{
full=1;
break;
}
} while(r.next());
if(full==1) continue;
else
{
emptyroom = emptyroom + " " + j;
if(++m%5==0) emptyroom=emptyroom+"\n";
}
}//for 结束
}//if 结束
//若r.next()=0
else
{
jTextArea1.setText("1~100号房间全是空的,您随便选吧!");
}
jTextArea1.setText(emptyroom);
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
jTextArea1.append( sqlex.toString() );
}
}
//清空 Button 5
void jButton5_actionPerformed(ActionEvent e) {
jTextField2.setText("");
jComboBox1.setSelectedIndex(-1) ;
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField1.setText("");
jTextArea1.setText("");
}
//菜单项 1
void jMenuItem1_actionPerformed(ActionEvent e) {
JTextArea t=new JTextArea(10,15);
t.setLineWrap(true);
t.setEditable(false);
JScrollPane p=new JScrollPane(t);
t.setText("这是我的数据库课程设计,采用Java + SQL Server 2000 平台,请多多批评指教");
JOptionPane.showMessageDialog(null,p,"谢谢使用,请多提意见!",JOptionPane.INFORMATION_MESSAGE);
}
//菜单项 2
void jMenuItem2_actionPerformed(ActionEvent e) {
JTextArea t=new JTextArea(10,15);
t.setLineWrap(true);
t.setEditable(false);
JScrollPane p=new JScrollPane(t);
t.setText("本程序为酒店客房管理系统,表字段名为 gname,sex,age,idnumber,room ,in_date,且都是String型");
JOptionPane.showMessageDialog(null,p,"谢谢使用,请多提意见!",JOptionPane.INFORMATION_MESSAGE);
}
//菜单项3
void jMenuItem3_actionPerformed(ActionEvent e) {
setVisible(false);
Duty d=new Duty();
d.setVisible(true);
}
//以下是5个辅助函数----------------------------------------------------------
/**该方法是年龄范围的合法性检验*/
boolean judge_age()
{
String input=jTextField4.getText();
int age;
try{
age = Integer.parseInt(input);
}catch(Exception e){
return false;
}
//数字范围在18至80的返回值是true
if((age >= 12) && (age <=80))
return true;
else
return false;
}
//检查姓名合法性
boolean namelegal()
{
if(!jTextField2.getText().equals("")&&jTextField2.getText().length()<=50)
return true;
else
{
message("必须输入姓名,且长度不能超过50");
return false;
}
}
boolean judge_roomnum(int n){
if(n>=1&&n<=100) return true;
else return false;
}
boolean judge_sex()
{
if(!jComboBox1.getSelectedItem().equals(""))
return true;
else
{
message("请选择性别");
return false;
}
}
void message(String t)
{
JOptionPane.showMessageDialog(null,t);
}
}//Hotel类结束
//下面是actionAdapter部分--------------------------------------------
class Hotel_jButton1_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jButton1_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
class Hotel_jButton2_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jButton2_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
class Hotel_jButton3_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jButton3_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton3_actionPerformed(e);
}
}
class Hotel_jButton4_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jButton4_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}
class Hotel_jButton5_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jButton5_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}
class Hotel_jMenuItem1_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jMenuItem1_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem1_actionPerformed(e);
}
}
class Hotel_jMenuItem2_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jMenuItem2_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem2_actionPerformed(e);
}
}
class Hotel_jMenuItem3_actionAdapter implements java.awt.event.ActionListener {
Hotel adaptee;
Hotel_jMenuItem3_actionAdapter(Hotel adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem3_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -