1.建立Login.jsp、mian.jsp,以及LoginServlet.java类。
2.Login.jsp中form的配置:action=“LoginServlet”(这里需要根据web.xml配置文件来写,必须相同)
3.配置web.xml:
<servlet-name>LoginServlet</servlet-name>
<servlet-class>Action.LoginServlet</servlet-class> <!--包名.类名-->
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/Action/LoginServlet</url-pattern> <!--这里可以随意命名,只要在action中写成一致就行-->
</servlet-mapping>
4.LoginServlet中跳转语句注意书写路径:
RequestDispatcher rd = request.getRequestDispatcher("/pages/main.jsp");//此时jsp页面在文件夹pages中
rd.forward(request,response); //在根目录下时直接写/main.jsp即可
而在web.xml配置中默认的jsp页面是这样写的:
<welcome-file-list>
<welcome-file>pages/index.jsp</welcome-file> <!--在根目录下时直接写index.jsp即可-->
</welcome-file-list>
源文件代码如下:
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
<welcome-file>pages/login.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>Action.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/Servlet/LoginServlet</url-pattern>
</servlet-mapping>
</web-app>
Servlet
package Action;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { // TODO Auto-generated
response.setContentType("text/html;charset=GB18030");
String username = request.getParameter("userName");
System.out.println("username:"+username);
String password = request.getParameter("password");
if(username.length()==0 ||password.length()==0){
System.out.println("用户名或者密码为空!");
System.out.println("----");
}
if (username.equals("1") && password.equals("1")) {
RequestDispatcher rd = request.getRequestDispatcher("/pages/afterLogin.jsp");
rd.forward(request,response);
/* response.sendRedirect("/afterLogin.jsp");*/
} else {
RequestDispatcher rd = request.getRequestDispatcher("/pages/login.jsp");
rd.forward(request,response);
System.out.println("登陆失败!");
/*response.sendRedirect("/index.jsp");
*/
}
}
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
super.doGet(req, resp);
}
}