Otrzymuję nazwę użytkownika i hasło za pomocą formularza i porównanie go z wartościami tabeli bazy danych. Jeśli są one dopasowane, powinien wydrukować nazwę użytkownika i hasło. Zrobione ..jak przekierować z serwletu na stronę JSP
Ale muszę przekierować je na inną stronę, jeśli jest ona ważna (na przykład welcome.jsp
) w folderze treści WWW. Jak mogę to zrobić. Jestem nowy w servlet
i jsp
pomóż mi.
SaveServlet.java
package myPack;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class SaveServlet
*/
public class SaveServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* Default constructor.
*/
public SaveServlet() {
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String u = request.getParameter("username");
String p=request.getParameter("password");
System.out.println("USER-->"+u);
ResultSet rs;
String q="select * from userinfo where username='"+u+"' and password='"+p+"'";
Connection con=null;
String c="jdbc:mysql://localhost:3306/test";
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(c, "root", "MyNewPass");
System.out.println("connection done");
PreparedStatement ps=con.prepareStatement(q);
System.out.println(q);
rs=ps.executeQuery();
System.out.println("done2");
while (rs.next()) {
System.out.println(rs.getString(1));
System.out.println(rs.getString(2));
}
}
catch (Exception e) {
// TODO: handle exception
System.out.println("Failed");
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
Nie publikuj przykładów z nieprawidłową składnią. Metoda sendRedirect() nie jest metodą statyczną. To samo dotyczy setHeader(). – DSoa
@DSoa po prostu zmień HttpServletResponse ze zmienną odpowiedzi zdefiniowaną w Twojej metodzie doPost. Żadna wielka sprawa – HFR1994