Servlet簡(jiǎn)單實(shí)現(xiàn)登錄功能
本文實(shí)例為大家分享了Servlet簡(jiǎn)單實(shí)現(xiàn)登錄功能的具體代碼,供大家參考,具體內(nèi)容如下
介紹:
Servlet 是 JavaWeb 三大組件之一。三大組件分別是:Servlet 程序、Filter 過(guò)濾器、Listener 監(jiān)聽(tīng)器。Servlet 是運(yùn)行在服務(wù)器上的一個(gè) java 小程序,它可以接收客戶(hù)端發(fā)送過(guò)來(lái)的請(qǐng)求,并響應(yīng)數(shù)據(jù)給客戶(hù)端。
學(xué)習(xí)內(nèi)容:
1、編寫(xiě)Servlet程序
2、web.xml 中去配置 servlet
3、簡(jiǎn)單實(shí)現(xiàn)登錄功能
具體步驟:
1.創(chuàng)建web工程,目錄如下

2.創(chuàng)建一個(gè)登錄頁(yè)面,一個(gè)登陸成功頁(yè)面放在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? "請(qǐng)輸入用戶(hù)名和密碼":requestScope.Msg}
</span><br>
用戶(hù)名:<input type="text" name="username"><br>
密碼:<input type="password" name="password"><br>
<input type="submit" value="登錄">
</form>
</body>
</html>
3.創(chuàng)建LoginServlet類(lèi),繼承HttpServlet
LoginServlet.java
因?yàn)檫@里只是簡(jiǎn)單介紹一下servlet用法,所以把用戶(hù)名和密碼是寫(xiě)的固定的。
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 {
//設(shè)置請(qǐng)求發(fā)來(lái)的字符集,避免亂碼
req.setCharacterEncoding("UTF-8");
//獲取用戶(hù)名和密碼
String username=req.getParameter("username");
String password=req.getParameter("password");
//判斷用戶(hù)名密碼是否正確(這里只做簡(jiǎn)單講解)
if(username.equals("張三")&&password.equals("123456")){
//如果用戶(hù)名密碼正確,則請(qǐng)求轉(zhuǎn)發(fā)到登錄成功頁(yè)面
req.getRequestDispatcher("success.html").forward(req,resp);
}else{
//否則重定向到登錄界面,并提示用戶(hù)用戶(hù)名或密碼錯(cuò)誤
req.setAttribute("Msg","用戶(hù)名或密碼錯(cuò)誤");
req.getRequestDispatcher("index.jsp").forward(req,resp);
}
}
}
4.在web.xml文件中配置Servlet
我們配置的時(shí)候只需要添加Servlet部分代碼,其他的在創(chuàng)建時(shí)已經(jīng)自動(dòng)生成。Servlet-name 是要配置的類(lèi)名,Servlet-class是類(lèi)的全類(lèi)名(不懂的朋友,在可以直接寫(xiě)類(lèi)名,系統(tǒng)會(huì)提示),最重要的:url-pattern標(biāo)簽配置訪問(wèn)地址 ,/ 斜杠在服務(wù)器解析的時(shí)候,表示地址為: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>
實(shí)現(xiàn)結(jié)果
運(yùn)行程序,輸入正確的用戶(hù)名密碼登陸成功后,會(huì)跳轉(zhuǎn)到登錄成功頁(yè)面


輸入錯(cuò)誤的用戶(hù)名密碼,會(huì)跳轉(zhuǎn)回登錄頁(yè)面,并提示用戶(hù)“用戶(hù)名或密碼錯(cuò)誤”


小結(jié):
通過(guò)今天的學(xué)習(xí),我們需要掌握J(rèn)avaweb工程的創(chuàng)建以及實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的Servlet程序,并學(xué)會(huì)在web.xml文件中配置Servlet類(lèi)??梢詫?shí)現(xiàn)簡(jiǎn)單的登錄,學(xué)習(xí)了請(qǐng)求轉(zhuǎn)發(fā)的使用,最后了解了如何設(shè)置字符集。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JavaWeb實(shí)現(xiàn)用戶(hù)登錄注冊(cè)功能實(shí)例代碼(基于Servlet+JSP+JavaBean模式)
- JSP+Servlet制作Java Web登錄功能的全流程解析
- java中servlet實(shí)現(xiàn)登錄驗(yàn)證的方法
- JSP+Servlet+JavaBean實(shí)現(xiàn)登錄網(wǎng)頁(yè)實(shí)例詳解
- Servlet+JavaBean+JSP打造Java Web注冊(cè)與登錄功能
- JSP + Servlet實(shí)現(xiàn)生成登錄驗(yàn)證碼示例
- 在jsp中用bean和servlet聯(lián)合實(shí)現(xiàn)用戶(hù)注冊(cè)、登錄
- servlet實(shí)現(xiàn)用戶(hù)登錄小程序
- servlet+jsp實(shí)現(xiàn)過(guò)濾器 防止用戶(hù)未登錄訪問(wèn)
- 使用Java servlet實(shí)現(xiàn)自動(dòng)登錄退出功能
相關(guān)文章
Spring security如何實(shí)現(xiàn)記錄用戶(hù)登錄時(shí)間功能
這篇文章主要介紹了Spring security如何實(shí)現(xiàn)記錄用戶(hù)登錄時(shí)間功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
java ssm框架的controller實(shí)現(xiàn)向頁(yè)面?zhèn)鬟f參數(shù)
這篇文章主要介紹了java ssm框架的controller實(shí)現(xiàn)向頁(yè)面?zhèn)鬟f參數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05
Intellij idea下使用不同tomcat編譯maven項(xiàng)目的服務(wù)器路徑方法詳解
今天小編就為大家分享一篇關(guān)于Intellij idea下使用不同tomcat編譯maven項(xiàng)目的服務(wù)器路徑方法詳解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
Java 遞歸遍歷實(shí)現(xiàn)linux tree命令方式
這篇文章主要介紹了Java 遞歸遍歷實(shí)現(xiàn)linux tree命令方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
java對(duì)象轉(zhuǎn)換String類(lèi)型的三種方法
在很多情況下我們都需要將一個(gè)對(duì)象轉(zhuǎn)換為String類(lèi)型。一般來(lái)說(shuō)有三種方法可以實(shí)現(xiàn):Object.toString()、(String)Object、String.valueOf(Object)。下面對(duì)這三種方法一一分析2013-11-11
spring boot配合前端實(shí)現(xiàn)跨域請(qǐng)求訪問(wèn)
本篇文章主要介紹了spring boot配合前端實(shí)現(xiàn)跨域請(qǐng)求訪問(wèn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04
spring Boot查詢(xún)數(shù)據(jù)分頁(yè)顯示的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于spring Boot查詢(xún)數(shù)據(jù)分頁(yè)顯示的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Java實(shí)現(xiàn)解析JSON大文件JsonReader工具詳解
這篇文章主要介紹了Java實(shí)現(xiàn)解析JSON大文件的工具JsonReader使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-01-01

