1.JSP标准指令:
<%@ 标准指令(属性 )%>
<%@ page %>
<%@ include %>
<%@ taglib %>

2.JSP程序代码元素:
<%! 变量或方法声明 %>
<% 程序代码 %>
<%= 表达式 %>

<%-- jsp被服务器翻译成servlet时,变量a被翻译成成员变量 --%>
<%! int a = 1; %>

<%-- jsp被服务器翻译成servlet时,变量b被翻译成局部变量 --%>
<% int b = 2; %>
<body>
<%-- java代码 --%>
<% for(int i=0;i<3;i++){%>

<% out.println(i*8); %>
<%= (i*8) %>
<%-- html代码 --%>
<br>

<% }%>

</body>

<!--这是HTML注解-->
<%--这是JSP注解--%>
<%//这是Java注解%>
<%/*这也是Java注解*/%>

3.JSP标准动作标签:
<jsp:forward page="file-url"|"<%=expression%>" />
<jsp:param name=" paramName" value="paramValue" />
</jsp:forward>

//先包含后处理
<%@ include file=“欲引入的文件 %>
//先处理后包含
<jsp:include page=“uri”>
<jsp:param name=“参数名” value=“值”/>
</jsp:include>

<jsp:param>必须同<jsp:include>和<jsp:forward>一起使用。

4.get方式提交和post方式提交的区别?
get方式提交的参数会被封装在请求头中,会出现在地址栏上,适合提交少量数据
post方式提交的参数会被封装在请求体中,不会出现在地址栏上,适合提交大量数据(例如上传文件必须使用post方式提交)

5.转发和重定向有什么区别?

request.getRequestDispatcher("地址").forward(request,response);或者<jsp:forward page=""/>
转发:一次请求,地址栏不变,服务器端跳转,执行到跳转语句后立刻跳转-之后代码不执行(这种情况仅限于使用标签转发)

response.sendRedirect("地址");
重定向:二次请求,地址栏改变,客户端跳转,作用是告诉浏览器按照所给路径重新给服务器发请求,所有代码执行完毕之后再跳转

(HttpServletRequest request, HttpServletResponse response)

6.JSP有以下九种内置对象,包括:
page,页面对象 java.lang.Object
request,请求对象 javax.servlet.http.HttpServletRequest
session,会话对象 javax.servlet.http.HttpSession
application,应用程序对象 javax.servlet.ServletContext
out,输出对象 javax.servlet.jsp.JspWriter
response,响应对象 javax.servlet.http.HttpServletResponse
pageContext,页面上下文对象 javax.servlet.jsp.PageContext
config,配置对象 javax.servlet.ServletConfig
exception,异常对象 java.lang.Throwable

存取范围从小到大依次是:page、request、session、application
page:一个页面共享数据
request:一次请求共享数据
session:一次会话共享数据
application:所有用户共享数据
application是所有用户共享的,任何用户都可以访问,而session对象则是每个用户私有的

1>四个域对象的生命周期
1) pageContext jsp执行时创建pageContext jsp页面结束时pageContext销毁
2) request 客户请求服务器时创建,请求结束request销毁
3) session 客户机请求服务器时,第一次getSession时,服务器创建session,session过xx多长时间没用了(或调用了session.invalidate方法),服务器销毁session
4) servletContext(application) web应用启动时就创建,web应用停止就销毁.一个web应用只有一个application对象.

2>什么情况下用什么域的问题
1)什么情况下用request域?如果在开发程序时,数据看完就没用了,那就应该把数据存在request域范围内。比如看新闻,新闻属于用户看完就没用的数据,这时servlet获得新闻数据,就应该存在request里面交给jsp显示。

2)什么情况下用session域?如果在开发程序时,数据看完了用户等一会儿还要用,那就应该把数据存在session域范围内.例如购物,购买的商品是用户的数据,这个数据产生之后,用户等一会儿结帐还要用,那么程序就应该把数据存在用户的session中。

3)什么情况下用application域?如果在开发程序,数据产生了,这个数据不仅等一会儿自己要用,还要给别人用,那就应该存在application域,例如web聊天室,用户的聊天数据,这个数据不仅用户等一会儿自己要看,还要给别人看。

7.Servlet监听器

8.学习使用JSTL(Jsp Standard Tag Library,jsp标准标签库)和EL表达式
1)核心标签库
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<table>
<c:forEach items="${requestScope.aaa}" var="t" begin="0" end="2" step="1">
<tr><td>${t.titleid}</td><td>${t.titlename}</td></tr>
</c:forEach>
</table>

