我有一個html登錄頁面,用戶必須輸入一個數字,如果這個數字在數據庫中註冊,用戶將被重定向到某個站點。如果該號碼不在數據庫中,則用戶可以看到錯誤消息。目前我正在用java servlet,本地mySql數據庫和tomcat 8.0來完成這項工作,並且它完美地工作。但我需要使用JSON訪問遠程數據庫,我用mozilla firefox上的海報插件填充數據庫,我可以看到數據庫中有什麼。所以它需要通過json檢查HTML頁面上的用戶輸入與數據庫中的數據並授予訪問權限。這是我的Java servlet連接到我的mysql數據庫。JSON和java servlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class servlet extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
String Ticketnumber = request.getParameter("Ticketnumber");
if(Ticketnumber.length() >= 16 || Ticketnumber.length() <= 14){
response.sendRedirect("http://localhost:8080/Error.html");
}
String DB_URL="jdbc:mysql://localhost/ticketnumbers";
String USER = "root";
String PASS = "password";
try{
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
final String sql;
sql = "select Ticketnumber from users where Ticketnumber='"+ Ticketnumber +"' limit 1";
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
if(rs != null && rs.next()){
response.sendRedirect("http://localhost:8080/Welcome.html");
}else{
response.sendRedirect("http://localhost:8080/Error.html");
}
stmt.close();
conn.close();
}catch(SQLException se){
se.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}finally{
}
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
你的問題不清楚。 – Perdomoff