📄 searchreshistory.java
字号:
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
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 javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* Servlet implementation class for Servlet: searchroom
*
*/
public class searchResHistory extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
static final long serialVersionUID = 1L;
private String price="0",typ="default";
private int pr=0,dlp=0,ulp=0;
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public searchResHistory() {
super();
}
/*
* (non-Javadoc)
*
* @see javax.servlet.Servlet#destroy()
*/
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
}
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request,
* HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request,
* HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;");
PrintWriter out=response.getWriter();
HttpSession session=request.getSession(true);
roomBean rmb = (roomBean)session.getAttribute("rmb"); // get session
bookBean bb=(bookBean)session.getAttribute("bb"); // bean
if (rmb == null) { rmb = new roomBean(); }// set a new bean object
else ;
String query;
typ=request.getParameter("type");
price=request.getParameter("price");
if (typ.equals("all"))
{
if (price.equals("all"))
{
dlp=0;
ulp=3000;
query = "SELECT * FROM Room WHERE price IN (SELECT price FROM Room WHERE ID IN (SELECT ID FROM Room WHERE ID LIKE 'su%' OR ID LIKE 'de%' OR ID LIKE 'cp%' OR ID LIKE 'bs%') AND price>0 AND price<=3000 AND status='free');";
}
else
{
if (price.equals("100"))
{
dlp=0;
ulp=100;
}
else if (price.equals("300"))
{
dlp=100;
ulp=300;
}
else if (price.equals("500"))
{
dlp=300;
ulp=500;
}
else if (price.equals("700"))
{
dlp=500;
ulp=700;
}
else if(price.equals("3000"))
{
dlp=700;
ulp=3000;
}
else
{
dlp=0;
ulp=0;
}
query = "SELECT * FROM Room WHERE price IN (SELECT price FROM Room WHERE ID IN (SELECT ID FROM Room WHERE ID LIKE 'su%' OR ID LIKE 'de%' OR ID LIKE 'cp%' OR ID LIKE 'bs%') AND price=>"+dlp+" AND price<"+ulp+" AND status='free');";
}
}
else
{
if (price.equals("all"))
{
dlp=0;
ulp=3000;
query = "SELECT * FROM Room WHERE price IN (SELECT price FROM Room WHERE ID IN (SELECT ID FROM Room WHERE ID LIKE '"+typ+"%') AND price>0 AND price<=3000 AND status='free');";
}
else
{
pr=Integer.parseInt(price);
if (price.equals("100"))
{
dlp=0;
ulp=100;
}
else if (price.equals("300"))
{
dlp=100;
ulp=300;
}
else if (price.equals("500"))
{
dlp=300;
ulp=500;
}
else if (price.equals("700"))
{
dlp=500;
ulp=700;
}
else if(price.equals("3000"))
{
dlp=700;
ulp=3000;
}
else
{
dlp=0;
ulp=0;
}
query = "SELECT * FROM Room WHERE price IN (SELECT price FROM Room WHERE ID IN (SELECT ID FROM Room WHERE ID LIKE '"+typ+"%') AND price=>"+dlp+" AND price<"+ulp+" AND status='free');";
}
}
//determine room type and price, then set query
try
{
int rowNum=0;
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 = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery(query); //execute query
ResultSetMetaData rm=rs.getMetaData();
int colNum=rm.getColumnCount();
int lp=1;
int lop=1;
if (!rs.wasNull())
{
if (rs.next())
{
for (rs.first(); !rs.isAfterLast(); rs.next())
{
rowNum++;
}// get row number
}
}//determine whether or not the result set is null
String data[][]=new String[rowNum+2][colNum+1];
data[0][0]="Room Type";
for (rs.first();!rs.isAfterLast();rs.next())
{
if(rs.getString(1).split("0")[0].equals("su"))
{
data[lp][0]="Superior";
}
else if(rs.getString(1).split("0")[0].equals("de"))
{
data[lp][0]="Deluxe";
}
else if(rs.getString(1).split("0")[0].equals("cp"))
{
data[lp][0]="Club Prestige";
}
else if(rs.getString(1).split("0")[0].equals("bs"))
{
data[lp][0]="1/2 Bedroom Suite";
}
lp++;
}//determine room type
for (int i=0;i<(colNum);i++)
{
data[0][i+1]=rm.getColumnName(i+1);
}//get column name
for (rs.first();!rs.isAfterLast();rs.next())
{
for (int i=0;i<(colNum);i++)
{
data[lop][i+1]=rs.getString(i+1);
}
lop++;
}
//get data from result set
out.println("<html><head><title>Search Result</title>");
out.println("<script src=\"inc/back.js\" type=\"text/javascript\"></script>");
out.println("<script language=\"javascript\" type=\"text/javascript\"> var bLoadComplete = false;window.onload = f_iframeResize; </script>");
out.println("<style type=\"text/css\"><!--body {font-family: Arial, Helvetica, sans-serif;font-size: 12px;");
out.println("color: #0099FF;text-decoration: blink;background-color: transparent;border: none;");
out.println("}--></style>");
out.println("</head>");
out.println("<body>");
out.println("<table>");
out.println("<tr><td>Room Type");
out.print("</td><td>ID");
out.print("</td><td>Status");
out.print("</td><td>Price");
out.print("</td>");
out.println("</tr>");
for (int i=1;i<(rowNum+1);i++)
{
out.println("<form action=\"reservationZone.jsp\" method=\"post\" width=\"100%\">");
out.println("<tr><td>");
out.print(data[i][0]);
out.print("</td><td>");
out.print(data[i][1]);
out.print("</td><td>");
out.print(data[i][colNum-1]);
out.print("</td><td>");
out.print(data[i][colNum]);
out.print("</td>");
out.print("<td>");
out.println("<input type=\"hidden\" name=\"room_id\" value=\""+data[i][1]+"\" checked /> ");
out.println("<input type=\"hidden\" name=\"price\" value=\""+data[i][colNum]+"\" checked /> ");
out.println("<input type=\"hidden\" name=\"type\" value=\""+data[i][0]+"\" checked /> ");
out.print("<input type=\"submit\" name=\"Submit\" value=\"Book It!\" />");
out.print("</td>");
out.println("</tr>");
out.println("</form>");
}//output all data
out.println("</table>");
out.println("<p><a href=\"search.jsp\">New search</a></p>");
out.println("</body></html>");
//output page
rmb.setType(typ);
rmb.setNum(String.valueOf(rowNum));
//response.sendRedirect("search.jsp");
rs.close();
stmt.close();
conn.close();
}
catch(SQLException e)
{
out.println("<html><head><title>Search Result</title>");
out.println("<script src=\"inc/back.js\" type=\"text/javascript\"></script>");
out.println("<script language=\"javascript\" type=\"text/javascript\"> var bLoadComplete = false;window.onload = f_iframeResize; </script>");
out.println("<style type=\"text/css\"><!--body {font-family: Arial, Helvetica, sans-serif;font-size: 12px;");
out.println("color: #0099FF;text-decoration: blink;background-color: transparent;border: none;");
out.println("}--></style>");
out.println("</head>");
out.println("<body>");
out.println("Sorry,there is no more room available...");
out.println("<a href=\"search.jsp\">Change condition...</a>");
out.println("</body></html>");
//go to null result set page
}
catch (Exception e) {
out.println("Other: Error occur!"+e.getCause());
out.println("Details: "+e.getStackTrace());
} //other error detector
}
/*
* (non-Javadoc)
*
* @see javax.servlet.GenericServlet#init()
*/
public void init() throws ServletException {
// TODO Auto-generated method stub
super.init();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -