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

📄 autot.java

📁 小型简单的旅馆预订系统. 客户:预定,更改,撤销,会员积分累积,查询预定,会员. 后台:会员更改,房间更改,预定更改,预定信息统计.
💻 JAVA
字号:
package servlet;

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

import servlet.roomReport.task;


 public class autoT extends HttpServlet {
   static final long serialVersionUID = 1L;
   Timer t;

   public void init(ServletConfig config) throws ServletException
	{
		super.init(config);
		autoT at=new autoT();
	
	}
	public autoT() {
		Date now=new Date();
		
		SimpleDateFormat format= new SimpleDateFormat("dd/MM/yyyy");
		String n=format.format(now);
		Calendar cl=Calendar.getInstance();
		cl.set(2007, 10, 8, 22, 43);
		t=new Timer();
		t.schedule(new task(),0,24*60*60*1000);//60 seconds
	}   
	class task extends TimerTask
	{

		@Override
		public void run()
		{
			System.out.println(getDate());
			System.out.println(getTime());
			String file;
			try
			{
				file = roomReport.createXML();
				System.out.println(file);
				addDB("0","report","system",file);
			}
			catch (SQLException e)
			{
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}
		
		
	}
	static String fileName;
	static insert in=new insert();
	static String getDate()
	{
		Date now=new Date();
		SimpleDateFormat format= new SimpleDateFormat("dd_MM_yyyy");
		String n=format.format(now);
		return n;
	}
	static String getDate2()
	{
		Date now=new Date();
		SimpleDateFormat format= new SimpleDateFormat("dd/MM/yyyy");
		String n=format.format(now);
		return n;
	}
	
	static String getTime()
	{
		Date now=new Date();
		SimpleDateFormat format= new SimpleDateFormat("hh:mm:ss");
		String n=format.format(now);
		return n;
	}
	static String getRan()
	{
		Die die=new Die();
		String ran=die.getRandomString();
		return ran;
	}
	static String getRanString()
	{
		String st="default";
		st=getDate2().concat(getRan());
		return st;
	}
	
	static String createXML() throws SQLException
	{
		String date=getDate();
		String query="SELECT Count(status) as free FROM Room WHERE status='free';";
		String free=in.getQuery(query, "free");
		query="SELECT Count(status) as free FROM Room WHERE status='booked';";
		String booked=in.getQuery(query, "free");
		query="select count(ID) as total from room;";
		String totalRoom=in.getQuery(query, "total");
		String total=String.valueOf(Integer.valueOf(free)+Integer.valueOf(booked));
		double per=(Double.valueOf(free)/Double.valueOf(total))*100;
		String percent=String.valueOf(per);
		Document doc=DocumentHelper.createDocument();
		doc.addProcessingInstruction("xml-stylesheet","type='text/xsl' href='roomReport.xsl'");
		//read database data for single room
		
		try
		{
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
			String driver = "Driver={Microsoft Access Driver (*.mdb)}";
			String dbq = "DBQ=E:\\Java\\Tomcat 6.0\\webapps\\ROOT\\database\\HRSDB.mdb";
			String connectionString = "jdbc:odbc:" + driver + ";" + dbq;
			Connection conn = DriverManager.getConnection(connectionString);
			Statement stmt;
			stmt = conn.createStatement(
					ResultSet.TYPE_SCROLL_SENSITIVE,
					ResultSet.CONCUR_UPDATABLE);
			query="select * from Room";
			ResultSet rs = stmt.executeQuery(query);
			ResultSetMetaData   rm=rs.getMetaData(); 
			
		
		//Element root=DocumentHelper.createElement("students");
		
		//doc.setRootElement(root); //set root
		
		Element root=doc.addElement("reports");
		
		Element eltStu1=root.addElement("roomReport");
		Element eltFree1=eltStu1.addElement("free");
		Element eltBook1=eltStu1.addElement("booked");
		Element eltTotal1=eltStu1.addElement("total");
		Element eltPer1=eltStu1.addElement("percent");
		
		eltFree1.setText(free);
		eltBook1.setText(booked);
		eltTotal1.setText(total);
		eltPer1.setText(percent);
		//add total status room above
		for (rs.first(); !rs.isAfterLast(); rs.next())
		{
			Element eltStu2=root.addElement("singleRoomReport");
			Element eltID=eltStu2.addElement("room_ID");
			Element eltType=eltStu2.addElement("type");
			Element eltAvail=eltStu2.addElement("available");
			Element eltStat=eltStu2.addElement("status");
			Element eltPrice=eltStu2.addElement("price");
			Element eltClose=eltStu2.addElement("close_date");
			Element eltTimes=eltStu2.addElement("times");
			String roomType=rs.getString("ID");
			eltID.setText(roomType);
			String type="";
			
			if(roomType.split("0")[0].equals("su"))
			{
				type="Superior";
			}
			else if(roomType.split("0")[0].equals("de"))
			{
				type="Deluxe";
			}
			else if(roomType.split("0")[0].equals("cp"))
			{
				type="Club Prestige";
			}
			else if(roomType.split("0")[0].equals("bs"))
			{
				type="1/2 Bedroom Suite";
			}
			eltType.setText(type);
			eltAvail.setText(rs.getString("available"));
			eltStat.setText(rs.getString("status"));
			eltPrice.setText(rs.getString("price"));
			eltClose.setText(rs.getString("close_date"));
			eltTimes.setText(rs.getString("times"));
		}
		
		}
		catch (InstantiationException e2)
		{
			// TODO Auto-generated catch block
			e2.printStackTrace();
		}
		catch (IllegalAccessException e2)
		{
			// TODO Auto-generated catch block
			e2.printStackTrace();
		}
		catch (ClassNotFoundException e2)
		{
			// TODO Auto-generated catch block
			e2.printStackTrace();
		}
		
		//add single room above
		PrintWriter pw=new PrintWriter(System.out);
		OutputFormat outFat=new OutputFormat("    ",true);
		outFat.setEncoding("utf-8");
		try
		{
			fileName="roomReport"+date+"_"+getRan()+".xml";
			XMLWriter xmlWriter=new XMLWriter(new FileWriter("WebContent/XML/"+fileName),outFat);
			xmlWriter.write(doc);
			xmlWriter.close();
			/*@file name: roomReport/dd/mm/yyyy/random.xml
			 * root: XML
			 *///~
			//xmlWriter.flush();
			//doc.write(d);
			//pw.close();
			//pw.flush();
		}
		catch (UnsupportedEncodingException e1)
		{
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		catch (IOException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return fileName;
	}
	
	static void addDB(String user_id,String type,String processor,String path)
	{
		
		insert in=new insert();
		String query;
		String ran=getRanString();
		query="INSERT INTO Report (ID,dt,processor,content) VALUES ('rep"+ran+"','"+getDate2()+"','"+processor+"','"+path+"');";//insert to report-->set report path
		in.update(query);
		query="SELECT ID FROM Report WHERE content='"+path+"';";
		String m=in.getQuery(query, "ID");
		
		query="INSERT INTO History (ID,user_id,type,processor,related_id) VALUES ('his"+ran+"','"+user_id+"','"+type+"','"+processor+"','"+m+"');";//insert to history-->set tracking path
		in.update(query);
	}


	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}  	
	
	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}   	  	    
}

⌨️ 快捷键说明

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