真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java如何實現(xiàn)登錄

這篇文章將為大家詳細(xì)講解有關(guān)java如何實現(xiàn)登錄,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)是一家專業(yè)提供朝陽企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站建設(shè)、成都網(wǎng)站制作、H5頁面制作、小程序制作等業(yè)務(wù)。10年已為朝陽眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

具體內(nèi)容如下

一、環(huán)境搭建

JDK1.8  + Tomcat1.8

二、目錄結(jié)構(gòu)

java如何實現(xiàn)登錄

三、代碼示例

3.1、fail.html頁面




faill.html



 

 

 

 親, 你的用戶名或密碼輸入有誤!請重新輸入!
 
 返回登錄頁面

3.2、Login.htm頁面




Login.html






 
 用戶名:
 密    碼:
 
 

3.3、IndexServlet.java

package cn.itcase.servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
 
import javax.servlet.ServletException;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
 
/**
 * 用戶主頁邏輯
 * */
public class IndexServlet extends HttpServlet {
 
 public void doGet(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 
 // 設(shè)置編碼格式 
 response.setContentType("text/html;charset=utf-8");// setContentType設(shè)置瀏覽器的編碼格式
 
 // 1.信息輸出至瀏覽器
 PrintWriter writer = response.getWriter();
 String html = "";
 
 /**
 * 接收request域?qū)ο蟮臄?shù)據(jù) String loginName =
 * (String)request.getAttribute("loginName",userName);
 * 
 */
 
 /**
 * 在用戶主頁,判斷session對象不為空且存在指定的屬性則登錄成功 才能訪問資源。從session域?qū)ο笾腥〕鰰挃?shù)據(jù)
 * 
 * 
 * */
 // 2.得到session對象
 HttpSession session = request.getSession(false);
 // 2.1如果不存在session對象,登錄不成功,跳轉(zhuǎn)到登錄頁面
 if (session == null) {
 response.sendRedirect(request.getContextPath()
 + "/Login.html");
 return;
 }
 // 2.2沒有在session對象域中找到相應(yīng) session唯一標(biāo)識ID 則登錄不成功,跳轉(zhuǎn)到登錄頁面
 String loginName = (String) session.getAttribute("loginName");
 if (loginName == null) {
 response.sendRedirect(request.getContextPath() + "/Login.html");
 return;
 }
 html = "歡迎回來," + loginName + ",安全退出";
 writer.write(html);
 }
 
 public void doPost(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 
 doGet(request, response);
 }
 
}

3.4、LoginServlet.java

package cn.itcase.servlet;
 
import java.io.IOException;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
 * 登錄的邏輯
 * 設(shè)置編碼格式
 * 根據(jù)參數(shù)名獲取參數(shù)值
 * 判斷邏輯(使用session域?qū)ο螅?
 * 
 * 
 */
public class LoginServlet extends HttpServlet {
 protected void doGet(HttpServletRequest request,
 HttpServletResponse response) throws ServletException, IOException {
 // 設(shè)置編碼格式
 request.setCharacterEncoding("utf-8");// setCharacterEncoding設(shè)置服務(wù)器的編碼格式
 
 // 1.根據(jù)參數(shù)名獲取參數(shù)值
 String userName = request.getParameter("UserName");
 String userPwd = request.getParameter("UserPwd");
 
 // 2.登錄是否的邏輯判斷
 if("eric".equals(userName) && "123456".equals(userPwd)){
 /**分析使用技術(shù):
 * context域?qū)ο螅翰缓线m,可能會覆蓋數(shù)據(jù)
 * request.setAttribute("loginName",userName);
 * 
 * request域?qū)ο螅翰缓线m,整個網(wǎng)站必須得使用轉(zhuǎn)發(fā)技術(shù)來跳轉(zhuǎn)
 * request.getRequestDispatcher("/IndexServlet").forward(request,response);
 * 
 * session域?qū)ο螅汉线m
 * response.sendRedirect(request.getContextPath()+"/IndexServlet")
 * */
 //2.1 登錄成功
 // 2.1.1創(chuàng)建session對象 用于保存數(shù)據(jù)
 HttpSession session = request.getSession();
 
 // 2.1.1把數(shù)據(jù)保存到session域中
 session.setAttribute("loginName", userName); // session對象的唯一標(biāo)識"loginName" 唯一標(biāo)識名稱 userName
 //session.setMaxInactiveInterval(1*60*60*24*30); // session對象的有效時長 可以配置全局的有效時長
 
 //2.1.3跳轉(zhuǎn)到用戶主頁
 response.sendRedirect(request.getContextPath() + "/IndexServlet"); //sendRedirect()重定向 getContextPath()請求路徑
 }else{
 //2.2登錄失敗 請求重定向
 response.sendRedirect(request.getContextPath() + "/fail.html");
 }
 }
 
 protected void doPost(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 response.setCharacterEncoding("utf-8");
 doGet(request,response);
 }
 
}

3.5、LogoutServlet.java

package cn.itcase.servlet;
 
import java.io.IOException;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
 /**
 * 退出邏輯
 * */
public class LogoutServlet extends HttpServlet {
 
 
 public void doGet(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 /**
 * 安全退出
 * 刪除session對象中指定的loginName屬性即可
 * 
 */
 HttpSession session = request.getSession(false);
 if(session != null){
 session.removeAttribute("loginName");
 }
 //返回登錄頁面
 response.sendRedirect(request.getContextPath() + "/Login.html");
 }
 
 
 public void doPost(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 doGet(request,response);
 
 
 }
 
}

關(guān)于“java如何實現(xiàn)登錄”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


本文題目:java如何實現(xiàn)登錄
文章位置:http://weahome.cn/article/gcddii.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部