最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中servlet實(shí)現(xiàn)登錄驗(yàn)證的方法

 更新時(shí)間:2013年05月13日 10:09:06   作者:  
做web開發(fā),登錄驗(yàn)證是免不了的,今天學(xué)習(xí)了servlet的登錄驗(yàn)證,當(dāng)然是很簡(jiǎn)單的,沒有使用session,request等作用域?qū)ο?,所以還是可以直接通過地址訪問網(wǎng)頁(yè)的。

login.java:

復(fù)制代碼 代碼如下:

package com.ncu;
import java.io.PrintWriter;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class login extends HttpServlet{
 public void doGet(HttpServletRequest req,HttpServletResponse res){
  try{
   //res.setCharacterEncoding("utf-8");
   res.setContentType("text/html;charset=gbk");
   PrintWriter pw=res.getWriter();
   //返回登錄界面
   pw.print("<html>");
   pw.print("<head>");
   pw.print("<title>登錄界面</title></head>");
   pw.print("<body>");
   pw.print("<h1>用戶登錄界面</h1>");
   pw.print("<form action='loginpro' method=post>");
   pw.print("用戶名:<input type=text name=userName><br>");
   pw.print("密碼:<input type=password name=Pwd><br>");
   pw.print("<input type=submit value=submit>");
   pw.print("</body></html>");

   
  }catch(Exception e)
  {
   e.printStackTrace();
  }
 }
}

LoginPro.java:

復(fù)制代碼 代碼如下:

package com.ncu;
import java.io.PrintWriter;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginPro extends HttpServlet{
 public void doPost(HttpServletRequest req,HttpServletResponse res){
  try{
   String user=req.getParameter("userName");
   String pwd=req.getParameter("Pwd");
   if(user==null){
    user="";
   }
   if(pwd==null)
   {
    pwd="";
   }
   if(user.equals("nicolas")&&pwd.equals("nicolas")){
    //用戶和密碼合法
    //res.sendRedirect("wel");
//    res.setCharacterEncoding("gbk");
//    PrintWriter pw=res.getWriter();
//    pw.print("恭喜你,登錄成功??!");
    res.sendRedirect("welcome");

   }
   else{
    //不合法進(jìn)行跳轉(zhuǎn)

    res.sendRedirect("login");//跳轉(zhuǎn)到登錄界面
   }

   
  }catch(Exception e)
  {
   e.printStackTrace();
  }
 }
}

Welcome.java:

復(fù)制代碼 代碼如下:

package com.ncu;
import java.io.PrintWriter;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Welcome extends HttpServlet{
 public void doGet(HttpServletRequest req,HttpServletResponse res){
  try{
   res.setCharacterEncoding("gbk");
   PrintWriter pw=res.getWriter();
   pw.print("welcome,您好");

  }catch(Exception e)
  {
   e.printStackTrace();
  }
 }
}

web.xml

