栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java实现登录案例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java实现登录案例

本文实例为大家分享了java实现登录案例的具体代码,供大家参考,具体内容如下

一、环境搭建

JDK1.8  + Tomcat1.8

二、目录结构

三、代码示例

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 {
 
 // 设置编码格式 
 response.setContentType("text/html;charset=utf-8");// setContentType设置浏览器的编码格式
 
 // 1.信息输出至浏览器
 PrintWriter writer = response.getWriter();
 String html = "";
 
 
 
 
 // 2.得到session对象
 HttpSession session = request.getSession(false);
 // 2.1如果不存在session对象,登录不成功,跳转到登录页面
 if (session == null) {
 response.sendRedirect(request.getContextPath()
 + "/Login.html");
 return;
 }
 // 2.2没有在session对象域中找到相应 session唯一标识ID 则登录不成功,跳转到登录页面
 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;

public class LoginServlet extends HttpServlet {
 protected void doGet(HttpServletRequest request,
 HttpServletResponse response) throws ServletException, IOException {
 // 设置编码格式
 request.setCharacterEncoding("utf-8");// setCharacterEncoding设置服务器的编码格式
 
 // 1.根据参数名获取参数值
 String userName = request.getParameter("UserName");
 String userPwd = request.getParameter("UserPwd");
 
 // 2.登录是否的逻辑判断
 if("eric".equals(userName) && "123456".equals(userPwd)){
 
 //2.1 登录成功
 // 2.1.1创建session对象 用于保存数据
 HttpSession session = request.getSession();
 
 // 2.1.1把数据保存到session域中
 session.setAttribute("loginName", userName); // session对象的唯一标识"loginName" 唯一标识名称 userName
 //session.setMaxInactiveInterval(1*60*60*24*30); // session对象的有效时长 可以配置全局的有效时长
 
 //2.1.3跳转到用户主页
 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 {
 
 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);
 
 
 }
 
}

3.6、总结

知道了如何实现前端页面与后端的数据交互

疑惑:如果有多个用户难道还一个一个的去判断他存不存在么?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/137268.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号