|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
原登录模块的不足 在《JBuilder 2005实战JSP开发》专题中,我们完全用JSP技术实现了一个用户登录模块。它提供了一个登录的页面,在用户登录成功后转向欢迎页面,而登录失败后转向登录失败的页面,并且为每个页面提供了一个错误处理页面,当功能页面发生错误时,以一种友好的方法向用户报告错误。但这个模块还存在一些问题: 问题一:没有在每个JSP页面检验用户是否有登录 Web应用程序的JSP页面几乎都需要在验证用户的身份之后才可以访问,也即必须保证JSP页面处理哀求之前用户已经确实登录系统了,否则应该拒绝响应并重定向到登录页面。不然假如一个非法的用户直接通过URL访问JSP页面,就会产生系统安全性问题。 我们举一个例子:假如有一个用户直接通过http://localhost:8080/webModule/welcome.jsp访问welcome.jsp界面,我们必须先判定用户有没有登录(通过查看session中是否有以"ses_userBean"命名的对象),假如已经登录,打开welcome.jsp页面,假如没有登录重定向login.jsp登录页面。 提示: 当然更正规的作法应该是通过web.xml配置文件的<security-constraint>等配置项按角色对Web资源的访问权限进行配置,但这种方法确实是比较麻烦的。所以我们一般采用在每一个哀求到达处理程序前判定用户的登录信息的方法处理页面访问权限的问题。 为了达到防止非法用户访问功能页面的目的,你当然可以像劳模相同在每一个需要保护的JSP页面中添加一段如下的判定代码加以解决: 1. <% 但对于一个拥有成百上千个需保护JSP页面的大型Web应用程序,在每一个页面中添加这段一样的代码,不但单调乏味,违背面向对象的宗旨,而且轻易出现漏网之鱼。在本专题中,我们将通过一个Servlet过滤器轻松美丽地完成这个任务。 问题二:每次生成login.jsp页面用户列表时都重新访问数据库 返回类别: 教程 上一教程: Apache+Servlet+Jsp环境设置(上) 下一教程: jsp源码实例4(搜索引擎) 您可以阅读与"JBuilder2005 Servlet开发之程序改造"相关的教程: · JBUILDER2005实战JSP之程序功能介绍(1) · JBUILDER2005实战JSP之程序功能介绍(6) · java开发之Flash remoting调用servlet · 使用JBuilder开发J2ME程序 · JBuilder2005+JBoss-4.0.2RC1+J2SDK1.5+Log4j 开发Session Bean例解(2) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |