zoukankan      html  css  js  c++  java
  • JSP所需要掌握的部分

      1 JSP基本语法 
      2 
      3 指令        <%@ 指令%>
      4 JSP指令是JSP的引擎
      5 主要的两种指令是page和include(taglib)
      6 <%@ page import="java.util.*" %>
      7 
      8 声明        <%! 声明%>
      9 <%! int i = 0; %> 
     10 
     11 可以直接使用在<% @ page %>中被包含进来的已经声明的变量和方法,不需要对它们重新进行声明。
     12 
     13 
     14 表达式      <%= 表达式%>
     15 <font color="blue"><%= map.size() %></font> 
     16 
     17 
     18 代码段/脚本段     <% 代码段%>
     19 <% 
     20 String name = null; 
     21 if (request.getParameter("name") == null) { 
     22 %> 
     23 
     24 注释         <%-- 注释--%>
     25 
     26 ---------------------------
     27 JSP的动作
     28 jsp:include:在页面被请求的时候引入一个文件。 
     29 jsp:useBean:寻找或者实例化一个JavaBean。 
     30 jsp:setProperty:设置JavaBean的属性。 
     31 jsp:getProperty:输出某个JavaBean的属性。 
     32 jsp:forward:把请求转到一个新的页面。 
     33 jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记。
     34 
     35 
     36 <jsp:include page="relative URL" flush="true" /> 
     37 <jsp:include page=" /page1.html" flush="true"/> 
     38 或者
     39 <%@ include file="/header.jsp"%>
     40 
     41 
     42 jsp:useBean动作 
     43 在JSP文件被转jsp:useBean动作用来装载一个将在JSP页面中使用的JavaBean。这个功能非常有用,因
     44 
     45 为它使得我们既可以发挥Java组件重用的优势,同时也避免了损失JSP区别于Servlet的方便性。
     46 此动作用来生成一个bean组件,并设定它的id号及使用范围
     47 
     48 <jsp:useBean  id=”beanName”  scope="page|request|session|
     49 
     50 application|"class="package.class”  type="package.class"  beanName="{package.class|<
     51 
     52 %=expression%>}  type="package.class"">action  for  bean  </jsp:useBean>
     53 
     54 ---------------------------------上午
     55 五种基本语法
     56 指令、声明、表达式、代码段/脚本段、注释
     57 
     58 JSP执行原理:
     59 webapps:发布的项目在这里
     60 work:真正运行的工作环境
     61 
     62 JSP就是Servlet(从work下查看one_jsp.java文件)
     63 
     64 表达式相当于out.write(xxx)
     65 
     66 以后要是JSP有问题的,就到底层去查看servlet源码
     67 
     68 -----JSP指令
     69 page指令:只需了解 language、import、pageEncoding
     70 
     71 include指令:
     72 <%@ include file="one.html"%>
     73 //只能引入静态文件
     74 在jsp转换为Servlet的时候引入文件
     75 
     76 
     77 ----JSP动作
     78 <jsp:include page="" flash="true"/>
     79 在页面请求的时候动态的加载进去
     80 //注:动态比静态好
     81 
     82 jsp:useBean    jsp1.0-1.2  
     83 
     84 
     85 <jsp:forward page="one.jsp">
     86 //服务端跳转
     87 
     88 -----JavaBean
     89 是一个比较复杂的概念,但是在jsp中使用较为简单
     90 
     91 简单javabean:一个类 需要提供:
     92 1、所有相关属性  私有化
     93 2、提供属性的 set get 方法
     94 3、提供无参的构造函数
     95 4、实现序列化接口(************了解)//适用于网络应用
     96 
     97 
     98 EJB: 3种 bean对象 
     99 
    100 使用JavaBean:
    101 
    102 <jsp:useBean id="test" scope="page" class="xxx"/>
    103 
    104 //解释
    105 //Object o=session.getAttribute("test");
    106 //if(o==null){
    107 //Student test=Class.forName("xxx").newInstance();
    108 //session.setAttribute("test",test);
    109 //}
    110 
    111 注意:这就是为什么在控制台中syso("构造函数名")
    112 request每次都显示,而session只显示一次,由以上代码可看出
    113 
    114 
    115 
    116 
    117 <jsp:getProperty name="test" property="sname"/>
    118 //在页面中显示属性name的值
    119 
    120 <jsp:setProperty name="test" property="age" value="30"/>
    121 //value与param 只能有一个存在
    122 
    123 //第二种方式,在useBean里设置setProperty
    124 
    125 
    126 
    127 jsp:四种范围
    128 page:页面范围  当前页面    比request还要窄   
    129 request: request
    130 session: session
    131 application: servletContext
    132 
    133 
    134 -----------九大内置对象
    135 <%
    136 1、pageContext  //page范围  Servlet没有此范围,JSP独有
    137 pageContext.setAttribute("name","page");
    138 
    139 2、request:相当于Servlet中的request  用法一样     
    140 request.setAttribute("name","request");
    141 //Servlet中为request.setAttribute(name,value)
    142 
    143 3、session:相当于Servlet中的session
    144 session.setAttribute("name","session");
    145 //Servlet中为request.getsession().setAttribute(name,value)
    146 
    147 4、application:相当于Servlet中的servletContext
    148 application.setAttribute("name","application");
    149 //Servlet中为request.getsession().getServletContext().setAttribute(name,value)
    150 
    151 5、response:相当于Servlet中的ServletResponse
    152 response.sendRedirect();
    153 //Servlet中为response.sendRedirect("/项目名/路径名");
    154 
    155 6、out:相当于Servlet中的response.getWriter();
    156 out.write("0000000");
    157 //Servlet中为PrintWriter out = response.getWriter();   out.println("<HTML>");
    158 
    159 7、config:相当于Servlet中的servletConfig
    160 //out.write(config.getServletName())
    161 
    162 8、page:JSP网页本身
    163 //使用方式为pageContext.setAttribute("name","page");
    164 //即pageContext是page的对象
    165 
    166 9、exception:针对错误网页,未捕捉的例外
    167 //在JSP指令中使用,即 isErrorPage="true|false" 
    168 
    169 %>
    170 
    171 
    172 
    173 
    174 
    175 
    176 
    177 
    178 
    179 
    180 ---------------------------------备注
    181 等EL表达式上完了,接下来两个星期小组做项目
    182 要需求文档、阶段设计、说明书等
    183 等下周EL结束!!!
  • 相关阅读:
    Windows Phone 31 日谈——第18日:WebBrowser控件
    Windows Phone 31 日谈——第19日:推送通知
    使用bat文件启动服务
    绝代反向指标——丘吉尔 炒股第二天就崩盘
    插入数据库返回自增长序号
    大并发服务器开发
    在这个不相信爱情的时代里,巴菲特的故事似乎让我又相信爱情了
    mysql操作语句
    马云三历高考才进大学 第一次高考数学考1分
    俞敏洪的屌丝逆袭 大学考了三次进北大
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/6101143.html
Copyright © 2011-2022 走看看