Servlet簡單實現(xiàn)登錄功能
本文實例為大家分享了Servlet簡單實現(xiàn)登錄功能的具體代碼,供大家參考,具體內(nèi)容如下
介紹:
Servlet 是 JavaWeb 三大組件之一。三大組件分別是:Servlet 程序、Filter 過濾器、Listener 監(jiān)聽器。Servlet 是運行在服務(wù)器上的一個 java 小程序,它可以接收客戶端發(fā)送過來的請求,并響應(yīng)數(shù)據(jù)給客戶端。
學(xué)習(xí)內(nèi)容:
1、編寫Servlet程序
2、web.xml 中去配置 servlet
3、簡單實現(xiàn)登錄功能
具體步驟:
1.創(chuàng)建web工程,目錄如下
2.創(chuàng)建一個登錄頁面,一個登陸成功頁面放在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.創(chuàng)建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 { //設(shè)置請求發(fā)來的字符集,避免亂碼 req.setCharacterEncoding("UTF-8"); //獲取用戶名和密碼 String username=req.getParameter("username"); String password=req.getParameter("password"); //判斷用戶名密碼是否正確(這里只做簡單講解) if(username.equals("張三")&&password.equals("123456")){ //如果用戶名密碼正確,則請求轉(zhuǎn)發(fā)到登錄成功頁面 req.getRequestDispatcher("success.html").forward(req,resp); }else{ //否則重定向到登錄界面,并提示用戶用戶名或密碼錯誤 req.setAttribute("Msg","用戶名或密碼錯誤"); req.getRequestDispatcher("index.jsp").forward(req,resp); } } }
4.在web.xml文件中配置Servlet
我們配置的時候只需要添加Servlet部分代碼,其他的在創(chuàng)建時已經(jīng)自動生成。Servlet-name 是要配置的類名,Servlet-class是類的全類名(不懂的朋友,在可以直接寫類名,系統(tǒng)會提示),最重要的:url-pattern標(biāo)簽配置訪問地址 ,/ 斜杠在服務(wù)器解析的時候,表示地址為: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>
實現(xiàn)結(jié)果
運行程序,輸入正確的用戶名密碼登陸成功后,會跳轉(zhuǎn)到登錄成功頁面
輸入錯誤的用戶名密碼,會跳轉(zhuǎn)回登錄頁面,并提示用戶“用戶名或密碼錯誤”
小結(jié):
通過今天的學(xué)習(xí),我們需要掌握J(rèn)avaweb工程的創(chuàng)建以及實現(xiàn)了一個簡單的Servlet程序,并學(xué)會在web.xml文件中配置Servlet類。可以實現(xiàn)簡單的登錄,學(xué)習(xí)了請求轉(zhuǎn)發(fā)的使用,最后了解了如何設(shè)置字符集。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JavaWeb實現(xiàn)用戶登錄注冊功能實例代碼(基于Servlet+JSP+JavaBean模式)
- JSP+Servlet制作Java Web登錄功能的全流程解析
- java中servlet實現(xiàn)登錄驗證的方法
- JSP+Servlet+JavaBean實現(xiàn)登錄網(wǎng)頁實例詳解
- Servlet+JavaBean+JSP打造Java Web注冊與登錄功能
- JSP + Servlet實現(xiàn)生成登錄驗證碼示例
- 在jsp中用bean和servlet聯(lián)合實現(xiàn)用戶注冊、登錄
- servlet實現(xiàn)用戶登錄小程序
- servlet+jsp實現(xiàn)過濾器 防止用戶未登錄訪問
- 使用Java servlet實現(xiàn)自動登錄退出功能
相關(guān)文章
SpringMVC中Controller層獲取前端請求參數(shù)的方式匯總
這篇文章主要介紹了SpringMVC中Controller層獲取前端請求參數(shù)的幾種方式,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08idea啟動與jar包啟動中使用resource資源文件路徑的問題
這篇文章主要介紹了idea啟動與jar包啟動中使用resource資源文件路徑的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07mybatis項目實現(xiàn)動態(tài)表名的三種方法
有時在開發(fā)過程中java代碼中的表名和數(shù)據(jù)庫的表名并不是一致的,此時我們就需要動態(tài)的設(shè)置表名,本文主要介紹了mybatis項目實現(xiàn)動態(tài)表名的三種方法,具有一定的參考價值,感興趣的可以了解一下2024-01-01從零搭建SpringBoot+MyBatisPlus快速開發(fā)腳手架
這篇文章主要為大家介紹了從零搭建SpringBoot+MyBatisPlus快速開發(fā)腳手架示例教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Java中NoClassDefFoundError?和?ClassNotFoundException的區(qū)別
Java中NoClassDefFoundError和ClassNotFoundException的區(qū)別,從類繼承層次上來看,ClassNotFoundException是從Exception繼承的,所以ClassNotFoundException是一個檢查異常。具體詳情需要的朋友可以參考下面文章內(nèi)容2022-06-06JavaWeb學(xué)習(xí)筆記之Filter和Listener
這篇文章主要給大家介紹了關(guān)于JavaWeb學(xué)習(xí)筆記之Filter和Listener的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03IntelliJ?IDEA無公網(wǎng)遠(yuǎn)程Linux服務(wù)器環(huán)境開發(fā)過程(推薦收藏)
下面介紹如何在IDEA中設(shè)置遠(yuǎn)程連接服務(wù)器開發(fā)環(huán)境并結(jié)合Cpolar內(nèi)網(wǎng)穿透工具實現(xiàn)無公網(wǎng)遠(yuǎn)程連接,然后實現(xiàn)遠(yuǎn)程Linux環(huán)境進(jìn)行開發(fā),感興趣的朋友跟隨小編一起看看吧2023-12-12Spring MVC下 bootStrap服務(wù)器分頁代碼
因為Spring 對于ajax直接返回對象,到了WEB頁面就轉(zhuǎn)換成json 所以不需要使用JSON轉(zhuǎn)換封裝可以直接使用。接下來通過本文給大家分享Spring MVC下 bootStrap服務(wù)器分頁代碼,需要的的朋友參考下2017-03-03Eclipse?2022?設(shè)置中文漢化的超詳細(xì)圖文教程
這篇文章主要介紹了Eclipse?2022?設(shè)置中文漢化的超詳細(xì)圖文教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03