小编给大家分享一下Servlet怎么实现登录功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
介绍:
Servlet 是 JavaWeb 三大组件之一。三大组件分别是:Servlet 程序、Filter 过滤器、Listener 监听器。Servlet 是运行在服务器上的一个 java 小程序,它可以接收客户端发送过来的请求,并响应数据给客户端。
具体步骤:
1.创建web工程,目录如下
2.创建一个登录页面,一个登陆成功页面放在web目录下
登录界面代码如下
<%@ page contentType="text/html;charset=UTF-8" language="java" %><!DOCTYPE html><html ><head> <meta charset="UTF-8"> <title>Title</title></head><body> <form action="http://localhost:8080/demo_war_exploded/loginServlet" method="post"><span class="errorMsg"> ${empty requestScope.Msg? "请输入用户名和密码":requestScope.Msg}</span><br> 用户名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> <input type="submit" value="登录"> </form></body></html>
3.创建LoginServlet类,继承HttpServlet
LoginServlet.java
因为这里只是简单介绍一下servlet用法,所以把用户名和密码是写的固定的。
import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;public class LoginServlet extends HttpServlet { protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置请求发来的字符集,避免乱码 req.setCharacterEncoding("UTF-8"); //获取用户名和密码 String username=req.getParameter("username"); String password=req.getParameter("password"); //判断用户名密码是否正确(这里只做简单讲解) if(username.equals("张三")&&password.equals("123456")){ //如果用户名密码正确,则请求转发到登录成功页面 req.getRequestDispatcher("success.html").forward(req,resp); }else{ //否则重定向到登录界面,并提示用户用户名或密码错误 req.setAttribute("Msg","用户名或密码错误"); req.getRequestDispatcher("index.jsp").forward(req,resp); } }}
4.在web.xml文件中配置Servlet
我们配置的时候只需要添加Servlet部分代码,其他的在创建时已经自动生成。Servlet-name 是要配置的类名,Servlet-class是类的全类名(不懂的朋友,在可以直接写类名,系统会提示),最重要的:url-pattern标签配置访问地址 ,/ 斜杠在服务器解析的时候,表示地址为:http://ip:port/工程路径, /hello 表示地址为:http://ip:port/工程路径/hello 。
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet> <servlet-name>LoginServlet</servlet-name> <servlet-class>LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginServlet</servlet-name> <url-pattern>/loginServlet</url-pattern> </servlet-mapping></web-app>
实现结果
运行程序,输入正确的用户名密码登陆成功后,会跳转到登录成功页面
输入错误的用户名密码,会跳转回登录页面,并提示用户“用户名或密码错误”
以上是“Servlet怎么实现登录功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!