web应用中的全局变量.ppt

上传人:本田雅阁 文档编号:2202917 上传时间:2019-03-03 格式:PPT 页数:24 大小:263.51KB
返回 下载 相关 举报
web应用中的全局变量.ppt_第1页
第1页 / 共24页
web应用中的全局变量.ppt_第2页
第2页 / 共24页
web应用中的全局变量.ppt_第3页
第3页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《web应用中的全局变量.ppt》由会员分享,可在线阅读,更多相关《web应用中的全局变量.ppt(24页珍藏版)》请在三一文库上搜索。

1、Web应用中的全局变量,1.cookie技术 2.sendRedirect()方法 3.隐藏表单技术 4.session技术,Cookie(小甜饼)技术,服务器在客户端保存用户的信息,就是Cookie技术。 这些信息数据量并不大,服务器需要时可以从客户端读取,一般保存在客户端C:Document and Settings目录里。,Cookie在Web应用中的表现,1.保存用户名、密码,在一定时间内不用登录。 2.记录用户访问网站的喜好(例如网站背景音乐等) 3.网站的个性化服务,例如定制服务、内容等。例如订阅天气预报等,sendRedirect()方法,通过该方法将一个信息传递给下一个页面,

2、例如:sendRedirect(“welcome?userName=oyhj”); 的形式。 优点:传递信息的速度很快。 缺点:它只能传递一个字符串,而不能传递对象。,sendRedirect()方法(续),sendRedirect(“welcome?userName=oyhj”); (1) welcome代表要跳转到的servlet的url。 (2) servlet名和变量名之间要有个?。 (3) 如果传递两个以上的变量,变量之间要用&。 (4) 如果传递的是中文,需要进行编码处理。,sendRedirect()应用案例,对用户登录系统进行改进,在欢迎界面显示用户的姓名。 源码见UserLo

3、gin(V1.1),隐藏表单,隐藏表单是最常见的一种方式,也是最简单的一种。 见源码:HiddenFormTest,Session技术,当用户打开浏览器访问某个网站时,网站服务器就会在它的内存为这个浏览器分配一个“空间”,这个“空间”被该浏览器独享。空间中存放的数据默认生存时间是30min,可以修改。,Session在Web中的应用,(1) 实现网上交易平台的购物车功能。 (2) 保存用户的登录信息 (3)防止用户非法登录到某个页面,Session的使用,可以把Session理解成一张二维表,这个表有两列。每一行是Session的一个属性,行数没有限制。 一个属性包括两个部分,一个部分是属性的

4、名字,另一个是属性的值。,Session的使用,(1) 得到Session对象 HttpSession hs=request.getSession(true); (2) 向Session添加属性 hs.setAttribute(String name,Object value); (3) 从Session得到某个属性 String name=hs.getAttribute(String name); (4) 从Session中删除某个属性 hs.removeAttribute(String name);,Session使用的注意事项,1. Session中属性默认的生存时间是30min,可以对

5、时间进行修改。a)在web.xml文件中(服务器的)。b)在程序中修改。 2.Session属性的过期时间指的是间隔时间,而不是累计时间。 3.当某个浏览器访问网站时,服务器会给每个浏览器分配一个唯一的Session id,用来区分每个浏览器。 4.因为Session的属性是要占用服务器内存的,建议谨慎使用Session。,Session应用案例,在用户登录中,防止用户非法登录到欢迎界面。 见源码:UserLogin(V1.2),Servlet中操作数据库,Servlet中操作数据库,与普通java文件中操作数据库类似,需要注意的是要将JDBC驱动的jar包引入。 (1)将JDBC驱动的jar

6、包放到%TOMCAT_HOME%commonlib目录中。 (2)将JDBC驱动的jar包放到当前应用的lib目录里。 注: (1)是当前Web服务器下所有web应用的公共jar包。 (2) 是当前web应用的jar包。,Servlet中操作数据库,将用户登录系统进行改进,用户名和密码放在数据库里。 创建数据库脚本: create table userInfo ( UserID int not null auto_increment, UserName varchar(10), Password varchar(10), E-mail varchar(30), Sex varchar(10),

7、 Grade int, primary key(UserID); 源码见:UserLogin(V1.3),Servlet中访问数据库,建议:Servlet里面不要写太多的业务逻辑,这样不利用修改,而且影响程序的层次结构。 源码见:UserLogin(V1.3.1),在Servlet中显示图片,(1) 在Web应用的目录下,建立一个专门用来保存图片的文件夹(例如Image)。 (2) 在Servlet里面添加代码: 即可。 源码见:UserLogin(V1.3.2) 注:img是Html语言里面的一个标签。,Web应用中的分页技术,分页是任何一个网站(bbs,购物商城,blog)等必备的显示技术

8、之一,因此有必要掌握。,分页技术,分页算法: (1) int pageSize: 每页显示多少条记录 (2) int pageCurrent:当前显示第几页 (3) int pageCount:共有多少页 (4) int rowCount:共有多少条记录 if(rowCount%pageSize=0) pageCount=rowCount/pageSize; else pageCount=rowCount/pageSize+1;,分页技术,以MySQL为例:将第N页的记录显示出来,可采用如下SQL语句: select * from userInfo limit (N-1)*pageSize,p

9、ageSize; 注:limit子句使用方法: (1) select * from userInfo limit M; 将表中前M条记录取出 (2) select * from userInfo M,N; 从表的第M+1条记录开始向后取出N条。 以SQL Server为例:将第N页的记录显示出来,可采用如下SQL语句: Select top pageSize * from userInfo where UserID not in (select top pageSize*(pageCurrent-1) UserID from userInfo);,分页技术案例,对用户管理系统进行修改,在欢迎界

10、面分页显示所有合法用户的相关信息。 见源码:UserLogin(V1.4),利用超链接显示第几页,利用超链接将分页的个数显示出来,用户可以随意查看第几页的内容。 在Welcome页面完成超链接,本质是Welcome自己连接自己,但是要将“第几页的信息”传递进来。 源码见:UserLogin(V1.4.1),测试分页的效率,实际应用中,一张表中的记录会有十几万条,甚至上百万条。扩大表中的记录个数,查看分页效率如何。 Insert into userInfo(UserName,Password,E-mail,Sex,Grade) select UserName,Password,E-mail,Sex,Grade from userInfo 采用该SQL语句,表中记录成2的指数倍增加。,显示上一页和下一页,如果要分的页数大多,也不利用用户选择,此时可添加上一页和下一页功能。 源码见:UserLogin(V1.4.2),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1