java成果项目_7.13 Java项目总结

之前的成果:

58c384ff29f8

1.png

今天的成果:

58c384ff29f8

登陆.png

58c384ff29f8

注册界面.png

58c384ff29f8

登陆跳转界面.png

58c384ff29f8

登陆成功.png

当然还有登陆错误界面... 就不上图了

下面来总结老师讲的重点:

58c384ff29f8

index.jsp.png

此处关键是:

1.把 onclick 从表单处移“进入”submit处

2.进入用submit 注册用普通的button

(button和submit区别请参考:http://blog.csdn.net/x_fledgling/article/details/53842684 )

3.注意一句的作用。

关键代码:

![](zt.jpg)

星辰聊天室登陆界面

用户名:

密码:

然后讲解的重点是jsp页面延时跳转到另一个页面:

实现方法一:

58c384ff29f8

跳转关键语句.png

关键语句:

其中3为延时秒数 ulr后为跳转目标jsp文件。

实现方法二:

58c384ff29f8

跳转关键语句2.png

其中2为延时秒数 ulr后为跳转目标jsp文件。

再来看后台关键代码:

58c384ff29f8

后台传输显示.png

message = "登陆成功";

req.setAttribute("mess", message);

// 将页面转发到login_ok.jsp,并且携带request和response对象

req.getRequestDispatcher("login_ok.jsp").forward(req, resp);

此语言将提示字符串信息发送给login_ok.jsp文件:

58c384ff29f8

login_ok.jsp.png

login_ok.jsp文件关键代码:

${ mess }

正在进入聊天室...

其中

换行为格式化, ${ mess } 对应后台语句req.setAttribute("mess", message); 中的mess参数。

后台和jsp文件结合产生的效果:

58c384ff29f8

效果.png

另外说明实现代码的关键几点:

1.注册没用数据库,使用的是Map容器,这就需要我们把注册数据后台处理文件和登陆数据处理文件放到到一起(即Message.java一个文件),分成两个文件无法一边注册map.put() 和 登陆遍历验证存在性!如:

58c384ff29f8

一个文件.png

2.相关验证字符串要用的方式:

String message = "";

String name = req.getParameter("username") == null?"":req.getParameter("username");

不用此方式会发生空指针异常!!! 也要求我们需要采用try catch 异常处理机制:

3.采用异常处理:

58c384ff29f8

try.png

58c384ff29f8

catch.png

4.容器Map要采用public static 修饰:

58c384ff29f8

static map.png

若不采用static修饰(即不变成类成员变量) 会出现容器无法存储账号-密码 数据! 原因貌似是产生了多线程,每进入一次方法都会产生新的Map,当然也要注意生命周期的问题!!!

感觉加static 也是一种妥协且简单处理之法,学习到后面再用更好的方法解决之。

5. 之用:

58c384ff29f8

a.png

58c384ff29f8

b.png

登陆表单提交所在index.jsp文件:

58c384ff29f8

index.jsp.png

注册表单提交所在register.jsp文件:

58c384ff29f8

register.jsp.png

type="hidden" 使类似input等元素不可见,并且给两个文件的代码name属性赋相同的值("method"), value属性赋不同的值, 后台依fs.equals()方法判断是登陆表单提交还是注册表单提交,此法以把两部分逻辑代码早早区分开以不混乱(因为没用数据库,导致一个文件代码逻辑混乱,所以必须用if判断早早分开!)

今天的不足之处是密码的正则表达式不太清楚,等的和大家交流下如何实现老师要求的密码格式:非空 大小写字母 数字 _ , !@#$% 密码长度8到16位,(密码必须包含数字以及大小写字母)

有会的小伙伴可以留言。

有不足之处还请批评指正,不胜感激。

先写这些把,后续有想起来的再来补...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值