注册表单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就是   请输入姓名

 诊断注册表单mvc 含源代码_第1张图片

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

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

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

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

你可能感兴趣的:(javaWeb,mvc)