JSP+Javabean+Servlet实现用户注册

在entity包下新建javabean   也就是实体类User

注意id用 Integer 而不用 int, 因为 int 自动初始化为0


public class User {

private Integer id;

private String username;

private String password;

后面是set和get方法...

在Servlet包下创建servlet  右击Servlet包→新建→servlet   

doget和dopost方法已经默认勾选了  直接下一步

左上角的勾是说会把servlet注册到web.xml中  直接单击完成


在UserServlet中让doget做dopost方法  因为form表单是通过post方法传过来的  假如用get方法传值,dopost方法就要做doget

public void doGet(HttpServletRequest request, HttpServletResponse

response)throwsServletException, IOException {

        doPost(request,response);

}

重写dopost方法

处理提交过来时产生的中文乱码

request.setCharacterEncoding("UTF-8");

对两次密码进行判断  不同则转发到错误页面,相同则转发到信息页面,由于不涉及数据库,就把值保存在session中   跳转的页面scope要设置要session

并用try catch捕捉可能抛出的异常

try{

username=request.getParameter("username");

password=request.getParameter("password");

confirmpass=request.getParameter("confirmpass");

if(password.equals(confirmpass)){

user.setUsername(username);

user.setPassword(password);

//把对象保存在session中

request.getSession().setAttribute("UserRegister", user);

//服务器内部跳转

request.getRequestDispatcher("../userInfo.jsp").forward(request, response);

}else {

request.getRequestDispatcher("../error.jsp").forward(request, response);

}

}

catch(Exception e){

e.printStackTrace();

}

注册页面:register.jsp  action是把数据传给Servlet, 让Servlet处理 name属性的名字要和javabean中实体类entity的User中的属性一一对应

信息页面: 主要用userbean的方法来获取Servlet返回的数据  class为实体类User的所在路径 

scope设置为session   Servlet把数据封装在seesion中

不过我推荐用EL表达式获取数据,简化代码 格式:${保存对象.属性}

在这里我的对象名为UserRegister  user中已经有Username和Password属性了

user.setUsername(username);

user.setPassword(password);

//把对象保存在session中

request.getSession().setAttribute("UserRegister", user);

查看项目完整代码

项目地址:github.com/JinBinPeng/JSPdemo

注:js文件取于网上

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

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

相关文章

main的方法是Java_Java中的main()方法

在Java中,main()方法是Java應用程序的入口方法,也就是說,程序在運行的時候,第一個執行的方法就是main()方法,這個方法和其他的方法有很大的不同,比如方法的名字必須是main,方法必須是public sta…

深入理解Python的logging模块:从基础到高级

在Python编程中,日志记录是一种重要的调试和错误追踪工具。Python的logging模块提供了一种灵活的框架,用于发出日志消息,这些消息可以被发送到各种输出源,如控制台、文件、HTTP GET/POST位置等。本文将深入探讨Python的logging模块…

http请求连接

1、在Info.plist中添加NSAppTransportSecurity类型Dictionary。2、在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES转载于:https://www.cnblogs.com/liuting-1204/p/5919233.html

数据库不完全恢复 以及恢复到测试环境:

sample 1: 1.清空归档日志 RMAN> crosscheck archivelog all; RMAN> delete achivelog all; 2.清空数据文件。 select name from v$datafile; rm v$datafile 3.恢复数据 ##check file date: ##把db数据恢复到:2017-02-05 00:00:00 ls -lt /ngenprdblog/ ls…

centos7安装java6_CentOS7.6安装jdk1.8

2、登录Linux服务器,通过rz命令将jdk导入服务器如果没有rz命令 需要先安装lrzszyum install lrzsz -y3、将jdk压缩包解压到指定路径 -C 指定路径4、配置环境变量编辑/etc/profile文件 在末尾加上以下内容 wq保存退出source /etc/profile文件 使配置文件生效export J…

ubuntu安装wkhtmltopdf

下载安装wkhtmltox系统环境 http://wkhtmltopdf.org/downloads.html wget https://bitbucket.org/wkhtmltopdf/wkhtmltopdf/downloads/wkhtmltox-0.13.0-alpha-7b36694_linux-precise-amd64.deb dpkg -i 安装包名字 当我把它生成pdf的时候我想让每个块都是一页,经过…

人生苦短,我用python——当我在玩python的时候我玩些什么 -

程序的基本思路 用一个txt文件记录电脑的一天内累计使用时间累计使用时间超过若干小时就会自动关机程序开机自动运行 为什么我最后选择了python 想着怎么写、搜资料的时候就发现Java并不适合,虽然不是不能实现,但有好几个问题解决起来都有点麻烦。对我这…

IO流的练习5 —— 读取文件中的字符串,排序后写入另一文件中

需求:已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl”     请编写程序读取数据内容,把数据排序后写入ss.txt中。分析:   A:读取文件中的数据   B:把数据存在一个字符串中   C…

java解析未知key json_Gson解析JSON中动态未知字段key的方法

前面一篇文章我介绍了Gson的解析的基本方法。但我们在享受Gson解析的高度封装带来的便利时,有时可能会遇到一些特殊情况,比如json数据中的字段key是动态可变的时候,由于Gson是使用静态注解的方式来设置实体对象的,因此我们很难直接…

Twisted入门教程(5)

2019独角兽企业重金招聘Python工程师标准>>> 第五部分:由Twited支持的诗歌下载服务客户端 你可以从这里从头开始阅读这个系列 抽象地构建客户端 在第四部分中,我们构建了第一个使用Twisted的客户端。它确实能很好地工作,但仍有提高…

Jquery 学习之基础一

1.添加一个CSS类 $("button").click(function(){ $("#div1").addClass("important blue");}); 2.移除一个类 $("button").click(function(){ $("h1,h2,p").removeClass("blue");}); 3.切换类 $("button&…

**print('人生苦短 我爱Python')**

print(‘人生苦短 我爱Python’) 一、变量 **""" 1.代码自上而下执行 2_运算符和表达式.一行一句,不要把多个语句写到一行上,可读性不好 3中文只能出现在引号里,其他地方不能出现中文 4不能随意缩进 """**pr…

java线程提高速度_如何在JAVA中减慢线程速度

我有这个类,我在其中运行10次for循环.该类实现了Runnable接口.现在在main()中我创建了2个线程.现在两个都将循环运行到10.但我想检查每个线程的循环计数.如果t1超过7,则让它休眠1秒,以便让t2完成.但是如何实现这一目标呢?请参阅代码.我尝试但看起来完全愚蠢.只是如何…

(转ORCLE导入导出命令)

oracle数据库导入导出命令!Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份。 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。 Oracle有个好处&…

笔记本(华硕UL80VT)软件超频setFSB

Warning !!!If you are a beginner, do not use this software. This software is for power users only. Use "SetFSB.exe" at your own risk.试了setfsb各种版本,基本不能打开。还有官网的免费版,居然不能用,真是很奇怪。 官网&a…

Day01-python编程基础

1. 程序 为了完成某种特定功能,以某种程序设计语言编写的有序指令的集合。程序是指挥cpu工作的“工作手册”。计算机只能执行二进制代码,程序设计语言一般类似英文,想要让计算机理解你写的程序,必须把程序代码“翻译”成计算机能…

pro c 访问 MySQL_Pro*C  OCI  OCCI  及OCI介绍

Pro*C OCIOCCI 这三种都是C/C访问数据库的手段。Pro*C:内嵌SQL,预编译后把内嵌SQL处理为ORACLE标准运行库的调用,然后再象编译一般的C程序一样进行编译、连接、运行。1.proc XXX.pc2.gcc/g XXX.c –lclntsh(PRO*C的预编译,也可直接MAKEFILE…

细说Cookie

http://www.cnblogs.com/fish-li/archive/2011/07/03/2096903.html转载于:https://www.cnblogs.com/benpaodexiaopangzi/p/5933230.html

Node.js~在linux上的部署

我们以centOS为例来说说如何部署node.js环境 一 打开centos,然后开始下载node.js包 curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - yum -y install nodejs 二 安装gcc环境 yum install gcc-c make 安装完成! 三 安装nodejs的npm,这是一个包程序工具…

Django中的class Meta知识点

今天来回顾一下Django中model的class Meta class Main(models.Model):img models.CharField(max_length200) # 图片name models.CharField(max_length100) # 名称trackid models.CharField(max_length16) # 通用idclass Meta:abstract True #抽象类class MainWheel(…