项目包含:
- 一个用于存放用户信息的实体类User
- 一个初始化数据编码格式的监听器ServletContextListener
- 用于实现业务的UserService接口及接口实现类UserServiceImpl
- 用于处理数据的LoginServlet,RegistServlet,CheckImgServlet
- 用于更改文件名的工具类UploadUtils
- 用于显示页面的JSP
在项目的编写过程中,遇到了以下问题:
- 图片上传用于做用户头像问题。找了大佬和浏览器搜索后,引入fileUpload,根据文档卑微的逐字逐句的编写代码
- 改变文件名问题。图片上传成功后,为避免一个文件多次上传后的重命名问题,使用UUID来完成文件上传后立即生成新的文件名
- 面向接口编程。注册与登陆都使用到User类,且都将数据存放到List集合中,每次调用都要先定义后使用,不如将方法抽取出来变成一个借口,只需实现接口就能使用不同的方法
- 登陆成功的头像不显示。没有创建用于存放头像的文件夹,以及转义字符
- 验证码的生成与校验。引入了kaptck.jar包,根据文档修改参数,实现想要的功能