📄 databaseconnector.java
字号:
if(resultroomguest==1) //成功更新数据库
{
System.out.println("保存登记订客人预订的房间的信息成功");
}else{
System.out.println("失败保存登记的房间信息");
connect.close();
return;
}
/////////////////////////////////////////////////
//更新房间状态信息
/////////////////////////////////////////////////
String sqlupdateRS="update GuestRoom set roomState=? where guestRoomId=?";
PreparedStatement prepareStaters=connect.prepareCall(sqlupdateRS);//设定数据库查寻条件
prepareStaters.clearParameters();
prepareStaters.setString(1,1+""); //设置房间状态为1 登记
prepareStaters.setString(2,roomId);
int resultroomrs = prepareStaters.executeUpdate(); //执行数据库添加
if(resultroomrs==1) //成功更新数据库
{
System.out.println("成功更新房间状态信息");
}else{
System.out.println("失败更新房间状态信息");
connect.close();
return;
}
}
connect.close();
}catch (Exception e) {
e.printStackTrace();
}
}//saveCheckInInfo end
//保存预订信息
public void saveReserveInfo(ReserveInfo ri){
ReserveInfo reserveInfo = new ReserveInfo();
reserveInfo = ri;
//////////////////////////////////
try{
System.out.println("连接数据库。。。");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//连接数据库
Connection connect=DriverManager.getConnection("jdbc:odbc:hotelmanager"," "," ");
System.out.println("成功连接数据库");
///////////////////////////////////
//添加预订客人个人信息,并生成标志号
String sql="insert into ReserveGuestInfo(guestName,guestPhone,arriveDate,guestNum) values(?,?,?,?)";
String name=reserveInfo.getGuestName();
String phone=reserveInfo.getGuestPhone();
String arrive=reserveInfo.getArriveDate();//!!!时间日期的转换,有待解决
int num=reserveInfo.getGuestNum();
PreparedStatement prepareState=connect.prepareCall(sql);//设定数据库查寻条件
prepareState.clearParameters();
prepareState.setString(1,name);
prepareState.setString(2,phone);
prepareState.setString(3,arrive);
prepareState.setInt(4,num);
int result = prepareState.executeUpdate(); //执行数据库添加
if(result==1) //成功更新数据库
{
System.out.println("保存预订客人个人信息成功");
}else{
System.out.println("保存预订失败");
connect.close();
return;
}
///////////////////////////////更新客人的预订的房间信息
//获得预订客人标号
System.out.println("获得预订客人标号");
String sql2="select reserveGuestId from ReserveGuestInfo where guestName=? and guestPhone = ?";
PreparedStatement prepare2=connect.prepareCall(sql2);
prepare2.clearParameters();
prepare2.setString(1,name);
prepare2.setString(2,phone);
ResultSet resultset=prepare2.executeQuery();
int guestId=0;
while(resultset.next())
{
guestId=resultset.getInt("reserveGuestId");
System.out.println("预订客户号码:"+guestId);
}
///////////////////////////////
GuestRoom room=new GuestRoom();
String roomId="";
for (Enumeration ee = reserveInfo.getChoosenRoomList().elements(); ee.hasMoreElements() ;)
{
room=(GuestRoom)ee.nextElement();
roomId=room.guestRoomId;
String sql3="insert into ReserveRoomInfo(reserveGuestId,guestRoomId) values(?,?)";
PreparedStatement prepareStategr=connect.prepareCall(sql3);//设定数据库查寻条件
prepareStategr.clearParameters();
prepareStategr.setString(1,guestId+"");
prepareStategr.setString(2,roomId);
int resultroomguest = prepareStategr.executeUpdate(); //执行数据库添加
if(resultroomguest==1) //成功更新数据库
{
System.out.println("保存预订客人预订的房间的信息成功");
}else{
System.out.println("失败保存预订的房间信息");
connect.close();
return;
}
//更新房间状态信息
//////////////////////////////////////////////
String sqlupdateRS="update GuestRoom set roomState=? where guestRoomId=?";
PreparedStatement prepareStaters=connect.prepareCall(sqlupdateRS);//设定数据库查寻条件
prepareStaters.clearParameters();
//用数字2 表示已经预订
prepareStaters.setInt(1,2); //设置房间状态为预订
prepareStaters.setString(2,roomId);
int resultroomrs = prepareStaters.executeUpdate(); //执行数据库添加
if(resultroomrs==1) //成功更新数据库
{
System.out.println("成功更新房间状态信息");
}else{
System.out.println("失败更新房间状态信息");
connect.close();
return;
}
}
connect.close();
}catch (Exception e) {
e.printStackTrace();
}
}//saveReserveInfo end
////////////////////////////////////////////////////////////////////////////////////
//删除预订信息,并修改房间状态,设置房间为空房间,0
public void saveUndoReserveInfo(Vector dRId,Vector dRoomId){
System.out.println("获得数据库中的预订信息表");
Vector deleteReserveId=new Vector();
Vector deleteRoomId=new Vector();
deleteRoomId=dRoomId; //获得要修改状态的房间Id
deleteReserveId=dRId; //根据删除的预订客人的Id,修改预订信息,包括房间状态信息
try{
System.out.println("连接数据库。。。");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//连接数据库
Connection connect=DriverManager.getConnection("jdbc:odbc:hotelmanager"," "," ");
System.out.println("成功连接数据库");
String sql="delete from ReserveGuestInfo where reserveGuestId=?";
PreparedStatement prepareState=connect.prepareCall(sql);//设定数据库查寻条件
for(int i=0;i<deleteReserveId.size();i++){
int deleteId=Integer.parseInt(deleteReserveId.get(i).toString().trim());
prepareState.clearParameters();
prepareState.setInt(1,deleteId);
int result = prepareState.executeUpdate();
if(result==1) //成功更新数据库
{
System.out.println("删除预订信息成功");
}else{
System.out.println("删除预订信息失败");
connect.close();
return;
}
}
//更新房间状态信息
//////////////////////////////////////////////
String sqlupdateRS="update GuestRoom set roomState=? where guestRoomId=?";
PreparedStatement prepareStaters=connect.prepareCall(sqlupdateRS);//设定数据库查寻条件
prepareStaters.clearParameters();
for(int i=0;i<deleteRoomId.size();i++){
String roomId=(String)deleteRoomId.get(i);
prepareStaters.setInt(1,0); //设置房间状态为空
prepareStaters.setString(2,roomId);
int resultroomrs = prepareStaters.executeUpdate(); //执行数据库添加
if(resultroomrs==1) //成功更新数据库
{
System.out.println("成功更新房间状态信息");
}else{
System.out.println("失败更新房间状态信息");
connect.close();
return;
}
}
//////////////////////////////////////////////
/*
*根据deleteId设置房间状态的SQL的语句
*update GuestRoom
set roomState=0
where guestRoomId in(
select guestRoomId from ReserveRoomInfo r,ReserveGuestInfo g
where r.reserveGuestId=g.reserveGuestId
and g.reserveGuestId=5
) */
/* String sqlupdateRS="update GuestRoom set roomState=0 where guestRoomId in(select guestRoomId from ReserveRoomInfo r,ReserveGuestInfo g where r.reserveGuestId=g.reserveGuestId and g.reserveGuestId=?";
PreparedStatement prepareStaters=connect.prepareCall(sqlupdateRS);//设定数据库查寻条件
prepareStaters.clearParameters();
//用数字0 表示设置空房
for(int i=0;i<deleteReserveId.size();i++){
int deleteReserveId=Integer.parseInt(deleteReserveId.get(i).toString().trim());
//prepareStaters.setInt(1,0); //设置房间状态为空
System.out.println("deleteReserveId======="+deleteReserveId);
prepareStaters.setInt(1,deleteReserveId);
int resultroomrs = prepareStaters.executeUpdate(); //执行数据库添加
if(resultroomrs==1) //成功更新数据库
{
System.out.println("成功更新房间状态信息");
}else{
System.out.println("失败更新房间状态信息");
connect.close();
return;
}
}*/
connect.close();
}catch (Exception e) {
e.printStackTrace();//把该 Throwable 和它的跟踪情况打印到标准错误流。
}
}
////////////////////////////////////////////////////////////////////
//数据库连接器获取数据库的空房间表
public Vector getBlankRoomList(){
Vector blankRoomList=new Vector();
try{
System.out.println("连接数据库。。。");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//连接数据库
Connection connect=DriverManager.getConnection("jdbc:odbc:hotelmanager"," "," ");
System.out.println("成功连接数据库");
String sql="select guestRoomId,roomClass,roomFee,roomState from GuestRoom where roomState=0";
PreparedStatement prepareState=connect.prepareCall(sql);//设定数据库查寻条件
ResultSet resultset=prepareState.executeQuery();//执行数据库查寻
while(resultset.next()) {
//注意:Get***要和上面列出的一致
GuestRoom room=new GuestRoom();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -