注册表单mvc 含源代码

 总结

  1. jsp给我们的ControllerServlet.java,ControllerServlet.java获取参数,信息封装给
  2. RegisterFormBean.java的对象看是否符合格式,
  3. 符合格式再信息封装给UserBean对象,调用Dbutil插入方法查重.]]要创建一个user集合
  4. 成功跳哪个界面,打印信息注意什么时候要加getsession
  5. 失败跳哪个界面.主要在RegisterFormBean.java,创建一个集合errors用来插入错误信息

RegisterFormBean和ControllerServlet里面进行定义以下

errors.put("name", "请输入姓名.");name就是 "请输入姓名"

 request.getSession().setAttribute("userBean", userBean);userBean就是输入的信息

request.setAttribute("DBMes", "你注册的用户已存在");

register.jsp输出:

正确formBean.name输出

错误formBean.errors.password输出,对象的集合的属性,

为什么能使用formBean.errors....formbean本来就是 RegisterFormBean类里面的

1在哪看到我们的数据呢,,userbean?

2什么时候用了session,有什么用


需要文件:

ControllerServlet.java

RegisterFormBean.java

UserBean.java

Dbutil.java

register.jsp

loginSuccess.jsp

gitee仓库:

gitee仓库   mvc经典实例注册表单: mvc经典实例注册表单介绍

以下页面

register.jsp

获取表单的name,email

formBean.name是怎么定义的

3为什么就可以formbean访问

                       要使用的jsp对象都在servlet里面用setAttribute定义的

request.getSession().setAttribute("userBean", userBean);给到用户的当然要确定一下域再来调用

                      setAttribute(key, value):这个方法将一个值(value)与一个键(key)关联,然后存储在当前的会话(session)中。在这个例子中,键是"userBean",值是userBean对象


ControllerServlet.java

为什么不写在doGet里面,传的是POST方法

用formBean把东西封装给RegisterFormBean里面

不符合要求重定向

4为什么用getRequestDispatcher

符合要求用userBean把东西封装给UserBean里面]作为数据库

又要用Dbutil到数据库了查重,判断有没有重,调用1

DBUtil里的insertUser方法

5为什么要有getInstance

用对象间接给DBUtil,

response.setHeader("refresh","3;url=loginSuccess.jsp");3秒跳转

 DBUtil.java
为什么要有getInstance

首先创建几个用户判断是不是重命名了

  getInstance干嘛的

这个传入一个用户的引用对吧

6为什么要用创建对象的另一种方法

String userName = user.getName();

   users.get(userName) != null这个集合里面要得到我的名字能不能得到能得到说明重名了false

不重true

创建集合存数据库


RegisterFormBean.java
errors.put("name", "请输入姓名.");设置name了name就是   请输入姓名

 诊断

为什么RegisterFormBean里面不能用这个呢

 xxxxxx request.setAttribute("RegisterFormBean", formBean);xxxxxx

因为发出去的是在session域里面,所以要加一个getsession

为什么要用两个bean...RegisterFormBean与userBean可以写到一块去吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/195676.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年山东省职业院校技能大赛中职组“网络安全”赛项竞赛试题-C

2024年山东省职业院校技能大赛中职组 “网络安全”赛项竞赛试题-C 一、竞赛时间 总计:360分钟 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 A、B模块 A-1 登录安全加固 180分钟 200分 A-2 本地安全策略设置 A-3 流量完整性保护 A-4 …

什么是单域名SSL安全证书?

单域名证书是什么? 单域名证书是指只包含一个具体域名的SSL/TLS证书,它可以用于保护单个主机名的HTTPS通信。例如,如果您有一个网站http://www.example.com,则单域名证书将仅为该域名颁发。 这种证书在保护单个域的安全方面很有…

2.5 Windows驱动开发:DRIVER_OBJECT对象结构

在Windows内核中,每个设备驱动程序都需要一个DRIVER_OBJECT对象,该对象由系统创建并传递给驱动程序的DriverEntry函数。驱动程序使用此对象来注册与设备对象和其他系统对象的交互,并在操作系统需要与驱动程序进行交互时使用此对象。DRIVER_OB…

vscode Prettier配置