2)EL表达式
${requestScope.aaa} 相当于<%=request.getAttribute("aaa") %>
${sessionScope.aaa} 相当于<%=session.getAttribute("aaa") %>
${applicationScope.aaa} 相当于<%=application.getAttribute("aaa") %>
${param.aaa} 相当于<%=request.getParameter("aaa") %>
${paramValues.aaa} 相当于<%=request.getParameterValues("aaa") %>
${t.titleid} 相当于<%=t.getTitleid() %>

EL表达式.jsp指令等的更多相关文章

  1. EL表达式jsp页面double小数点后保留两位

    EL表达式jsp页面double小数点后保留两位,四舍五入 <fmt:formatNumber type="number" value="${member.logi ...

  2. 11、Jsp加强/EL表达式/jsp标签

    1 Jsp基础回顾 Jsp基础 1)Jsp的执行过程 tomcat服务器完成:jsp文件->翻译成java文件->编译成class字节码文件-> 构造类对象-> 调用方法 to ...

  3. JSTL+EL表达式+JSP自定义框架案例

    不会框架不要紧,我带你自定义框架 前言:这标题说的有点大了,当一回标题党,之前在学JSP的时候提到了JSTL和EL表达式,由于一直钟情于Servlet,迟迟没有更新别的,这回算是跳出来了.这回放个大招 ...

  4. el表达式 jsp页面取list的长度

    方法1 ${cimlistForJsp.size()} 方法2,引入 <%@ taglib prefix="fn" uri="http://java.sun.com ...

  5. JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础

    JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次 ...

  6. Java Web程序设计笔记 • 【第9章 EL表达式】

    全部章节   >>>> 本章目录 9.1 EL 表达式基础 9.1.1 EL 表达式简介 9.1.2 EL 表达式的定义 9.1.3 使用 EL 访问变量 9.1.4 使用 E ...

  7. JavaWeb学习之什么JSP、JSP是如何工作的、JSP语言(各种指令和九大内置对象)、EL表达式简单使用(5)

    1.什么JSP * servlet:java编写的处理动态web的技术 * 特点:Java代码中嵌套html代码 * jsp * 特点:HTMl代码中嵌套java代码 * %tomcat%/conf/ ...

  8. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  9. Javaweb学习笔记——(十二)——————JSP指令:page指令、include指令、taglib指令,JavaBean,内省,EL表达式

    JSP指令JSP指令分类 JSP有三大指令: *page指令 *include指令 *taglib指令 在JSP中没有任何指令是必须的. 但基本上每个JSP都是使用page指令============ ...

随机推荐

  1. 基于linux(CentOS7)数据库性能优化(Postgresql)

    基于CentOS7数据库性能优化(Postgresql) 1.  磁盘 a)         Barriers IO i.              通过查看linux是否加载libata,确定是否开 ...

  2. PAT Advanced 1027 Colors in Mars (20 分)

    People in Mars represent the colors in their computers in a similar way as the Earth people. That is ...

  3. 前端之JavaScript:JS简单介绍

    JavaScript(JS)之简单介绍 一.JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名Scr ...

  4. Python---常用的内置模块

    #fsum() 对整个序列求和   返回浮点数 print(math.fsum([1,4.5,5,7])) #sum() python内置求和 print(sum([1,4,5,7])) print( ...

  5. Keras get Tensor dimensions

    int_shape(y_true)[0] int_shape(y_true)[1]

  6. sql优化-派生表与inner-join

    首先来说明一下派生表? 外部的表查询的结果集是从子查询中生成的.如下形式: select ... from (select ....) dt 如上形式中括号中的查询的结果作为外面select语句的查询 ...

  7. c++ string转char*

    1.如果要将string转换为char*,可以使用string提供的函数c_str() ,或是函数data(),data除了返回字符串内容外,不附加结束符'\0',而c_str()返回一个以‘\0’结 ...

  8. java伪代码读后感

    愚公,在这位名家身上,浓缩了项目的组织者,团队经理,编程人员,技术分析师等众多角色的优秀素质.原始需求的产生“惩山北之塞,出入之迁”项目沟通的基本方式“聚室而谋之”项目的目标“毕力平险,指通豫南,达于 ...

  9. JavaScript算数运算符和一元运算符

    算数运算符 加法运算符(Addition): x + y 减法运算符(Subtraction): x - y 乘法运算符(Multiplication): x * y 除法运算符(Division): ...

  10. spring mvc 绑定参数据默认值,是否必传,(RequestParam(value="id",defaultValue="1",required=true) )

    @RequestMapping(value = "/detail", method = RequestMethod.GET) public String newDetail(@Re ...