当前位置: 首页 > 图文教程 > Java技术 > Java Web开发 > Jsp基础那些事

Java Web开发
JSP的技术方法
错误处理页面的制作404,和500
JSP动态生成并调用JSP程序
jsp防注入的代码,如何防止SQL注入的方法和预编译的PreparedStatement的代码例子
一段生成验证码图片的程序
include与jsp:include区别
jsp基础速成精华讲解
Ajax servlet实现
如何从JSP页面传送动态图片
Java中用Servlet Listener实现定时监听
JSP、Servlet中的相对路径和绝对路径
如何成为一个优秀的jsp程序员
Java开源软件六大帮派
JSP高访问量下的计数程序 (转载)
Servlet中的这些问题,你注意到了吗?
JSP解决中文乱码问题
Servlet常见错误校验表
Session和Cookie的深入研究
无限菜单之 xml+popup 版(IE5.5+)
关于hibernate多对多----many to many

Java Web开发 中的 Jsp基础那些事


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-12-26   浏览: 160 ::
收藏到网摘: n/a

今天和大家分享的是jsp使用中的一些基础性问题,希望对大家有所帮助。

1JSP的基础知识

               __ 

        _____ |   directive  (指令)

            |     |-- scripting (脚本)

 JSP -------|     |__ action  (动作)

1)在JSP中使用的directive(指令)主要有三个:

a)    page指令

b)    include指令

c)    taglib指令

 

JSP的任何地方,以任何顺序,一个页面可以包含任意数量的page指令

 

 

2)Scripting(脚本)包括三种类型

 

a)    <%declaraction  %>

b)    <%  scriptlet     %>

c)    <%= expression   %>

 

3)action(动作)标准的动作类型有:

 

a)  <jsp:useBean>

b)  <jsp:setProperty>

d)    <jsp:getProperty>

e)    <jsp:param>

f)     <jsp:include>

g)    <jsp:forward>

h)    <jsp:plugin>

 

1.    注释: <% -----jsp comment-------%>

 

       <! -----html comment-------%>

 

2.    <%@ page session = “true”  import =”java.util.*” %>

 

session可以不赋值,默认为true,如果session=false,则在JSP页面中,隐含的变量session就不能使用。

 

3.    请求控制器结构(Request Controller

 

也被称之为JSP Model 2 Architecture

这种途径涉及到使用一个Servlet或一个JSP作为一个应用程序或一组页面的入口点。

为创建可维护的JSP系统,Request Controller是最有用的方式之一。

不是JSP,而是Java类才是放置控制逻辑的正确的地方。

请求控制器的命名模式为: xxxController.jsp

请求控制器类的命名模式为: xxxRequestController

2JSP中的JavaBean

JSP三种bean的类型

1)    页面bean

2)    会话bean

3)    应用bean

 

大多数的系统会使用一个会话bean来保持状态,而对每一个页面使用一个页面bean 来对复杂的数据进行表示。

 

 

页面bean是一个模型,而JSP是一个视图。

 

 

3Custom tag

 

bean是信息的携带者,

 

tag更适用于处理信息。

 

标记库包含一个标记库描述符(TLD)和用于实现Custom tagJava

 

在翻译阶段,JSP容器将使用TLD来验证页面中的所有的tag是否都被正确的使用。

 

 

 

   标记处理程序只是一个简单的适配器,而真正的逻辑是在另一个类中实现的,标记处理程序只是提供了一个供其他的可复用的类的JSP接口

 

     

4.Servlet

1ServletConfig

?    一个ServletConfig对象是servlet containerservlet initialization的时候传递给servlet的。

 

ServletConfig包涵 ServletContext 一些 Name/Value pair (来自于deployment descriptor)

 

 

?    ServletContext接口封装了Web应用程序的上下文概念。

 

 

2.会话跟踪

 

1) Session

?    当一个Client请求多个Servlets时,一个session可以被多个servlet共享。

 

?    通常情况下,如果server detectbrowser支持cookie,那么URL就不会重写。

 

 

 

 

2) cookie

 

?    Java Servlet中,如果你光  Cookie cookie = new Cookie(name,value)

那么当用户退出Browser时,cookie会被删除掉,而不会被存储在客户端的硬盘上。

 

如果要存储 cookie,需加一句   cookie.setMaxAge(200)

 

 

?    cookie是跟某一个server相关的,运行在同一个server上的servlet共享一个cookie.

 

 

3) URL Rewriting

 

在使用URL Rewriting来维护Session ID的时候,每一次HTTP请求都需要EncodeURL()

典型的用在两个地方

1  out.print(form action=\ );

out.print(response.encodeURL(“sessionExample”));

out.print(“form action=\” ”);

out.print(“method = GET>”);

2  out.print(<p><a href=\ );

out.print(response.encodeURL(“SessionExample?database=foo&datavalue=bar”));

out.println(“\” >URL encoded </a>”);