黑马程序员技术交流社区

标题: jsp中的标准动作 [打印本页]

作者: 冯超    时间: 2013-9-26 23:36
标题: jsp中的标准动作
本帖最后由 冯超 于 2013-9-29 00:18 编辑

                                                                                          jsp中的标准动作
jsp标准动作是内置标记,是规范结构,由容器实现,运行时就具有这些功能,每个标准动作能实现一定的功能。
常见的标准动作有:
<jsp:useBean>    定义和访问javaBean;
<jsp:setProperty> 设置javaBean属性值;
<jsp:getProperty> 获取javaBean属性值;
<jsp:forward>   在jsp页面进行跳转;
<jsp:include>  引入其他页面,进行其他页面重用;
<jsp:param> 动态的设定参数;


<jsp:useBean>   -----篇
        自己先定义一个userbean,成员属性有name和password;
       1.<jsp:useBean id="user" class="javabeen.User"></jsp:useBean>
       该段翻译为:
       User user = new User();
       所以id的名字对应实例的对象,class必须导入的是类的全路径。

      2.<jsp:setProperty property="*" name="user"/>
      *是全匹配,用来赋值。
      问题1:值从哪里来?  从请求参数来
      问题2:值到哪里去?到实例对应的属性值去
      问题3:如何对应?参数名称必须对应javabean中的属性
      翻译为:
      user.setName("");
      user.serName("")
      所以property中的值对应javabean中的属性,name对应实例对象的名字。

     3.<jsp:getProperty property="name" name="user" />
     等价于<%=user.getName() %>
  1.   <body>
  2.    <jsp:useBean id="user" class="javabeen.User"></jsp:useBean>
  3.    <jsp:setProperty property="*" name="user"/>
  4.    <jsp:getProperty property="password" name="user"/>
  5.    <%=user.getName() %>
  6.    <form action="">
  7.                    姓名:<input type="text" name="name" /><br />
  8.                    密码:<input type="password" name="password" />
  9.                   
  10.                    <input type="submit" value="提交" />
  11.    </form>
  12.   </body>
复制代码
点击提交会打印你用页面获取的值。<jsp:useBean>中有scrope这个属性属性值如下:
范围:
应用程序范围(Application):存储在servletContext对象中
回话范围(session):在回话创建并被存储在HttpSession对象中
请求范围(Request):在请求中创建并存储在ServletRequest对象中
页面范围(Page):在页面中创建赢存储在PageContext对象中。


-----页面导入篇
Jsp中如何引入其他页面
1.include指令
  静态引入,在翻译期间,直接将被引入页面copy到相应的位置,相当于是同一个界面,所以数据是共享的        
  功能:将一个代码片段在转换期间包含在Jsp页面的文本中
  语法:<%@ include file="" %>(导入的是一段代码片段)
2.jsp:include标准动作
  动态引入,在运行期间引入被引入页面所生成的HTML,完全是独立的页面运行,所以数据不能共享。
  功能:在运行时将一个代码片段包含到HTTP响应文本中
  语法:<jsp:include page="" />(导入的是一个页面)


<jsp:param>   ---篇
jsp:param标准动作
功能:为其他标准动作标签提供附加的参数信息
语法:<jsp:param name="参数名" value="参数值" />
与其他标准动作的实例
<jsp:include page="" >
        <jsp:param name="" value="" />
</jsp:include>
等价于
<jsp:include page="?name=value" />

可以在page中的页面通过request.getParameter("name")来获取值
<jsp:forward>  ---篇
功能:实现转发
语法:<jsp:forward page=""></jsp:forward>
等价于:request.getRequestDispatcher("").forward(request, response);





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2