package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import DB_bean.DB_base;
public class moblie_getInfo extends HttpServlet {
/**
* Constructor of the object.
*/
public moblie_getInfo() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action=request.getParameter("action");
//登录处理
if(action.equalsIgnoreCase("login")){
String uname = request.getParameter("uname");
String pswd = request.getParameter("pswd");
if(CheckLogin(uname, pswd)){
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("登录成功");
out.flush();
}else{
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("登录失败");
out.flush();
}
//获取电磁阀列表
}else if(action.equalsIgnoreCase("fastValveList")){
DB_base base = new DB_base();
String sql = "SELECT ValveID,name,PlantName FROM Valves";
ResultSet rs = base.sqlSelect(sql);
response.setContentType("text/html");
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
try {
while(rs.next()){
out.print(rs.getInt("ValveID"));
out.print("\t");
out.print(rs.getString("name"));
out.print("\t");
out.print(rs.getString("PlantName"));
out.println();
out.flush();
}
out.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//获取某个电磁阀的详细信息
}else if(action.equalsIgnoreCase("ValveDetails")){
DB_base base = new DB_base();
String valName = new String(request.getParameter("valName").getBytes("ISO8859_1"));
System.out.println(valName);
String sql = "SELECT LocationX,LocationY,WaterTask.name,WaterMode,LastWorkTime FROM Valves,WaterTask WHERE Valves.name='"+valName+"' and Valves.ValveID=WaterTask.ValveID";
ResultSet rs = base.sqlSelect(sql);
response.setContentType("text/html");
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
try {
if(rs.next()){
out.print(rs.getInt("LocationX"));
out.print("\t");
out.print(rs.getInt("LocationY"));
out.print("\t");
out.print(rs.getString("name"));
out.print("\t");
out.print(rs.getInt("WaterMode"));
out.print("\t");
if(rs.getDate("LastWorkTime") == null){
out.print("null");
}else{
out.print(rs.getDate("LastWorkTime").toString()+" "+rs.getTime("LastWorkTime").toString());
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//获取单个电磁阀的设置信息
}else if(action.equalsIgnoreCase("ValveSetupInfo")){
DB_base base = new DB_base();
String valName = new String(request.getParameter("valName").getBytes("iso-8859-1"));
System.out.println(valName);
String sql = "SELECT Valves.name, Valves.ValveID, PlantName, WaterMode, Threshold, LastTime, PlanID " +
"FROM Valves, WaterTask "+
"WHERE Valves.ValveID=WaterTask.ValveID and Valves.name='"+valName+"'";
ResultSet rs = base.sqlSelect(sql);
response.setContentType("text/html");
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
try {
if(rs.next()){
out.print(rs.getString("name"));
out.print("\t");
out.print(rs.getInt("ValveID"));
out.print("\t");
out.print(rs.getString("PlantName"));
out.print("\t");
out.print(rs.getInt("WaterMode"));
out.print("\t");
out.print(rs.getDouble("Threshold"));
out.print("\t");
out.print(rs.getInt("LastTime"));
out.print("\t");
out.print(rs.getInt("PlanID"));
out.flush();
out.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
/*response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" This is ");
out.print(this.getClass());
out.println(", using the GET method");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();*/
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action=request.getParameter("action");
//登录处理
if(action.equalsIgnoreCase("login")){
String uname = request.getParameter("uname");
String pswd = request.getParameter("pswd");
if(CheckLogin(uname, pswd)){
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("登录成功");
out.flush();
}else{
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("登录失败");
out.flush();
}
//获取电磁阀列表
}else if(action.equalsIgnoreCase("fastValveList")){
DB_base base = new DB_base();
String sql = "SELECT ValveID,name,PlantName FROM Valves";
ResultSet rs = base.sqlSelect(sql);
response.setContentType("text/html");
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
try {
while(rs.next()){
out.print(rs.getInt("ValveID"));
out.print("\t");
out.print(rs.getString("name"));
out.print("\t");
out.print(rs.getString("PlantName"));
out.println();
out.flush();
}
out.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//获取某个电磁阀的详细信息
}else if(action.equalsIgnoreCase("ValveDetails")){
DB_base base = new DB_base();
String valName = new String(request.getParameter("valName").getBytes("iso-8859-1"), "utf-8");
System.out.println(valName);
String sql = "SELECT LocationX,LocationY,WaterTask.name,WaterMode,LastWorkTime FROM Valves,WaterTask WHERE Valves.name='"+valName+"' and Valves.ValveID=WaterTask.ValveID";
ResultSet rs = base.sqlSelect(sql);
response.setContentType("text/html");
response.setCharacterEncoding("GBK");
PrintWriter out = response.getWriter();
try {
if(rs.next()){
out.print(rs.getInt("LocationX"));
out.print("\t");
out.print(rs.getInt("LocationY"));
out.print("\t");
out.print(rs.getString("name")