Travel旅游网笔记

# 注册功能

 1.表单数据格式验证

  1. 用户名:数字字母下划线

  2. 密码:数字字母下划线

  3. Email:xxx169@.com

  4. 姓名:2-6中文字符

  5. 手机号:11位数字

  6. 性别:默认值

  7. 出生日期:非空

2.Ajax异步提交

             1.提交表单数据内容

             2.完成Servlet层的代码。

                      ①接受数据并且封装成java对象

                      ②利用service和dao层查询数据库。

                      ③返回注册成功与否的数据。 

             3.完成service和dao层的编写。

                      Dao层:写sql语句,查询结果

                      service层:使用dao层的方法,判断是否注册并将结果返回给servlet

3.验证码验证

                  1.获取用户输入验证码,与系统生成的验证码进行比较。

                  2.判断验证码:

                                        ①验证码错误在注册页面提示错误信息。

                                        ②验证码正确进行注册操作。

4.注册成功邮件激活

                  1.向用户发送激活邮件:

                              邮件内容:点击激活【网站名】账号。

                  2.用户点击后跳转到激活成功页面。

       代码实现逻辑:

                            1.利用MailUtil向用户发送激活邮件。

                            2.用户收到邮件点击激活,携带唯一code访问servlet。

                            3.servlet获取唯一code调用service层---->调用dao层查询是否存在

                                            存在:将status表示改为Y激活

                                         不存在:显示提示信息。

5.登录功能

               

    代码实现逻辑:

                1.先进行验证码验证。

                             ①  异步提交到LoginServlet,获取验证码。

                             ②  获取系统生成的验证码与之比较。

                                            Ⅰ.验证码输入错误返回错误信息在前端页面显示

                                           Ⅱ.验证码输入正确进行账号和密码的逻辑判断。

                 2.进行账号和密码验证。

                              ①  获取用户名和密码。

                              ②  查询数据库是否有此用户。

                                             Ⅰ. 无此用户

                                             Ⅱ. 有用户但是未激活。

                                             Ⅲ. 有用户而且已经激活。

                 3.返回查询到的User对象,并在主页显示Username。

6.退出功能 

                  删除session中的user信息,点击退出在servlet中删除session中的user。

 

7.优化Servlet

           1.优化servlet,使一个表有一个servlet,类似于UserService,在UserService里分发方法。

           2.对应表的servlet中拥有操作表的方法,继承自己写的BaseSevlet进行方法分发运行。

8.分类信息的展示

  

代码逻辑:

                     1.从数据库查找所有的分类信息。

                     2.序列化category分类信息为Json,响应回前端页面。

                     3.前端页面展示数据。

                                                       ps:在BaseServlet里进行写回json的方法的封装。

9.redis优化数据库查询速度

对于经常加载的资源文件,可以使用redis缓存存储增加运行速度。

        代码逻辑:查询redis数据库有无所需数据。

        有数据:查找到的数据封装在set集合中,将set集合中的数据迁移到list集合响应到前端页面。

        无数据:从数据库中查找数据,将查找到的数据存入redis数据库,并响应回前端。

10.页面搜索功能(模糊查询)

①参数传递

                        利用js中的getParameter方法获得cid。

                        利用JQuery获取搜索栏输入的内容。

                        location.href=“?cid= &rname=”;带着参数跳转到route_list.html中

②修改Servlet,Service,Dao层的方法,加入rname之后的查询。

   dao层查询需要多条件,cid和rname两个条件不确定哪一个会有,所以要使用套路

   select * from tab_route where 1=1;

   where 1=1为恒等条件,为了简化sql语句的检测。哪一个条件有就在后面直接加and后者       or都可以,如果不加每一次添加一个条件都需要判断前面有没有where。

 

ps:Ⅰ.在后台获取参数值的时候,会获取到带引号的"null"值,要进行判断

             !"null".equals("参数")

        Ⅱ.在字符串进行拼接参数时,要将引号 ' 加 \ 转义一下,防止识别成拼接字符。

 11.旅游线路详细

         ①传递参数:rid通过超链接传递到route_detail.html中

         ②当页面加载好后,使用ajax请求访问servlet,获取Route对象返回到前端显示。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值