位置: IT常识 - 正文

用JSP简单的写一个登录注册页面(编写jsp程序,实现简易计算机)

编辑:rootadmin
用JSP简单的写一个登录注册页面 用JSP简单的写一个登录注册页面编写页面时先创建一个Dynamic web project,所有的jsp文件都放在WebContent文件夹下,java文件放在java Resource文件的src文件1.创建一个index.jsp文件作为主页面<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><a href="login.jsp">登录</a> <a href="register.jsp">注册</a></body></html>2.创建User类用于对用户的参数进行封装package web02;public class User {private String uaername;private String password;private int age;private String sex;public String getUaername() {return uaername;}public void setUaername(String uaername) {this.uaername = uaername;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public User() {super();// TODO Auto-generated constructor stub}public User(String uaername, String password, int age, String sex) {super();this.uaername = uaername;this.password = password;this.age = age;this.sex = sex;}}3.创建DBUtil类用来存储用户信息因为主要用jsp因此这里用map数组暂替数据库对用户信息进行存储package web02;import java.util.HashMap;import java.util.Map;public class DBUtil {private static Map<String,User> map=new HashMap<String, User>();//判断改用户名是否被注册过public Boolean addUser(String username,String password,int age,String sex) {if(map.containsKey(username)) {return false;}else {User user=new User(username, password, age, sex);map.put(username, user);return true;}}//判断改用户名和密码是否输入正确public static User LoginUser(String username,String password) {if(map.containsKey(username)) {User user=map.get(username);if (user.getPassword().equals(password)) {return user;}return null;}return null;}}4.创建注册页面register.jsp<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><%--action 将输入的数据传入注册处理页面--%><form action="register_do.jsp" method="post">用户名:<input type="text" name="username"><br>用户名密码:<input type="password" name="password"><br>年龄:<input type="text" name="age"><br>性别: 男<input type="radio" value="男" name="sex"> 女<input type="radio" name="sex" value="女"><input type="submit" value="注册"></form></body></html>5.创建注册处理页面register_do.jsp(对后续输出乱码问题进行处理)<%@page import="web02.DBUtil"%><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><%//获取传递过来的数据String username=request.getParameter("username");String password=request.getParameter("password");int age=Integer.parseInt(request.getParameter("age"));//因为在运行是系统会用默认的编码格式对传入的数据进行编码而原本的iso-8859-1,而这编码格式没有中文因此会产生乱码问题//通过系统默认的编码格式进行解码,在通过设置utf-8的编码String sex=new String(request.getParameter("sex").getBytes("iso-8859-1"),"utf-8");//创建DBUtil类对注册的用户数据进行判断DBUtil util=new DBUtil();Boolean b=util.addUser(username, password, age, sex);if(b==true){//注册成功后用getRequestDispatcher将页面跳转到登录页面,setAttribute用来传递不同的参数//在登录界面接收后呈现出不同的数据用于区分跳转的页面和直接登录页面request.setAttribute("key", "注册成功,请登录!");request.getRequestDispatcher("login.jsp").forward(request, response);}%></body></html>6.创建登录页面login.jsp<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><%//对传入的数据进行接受并显示Object key=request.getAttribute("key");if(key!=null)out.println(key);%>登录<hr><form action="login_do.jsp" method="post">用户名:<input type="text" name="username"><br>用户名密码:<input type="password" name="password"><br><input type="submit" value="登录"></form></body></html>7.创建登录处理页面login_do.jsp<%@page import="web02.User"%><%@page import="web02.DBUtil"%><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><% String username=request.getParameter("username");String password=request.getParameter("password");User user=DBUtil.LoginUser(username, password);if(user==null){//登录失败跳转回登录页面request.setAttribute("key", "<font color='red'>登录失败,用户名或密码错误!</font><br>");request.getRequestDispatcher("login.jsp").forward(request, response);//out.println("登录失败,用户名或密码错误!");}else{//out.println("登录成功!");//登录成功跳转到用户信息页面request.setAttribute("user", user);request.getRequestDispatcher("personCenter.jsp").forward(request, response);}%></body></html>8.创建用户信息页面personCenter<%@page import="web02.User"%><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title></head><body><% User user=(User)request.getAttribute("user");%>用户名:<%=user.getUaername() %><br>年龄:<%=user.getAge() %><br>性别:<%=user.getSex() %><br></body></html>
本文链接地址:https://www.jiuchutong.com/zhishi/298633.html 转载请保留说明!

上一篇:权限管理实现的两种方式(详解)(权限管理实现的功能包括)

下一篇:app内嵌h5支付功能,跳转支付宝&微信,vue组件(h5支付功能)

  • 红米手表2分辨率是多少(红米手表分辨率是多少)

    红米手表2分辨率是多少(红米手表分辨率是多少)

  • Word如何打开doc文件(word如何打开导航栏)

    Word如何打开doc文件(word如何打开导航栏)

  • airpods是有延迟的吗(airpods 有延迟)

    airpods是有延迟的吗(airpods 有延迟)

  • 微信打招呼频繁被限制登录多久会解封(微信打招呼频繁怎么解决)

    微信打招呼频繁被限制登录多久会解封(微信打招呼频繁怎么解决)

  • 苹果手表充电显示白苹果(苹果手表充电显示弯曲的线)

    苹果手表充电显示白苹果(苹果手表充电显示弯曲的线)

  • ctex是什么平台

    ctex是什么平台

  • 华为小圆点怎么打开(华为小圆点怎么去掉)

    华为小圆点怎么打开(华为小圆点怎么去掉)

  • 重置此电脑会删除什么(重置此电脑会删除桌面文件吗)

    重置此电脑会删除什么(重置此电脑会删除桌面文件吗)

  • iphone账户详情不可用(iphone账户详情不可用是什么意思)

    iphone账户详情不可用(iphone账户详情不可用是什么意思)

  • 注销微信号好友知道吗(注销微信号好友发信息显示什么)

    注销微信号好友知道吗(注销微信号好友发信息显示什么)

  • 打印机打出来字模糊是什么问题(打印机打出来字有重影是怎么回事)

    打印机打出来字模糊是什么问题(打印机打出来字有重影是怎么回事)

  • 注销公众号还能注册吗(注销公众号还能看到吗)

    注销公众号还能注册吗(注销公众号还能看到吗)

  • 苹果sn是什么意思(苹果sn就是序列号吗)

    苹果sn是什么意思(苹果sn就是序列号吗)

  • 为什么闲鱼不能用花呗(为什么闲鱼不能卖食品)

    为什么闲鱼不能用花呗(为什么闲鱼不能卖食品)

  • 华为震动大小在哪设置(华为手机震动大小在哪设置)

    华为震动大小在哪设置(华为手机震动大小在哪设置)

  • 佳能700d和800d的区别(佳能800d和70d哪个好)

    佳能700d和800d的区别(佳能800d和70d哪个好)

  • 8p一般能用几个小时(8p最多支持几w)

    8p一般能用几个小时(8p最多支持几w)

  • 华为来电视频怎么弄的(华为来电视频怎么不显示)

    华为来电视频怎么弄的(华为来电视频怎么不显示)

  • 华为MatePad Pro的多屏协同是啥(华为matepad Pro的型号MRX-AN19的尺寸)

    华为MatePad Pro的多屏协同是啥(华为matepad Pro的型号MRX-AN19的尺寸)

  • 荣耀v20nfc在哪里(荣耀v20nfc在手机哪个部位)

    荣耀v20nfc在哪里(荣耀v20nfc在手机哪个部位)

  • 手机流量限流怎么恢复(手机流量限流怎么收到验证码)

    手机流量限流怎么恢复(手机流量限流怎么收到验证码)

  • 怎么输入垂直文体(word怎么输入垂直文字)

    怎么输入垂直文体(word怎么输入垂直文字)

  • faceid坏了能否修复(faceid坏了怎么办)

    faceid坏了能否修复(faceid坏了怎么办)

  • 三星s9otg功能怎么打开(三星s9otc怎么打开)

    三星s9otg功能怎么打开(三星s9otc怎么打开)

  • 为什么快手小店进不去(为什么快手小店开通了 主页却没有)

    为什么快手小店进不去(为什么快手小店开通了 主页却没有)

  • 三星s10是什么屏幕(三星s10采用的屏幕是什么类型?)

    三星s10是什么屏幕(三星s10采用的屏幕是什么类型?)

  • 微信步数关闭后好友还能看见吗(微信步数关闭后还能看见昨天的吗)

    微信步数关闭后好友还能看见吗(微信步数关闭后还能看见昨天的吗)

  • qq红钻在手机上怎么用(qq手机版红钻在哪充值)

    qq红钻在手机上怎么用(qq手机版红钻在哪充值)

  • Win11任务管理器磁盘100%解决方法(win11任务管理器怎么没有了)

    Win11任务管理器磁盘100%解决方法(win11任务管理器怎么没有了)

  • 单位内部食堂如何做账务处理
  • 个体工商户收入怎么核定
  • 收到存款利息怎么写分录
  • 不验旧可以领新车吗
  • 没有车加油费可以入账吗
  • 收据可以盖发票专用章吗有效吗
  • 以前年度损益调整会计分录
  • 企业发票专用章使用涉及的审批流程
  • 假发票是怎么开出来的?
  • 关于年底双薪和分红问题的处理
  • 企业所得税年度申报表A类
  • 先转款后开票会计分录
  • 餐饮业购买餐桌椅会计分录
  • 工程预付款的规定
  • 汽车租赁油费怎么算
  • 工伤费用的伤残补助金属于福利费吗
  • 已经使用的固定资产其变动方式等基础资料将
  • 房地产企业工程款支付流程
  • 公司股票卖出会计处理
  • 补交社保后的个税怎么交
  • 住宿费增值税怎么算
  • 半成品牛排有营养吗
  • 广告公司 成本
  • windows10如何设置桌面背景
  • 残保金按计提数还是按发放数申报
  • mac系统屏幕
  • 2021年8月现在还能去武汉吗
  • 房地产企业困境
  • php substring
  • php面向对象优点,缺点
  • 企业收到的
  • Linux系统怎么配置IP
  • npm命令不存在
  • 土增税税
  • pytorch复制模型
  • yolov5损失
  • 未按规定采取预防措施,导致发生严重突发事件的
  • 镶嵌在巨石之间的英文
  • 薄雾笼罩怎么写
  • 旅行社代订酒店如何入账
  • 发票货物或应税劳务名称怎么填写
  • 固定资产租赁费发票增值税税率
  • 网站用masonry瀑布流无限加载重叠解决方法
  • 个税手续费返还计入哪个科目
  • sql server 2008 r2数据库备份
  • 初始化mysql命令
  • 股权转让产生的个人所得税
  • 公司买卖股票亏损了 要交企业所得税吗
  • 不开票收入要交印花税吗
  • 城镇土地使用税暂行条例
  • 出售投资所得属于什么科目
  • 总结哪些纳税人可以采用简易计税方法
  • 应收票据周转率公式
  • 购买二氧化氯
  • 工资表明细表
  • 场地租赁都需要交什么税
  • 未开票收入是否代表可以不开发票
  • 汇总帐凭证处理
  • 增加委托代理人
  • centos6.2安装教程
  • mysql 5.7.17 winx64安装配置图文教程
  • redhat6.5安装图形界面
  • Mac系统怎么设置ftp
  • 隐藏的系统应用在哪找
  • linux nc命令详解
  • 怎么手动安装xp系统
  • javascript如何定义变量
  • android images
  • ajax的异步是什么意思
  • unity3d插件手机版
  • 原生js实现promise
  • unity笔记本
  • window.parent与window.openner区别介绍
  • android studio 开发语言
  • cocos2dx 4.0
  • 河北省国家税务局长简介
  • 企业购票员有风险吗
  • 南京市国家税务局溧水分局
  • 灵活就业登记审核查询
  • 20万块手表交多少税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设