黑马旅游网总结

黑马旅游网总结
操作流程分析:
注册–登陆–导航–分页–详情页–收藏

注册的实现
1 注册的校验:
用户名密码邮箱的校验:页面的校验 js/jquery实现,正则,样式,
表单校验:如果是button/submit, a /javaScript:void(0),表单校验的两种方式:
1 .按钮绑定单击事件,if(条件){绑定表单的提交事件}
2.给表单绑定提交事件:return true提交/false不提交,但是return之前的代码会执行,比如ajax的异步校验
表单:request.getparameter(“表单中name的值”),返回的是该表单中value的值
超连接:request.getparameter(“连接中key”),获取到的是key对应的值
$(this).serialize(),将表单中的数据序列化成字符串。应该分为表单和超链接参数的封装
数据封装思想:flag标志,data封装的数据,msg 提示消息
location.href(“路径”) 相对/绝对路径都可以
验证码判断:if是在一个方法中,如果验证码不满足,可以用return直接终结方法
表单数据封装/数据库查询信息的封装:查询到的信息可以比Bean多,多余的丢掉
邮箱激活的思路:用户注册的时候,给用户一个标记N,并且给用户发送邮件,邮件里的超链接访问一个servlet,通过servlet改变标记

2 登陆
登陆:if判断用户是否为null,如果为null,那么异步返回信息 return, 然后if判断激活状态,如果状态为N ,提示激活,并且return
登陆成功以后,servlet中在session中把用户的信息存起来,(从数据库中查到的用户对象,包含的信息多)
每次页面跳转能保存用户的信息:页面加载的时候都要请求servlet,获取session中的信息
session的信息是用户登陆的时候存到服务端的,然后写出到页面的。
问题关闭页面的时候,为什么不能再次获取session?

3 导航 navigator
主页中

空,用js引入外部的资源,填充到header中。
ajax:可以请求一个网页,请求参数为空,success:function(data),data返回的数据是 请求的网页的所有的数据

redis的使用:把频繁访问的信息存放到redis中,用户访问的时候先从redis中访问,如果redis中不存在,那么在从mysql中查找,把查找到的数据放入redis中,最后把数据写道页面端。(当msyql有更新的时候,应该清空redis中的数据,remov(“键”))
String jsonStr = jedis.get(“allInfo”);
if(jsonStr不存在){
data = mysql中查到
jsonStr = om.writeValueAsString(data)
}
jsonStr写道页面端
navigator 填充的数据包含 连接和分类的信息 连接拼接的是cid=
在页面填充数据的时候拼接字符串 +=
jquery的遍历 4 中方式: $.each(jq对象,func(index,element))

servlet优化的思想:找一个中间的baseservlet,让需要实现方法的myservlet去继承baseservlet,页面请求的时候,根据路径找到myservlet,但是它没有dopost/doget方法,可以使用父类的方法,baseservlet可以根据请求路径(uri的最后一部分,项目路径,路名名为myservlet里的一个方法),利用反射技术获取方法名是否跟路径名相同,如果相同就用反射技术去执行这个方法。优点:不用每次请求都写好多servlet,把多个servlet方法封装到一个myservlet,可以根据项目或不同的类别封装myservlet,只需要用路径判断时候封装了该路径对应的方法

用户退出:删除session 页面跳转 invalidate

4 分页
每一页显示的产品
图片,产品名称,详情,价格,详情(跟cid有关)
总共条目,总页数
首页,前一页,后一页,当前页,一页多少个索引
抽取一个load函数根据搜索条件查询定位分页的列表: 参数有cid ,currentPage,rname。 通过当前页(默 认是第一页/点击),cid是分类的条件,rname是模糊查询的条件,

pageBean:以前的有5个参数 当前页/每页显示几条/总的记录数/总页数/每页的数据
新的有9个参数:当前页/前一页/后一页/开始页/结束页/总页数/总的记录数/每页显示 的记录数/开始条数(索引)/每页的数据list<>
select * from table where cid=? and rname like %% limit index,每页记录数 就能查出 一个详情页列表 把返回的数据填充到网页中

你可能感兴趣的:(java)