常用配置项: .prettierrc.json 是 Prettier 格式化工具的配置文件 {"printWidth": 200, // 指定行的最大长度"tabWidth": 2, // 指定缩进的空格数"useTabs": false, // 是否使用制表符进行缩进,默认为 false"singl…

【MySQL】聚合函数:汇总、分组数据

文章目录 学习目标MAX()、MIN()、AVG()、SUM()、COUNT()COUNT(*) 得到所有记录条目DISTINCT去重练习1(使用UNION , SUM, BETEEN AND)GROUP BY子句练习2(使用sum,group by, join on, …

Redis 配置文件信息中文翻译版

前言 Redis 配置文件信息中文翻译版,方便大家阅读和理解对应参数信息及配置参数信息 # Redis configuration file example# Note on units: when memory size is needed, it is possible to specify # it in the usual form of 1k 5GB 4M and so forth: # 注意:当…

Linux下向Github仓库推送

文章目录 Git 与 Github安装git在github下创建项目下载项目到本地Git三板斧第一板斧 git add第二板斧 git commit第三板斧 git push Git 与 Github Git是目前从开发人员到设计人员的版本控制技术。gitee是国内社交代码托管平台。这是一个你可以玩和实验的地方。在这里你可以找…

Maven依赖管理项目构建工具(保姆级教学)

一、Maven介绍 官网地址:Maven – Introduction Maven 是一款为 Java 项目管理构建、依赖管理的工具(软件),使用 Maven 可以自动化构建、测试、打包和发布项目,大大提高了开发效率和质量。 Maven就是一个软件&#…

TSINGSEE青犀智慧机房AI+视频智能监管方案,保障机房设备稳定运转

一、背景与需求分析 随着互联网的高速发展,机房数量及配套环境设备日益增多,其运行状况直接决定着企业组织的运营效率和服务质量。作为企业信息化的核心,机房的安全监测与管理,不仅关系到企业的稳定运转,同时也关系到…

Java编程中,使用时间戳机制实现增量更新的示例

一、需求 课程下可以创建多个讲次,然后分享出去。 在没有更新分享前,通过分享链接看到的课程及讲次详情是快照。课程制作者可以继续修改调整自己的课程,对分享用户是不可见。 当制作者完成修改后,更新分享,让用户看到…

MySQL事务特性原理

文章目录 事务四特性预备知识checkpoint机制redo日志redo的流程事务提交后什么时候进行刷盘 undo日志:数据还未被修改、也是备份Undo日志的作用undo的存储结构回滚段与事务回滚段中的数据分类undo的类型undo log的生命周期 MVCC一、 原子性原理如何通过undo日志实现…

【C语言】深入解开指针(三)

🌈write in front :🔍个人主页 : 啊森要自信的主页 真正相信奇迹的家伙,本身和奇迹一样了不起啊! 欢迎大家关注🔍点赞👍收藏⭐️留言📝>希望看完我的文章对你有小小的帮助&#x…

业务流程图用什么软件画?这10款流程图软件,好用到飞起!

业务流程图是什么? 业务流程图是一种用于表示业务过程中活动流向的图形表示方法,它使用标准化的图形元素(如箭头、椭圆、方框等)来表达一个过程中各个环节之间的关系。在这个图形表示中,每个元素都有特定的含义和功能…

Python实现视频字幕时间轴格式转换

自己喜欢收藏电影,有时网上能找到的中文字幕文件都不满足自己电影版本。在自己下载的压制版电影中已内封非中文srt字幕时,可以选择自己将srt的时间轴转为ass并替换ass中的时间轴。自己在频繁 复制粘贴改格式的时候想起可以用Python代码完成转换这一操作&…

2.4 矩阵的运算法则

矩阵是数字或 “元素” 的矩形阵列。当矩阵 A A A 有 m m m 行 n n n 列,则是一个 m n m\times n mn 的矩阵。如果矩阵的形状相同,则它们可以相加。矩阵也可以乘上任意常数 c c c。以下是 A B AB AB 和 2 A 2A 2A 的例子,它们都是 …

Postman:API测试之Postman使用完全指南

Postman是一个可扩展的API开发和测试协同平台工具,可以快速集成到CI/CD管道中。旨在简化测试和开发中的API工作流。 Postman工具有Chrome扩展和独立客户端,推荐安装独立客户端。 Postman有个workspace的概念,workspace分personal和team类型…

mybatis、mysql 创建时间(create_time)异常自动更新为当前时间

目录标题 一、问题二、原因三、解决 一、问题 bug: mybatis更新代码没有修改时间,但是时间会自动更新为当前时间。 。。。 被坑了挺久 二、原因 可能是创建表的时候, Navicat Premium 等可视化工具给你整活了。。。 三、解决 取消勾选。 注意&…

【超好用的工具库】hutool-all工具库的基本使用

简介(可不看): hutool-all是一个Java工具库,提供了许多实用的工具类和方法,用于简化Java开发过程中的常见任务。它包含了各种模块,涵盖了字符串操作、日期时间处理、加密解密、文件操作、网络通信、图片处…

【漏洞复现】NUUO摄像头存在远程命令执行漏洞

漏洞描述 NUUO摄像头是中国台湾NUUO公司旗下的一款网络视频记录器,该设备存在远程命令执行漏洞,攻击者可利用该漏洞执行任意命令,进而获取服务器的权限。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律&…

单片机FLASH下载算法的制作

环境 硬件使用正点原子STM32F407探索者V2开发板 编程环境使用MDK 下载工具使用JLINK FLASH芯片使用W25Q128 什么是下载算法 单片机FLASH的下载算法是一个FLM文件,FLM通过编译链接得到,其内部包含一系列对FLASH的操作,包括初始化、擦除、写…