復(fù)制代碼 代碼如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name> 
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
  <!-- 給你的servlet取名,任意的 -->
  <servlet-name>hello</servlet-name>
  <!-- 指明servlet的路徑(包名+類名 -->
  <servlet-class>com.ncu.Hello</servlet-class>

  </servlet>
   <servlet-mapping>
   <!-- 這個(gè)servlet名必須和映射的一致 -->
     <servlet-name>hello</servlet-name>

  <!-- 這是在瀏覽器中輸入的訪問該servlet的url -->
  <url-pattern>/nicolas</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>helloservlet</servlet-name>
  <servlet-class>com.ncu.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>helloservlet</servlet-name>
  <url-pattern>/helloservlet</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>helloHttpServlet</servlet-name>
  <servlet-class>com.ncu.helloHttpServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>helloHttpServlet</servlet-name>
  <url-pattern>/helloHttpServlet</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>login</servlet-name>
  <servlet-class>com.ncu.login</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>login</servlet-name>
  <url-pattern>/login</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>loginpro</servlet-name>
  <servlet-class>com.ncu.LoginPro</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>loginpro</servlet-name>
  <url-pattern>/loginpro</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>welcome</servlet-name>
  <servlet-class>com.ncu.Welcome</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>welcome</servlet-name>
  <url-pattern>/welcome</url-pattern>
  </servlet-mapping>
</web-app>

相關(guān)文章

  • SpringBoot模板引擎之Thymeleaf的使用

    SpringBoot模板引擎之Thymeleaf的使用

    這篇文章主要介紹了SpringBoot模板引擎之Thymeleaf的使用,模板引擎是以業(yè)務(wù)邏輯層和表現(xiàn)層分離為目的的,將規(guī)定格式的模板代碼轉(zhuǎn)換為業(yè)務(wù)數(shù)據(jù)的算法實(shí)現(xiàn),它可以是一個(gè)過程代碼、一個(gè)類,甚至是一個(gè)類庫(kù),需要的朋友可以參考下
    2023-10-10
  • java用戶管理注冊(cè)功能 含前后臺(tái)代碼

    java用戶管理注冊(cè)功能 含前后臺(tái)代碼

    這篇文章主要介紹了java用戶管理注冊(cè)功能,含前端和后臺(tái)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Java 17 更快的 LTS 節(jié)奏

    Java 17 更快的 LTS 節(jié)奏

    這篇文章主要介紹的是Java 17 更新后的LTS,現(xiàn)在 Java 17 的發(fā)布,讓 Java 11 成了 LTS 系列的次新版本,下面我們就來(lái)看看Java 17 的更新 LTS有什么變化吧
    2021-09-09
  • java 異常被catch后 將會(huì)繼續(xù)執(zhí)行的操作

    java 異常被catch后 將會(huì)繼續(xù)執(zhí)行的操作

    這篇文章主要介紹了java 異常被catch后 將會(huì)繼續(xù)執(zhí)行的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2021-02-02
  • 詳談Java中BigDecimal的一個(gè)除法異常

    詳談Java中BigDecimal的一個(gè)除法異常

    下面小編就為大家分享一篇詳談Java中BigDecimal的一個(gè)除法異常,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2017-11-11
  • 簡(jiǎn)單的一次springMVC路由跳轉(zhuǎn)實(shí)現(xiàn)

    簡(jiǎn)單的一次springMVC路由跳轉(zhuǎn)實(shí)現(xiàn)

    本文主要介紹了springMVC路由跳轉(zhuǎn)實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Java實(shí)現(xiàn)快速并查集

    Java實(shí)現(xiàn)快速并查集

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)快速并查集,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • Java中ByteBuddy動(dòng)態(tài)字節(jié)碼操作庫(kù)的使用技術(shù)指南

    Java中ByteBuddy動(dòng)態(tài)字節(jié)碼操作庫(kù)的使用技術(shù)指南

    ByteBuddy?是一個(gè)功能強(qiáng)大的?Java?字節(jié)碼操作庫(kù),可以幫助開發(fā)者在運(yùn)行時(shí)動(dòng)態(tài)生成和修改類,而無(wú)需直接接觸復(fù)雜的?ASM?API,本文給大家介紹了Java?ByteBuddy動(dòng)態(tài)字節(jié)碼操作庫(kù)的使用技術(shù)指南,需要的朋友可以參考下
    2025-04-04
  • java實(shí)現(xiàn)乘地鐵方案的最優(yōu)選擇(票價(jià),距離)

    java實(shí)現(xiàn)乘地鐵方案的最優(yōu)選擇(票價(jià),距離)

    這篇文章主要介紹了java實(shí)現(xiàn)乘地鐵方案的最優(yōu)選擇(票價(jià),距離),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 跟我學(xué)Java Swing之游戲設(shè)計(jì)(2)

    跟我學(xué)Java Swing之游戲設(shè)計(jì)(2)

    跟我學(xué)Java Swing之游戲設(shè)計(jì)(2)...
    2006-12-12

最新評(píng)論

绥棱县| 巴塘县| 嘉祥县| 濮阳市| 沾化县| 中阳县| 东光县| 普兰店市| 库尔勒市| 天台县| 洛川县| 都匀市| 乐山市| 通化县| 洪雅县| 昭觉县| 广安市| 榆社县| 全州县| 松江区| 永丰县| 余姚市| 六枝特区| 禹城市| 龙陵县| 瑞昌市| 亳州市| 安陆市| 岚皋县| 丰县| 兴宁市| 武川县| 唐海县| 齐齐哈尔市| 永春县| 岗巴县| 吉木乃县| 临泽县| 新野县| 蓬溪县| 阿巴嘎旗|