servlet 应用
前言
应用servlet需要先配置
注意新建classes和lib文件夹
把路径改为刚刚创建的classes
使用jdbc连接数据库时,要把驱动器放在lib文件夹下
注意要下载与IDEA相匹配的,我之前就下载了41,42,结果一直有错误。
一、建立用户表
使用SQL Server建立一张用户表
二、编写servlet进行用户名和密码校验
1.连接数据库
2.创建一个登录页面
因为在此之前已经模仿过登录界面,所以可以直接使用,但需要注意的是账号登录这一块必须是表单形式,并且登录按钮的type为submit
把swpu.html直接复制到web文件夹下
3.登录,由于表中存在用户名为“tom”,密码为“123”的数据,所以验证成功并显示
4.当输入错误的用户名或密码则不显示用户名与密码
三、使用cookie,如果用户在登录时选择保存登录信息,30天内,用户无需登录
1.创建保存cookie的servlet
2.可以看到保存期限为30天
3.再次打开登录页面,用户名与密码已自动填充
4.添加在LoginServlet的代码
5.要注意在login.html添加js代码
四、使用session,显示网站当前在线人数
1.创建一个listener,对session实现监听
2.创建一个session的servlet,便于获取网站在线人数
3.注意配置web.xml
其中session-config是控制session的销毁时间
4.先使用GoogleChrome登录第一次
5.再使用FireFox登录第二次
6.最后session销毁,显示人数为0
五、使用过滤器解决乱码问题,登录时用户名为中文可能不能正常识别,解决该问题
造成乱码的原因主要是浏览器和服务端编码和解码的规则不一样
1.首先还是创建一个filter,注意配置web.xml
2.创建一个TestServlet,注意配置web.xml
解码是GB2312,而前端页面编码使用的是UTF-8
3.使用中文登录,现在还未使用filter
可以看出中文变成了乱码
4.使用filter,并注释掉如下代码
六、GitHub地址
https://github.com/youthcyl/Login