我是新來的sql和我使用NetBeans和MySQL。servlet netbeans mysql連接
我想做一個servlet來檢查數據庫的登錄細節。
我發現了一些代碼oline,但它不與數據庫交互。此外,我發現每個例子都不起作用。我究竟做錯了什麼。
下面是一些代碼
package login;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
/**
*
* @author john
*/
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String userName = request.getParameter("userName");
if (Validate.CheckUser(userName)) {
RequestDispatcher rs = request.getRequestDispatcher("Welcome");
rs.forward(request,
response
);
}
else
{
RequestDispatcher rs = request.getRequestDispatcher("index.html");
rs.include(request , response);
}
}
}
和
package login;
import java.sql.*;
/**
*
* @author john
*/
public class Validate {
public static boolean CheckUser(String userName) {
boolean st = false;
try {
Class.forName("com.mysql.jdbc.jdbc2.optional.MysqlDataSource");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mynewdatabase?zeroDateTimeBehavior=convertToNull", "root", "admin");
PreparedStatement ps = con.prepareStatement("SELECT userName FROM userData where userName=?");
ps.setString(1, userName);
ResultSet rs = ps.executeQuery();
st = rs.next();
} catch (Exception e) {
e.printStackTrace();
}
return st;
}
}
什麼是我需要得到這個連接到數據庫的額外步驟。我正在使用最新版本的netbeans。
我已將5.1.26-bin.jar文件放入庫中。 Mynewdatabase運行得很好(我之前在一個不同的應用程序中使用一個JSP連接池進行連接)。
雖然此應用程序不會連接到數據庫。我在這裏沒有使用連接池。
任何幫助將是偉大的。
究竟是什麼問題? –
確保你提供了正確的驅動程序名稱和數據庫名稱。 –