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

📄 databaseconnector.java

📁 java酒店管理系统
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
        		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 + -