JSP基本语法 

 指令        <%@ 指令%>
JSP指令是JSP的引擎
主要的两种指令是page和include(taglib)
<%@ page import="java.util.*" %> 声明 <%! 声明%>
<%! int i = 0; %> 可以直接使用在<% @ page %>中被包含进来的已经声明的变量和方法,不需要对它们重新进行声明。 表达式 <%= 表达式%>
<font color="blue"><%= map.size() %></font> 代码段/脚本段 <% 代码段%>
<%
String name = null;
if (request.getParameter("name") == null) {
%> 注释 <%-- 注释--%> ---------------------------
JSP的动作
jsp:include:在页面被请求的时候引入一个文件。
jsp:useBean:寻找或者实例化一个JavaBean。
jsp:setProperty:设置JavaBean的属性。
jsp:getProperty:输出某个JavaBean的属性。
jsp:forward:把请求转到一个新的页面。
jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记。 <jsp:include page="relative URL" flush="true" />
<jsp:include page=" /page1.html" flush="true"/>
或者
<%@ include file="/header.jsp"%> jsp:useBean动作
在JSP文件被转jsp:useBean动作用来装载一个将在JSP页面中使用的JavaBean。这个功能非常有用,因 为它使得我们既可以发挥Java组件重用的优势,同时也避免了损失JSP区别于Servlet的方便性。
此动作用来生成一个bean组件,并设定它的id号及使用范围 <jsp:useBean id=”beanName” scope="page|request|session| application|"class="package.class” type="package.class" beanName="{package.class|< %=expression%>} type="package.class"">action for bean </jsp:useBean> ---------------------------------上午
五种基本语法
指令、声明、表达式、代码段/脚本段、注释 JSP执行原理:
webapps:发布的项目在这里
work:真正运行的工作环境 JSP就是Servlet(从work下查看one_jsp.java文件) 表达式相当于out.write(xxx) 以后要是JSP有问题的,就到底层去查看servlet源码 -----JSP指令
page指令:只需了解 language、import、pageEncoding include指令:
<%@ include file="one.html"%>
//只能引入静态文件
在jsp转换为Servlet的时候引入文件 ----JSP动作
<jsp:include page="" flash="true"/>
在页面请求的时候动态的加载进去
//注:动态比静态好 jsp:useBean jsp1.0-1.2 <jsp:forward page="one.jsp">
//服务端跳转 -----JavaBean
是一个比较复杂的概念,但是在jsp中使用较为简单 简单javabean:一个类 需要提供:
1、所有相关属性 私有化
2、提供属性的 set get 方法
3、提供无参的构造函数
4、实现序列化接口(************了解)//适用于网络应用 EJB: 3种 bean对象 使用JavaBean: <jsp:useBean id="test" scope="page" class="xxx"/> //解释
//Object o=session.getAttribute("test");
//if(o==null){
//Student test=Class.forName("xxx").newInstance();
//session.setAttribute("test",test);
//} 注意:这就是为什么在控制台中syso("构造函数名")
request每次都显示,而session只显示一次,由以上代码可看出 <jsp:getProperty name="test" property="sname"/>
//在页面中显示属性name的值 <jsp:setProperty name="test" property="age" value="30"/>
//value与param 只能有一个存在 //第二种方式,在useBean里设置setProperty jsp:四种范围
page:页面范围 当前页面 比request还要窄
request: request
session: session
application: servletContext -----------九大内置对象
<%
1、pageContext //page范围 Servlet没有此范围,JSP独有
pageContext.setAttribute("name","page"); 2、request:相当于Servlet中的request 用法一样
request.setAttribute("name","request");
//Servlet中为request.setAttribute(name,value) 3、session:相当于Servlet中的session
session.setAttribute("name","session");
//Servlet中为request.getsession().setAttribute(name,value) 4、application:相当于Servlet中的servletContext
application.setAttribute("name","application");
//Servlet中为request.getsession().getServletContext().setAttribute(name,value) 5、response:相当于Servlet中的ServletResponse
response.sendRedirect();
//Servlet中为response.sendRedirect("/项目名/路径名"); 6、out:相当于Servlet中的response.getWriter();
out.write("0000000");
//Servlet中为PrintWriter out = response.getWriter(); out.println("<HTML>"); 7、config:相当于Servlet中的servletConfig
//out.write(config.getServletName()) 8、page:JSP网页本身
//使用方式为pageContext.setAttribute("name","page");
//即pageContext是page的对象 9、exception:针对错误网页,未捕捉的例外
//在JSP指令中使用,即 isErrorPage="true|false" %> ---------------------------------备注
等EL表达式上完了,接下来两个星期小组做项目
要需求文档、阶段设计、说明书等
等下周EL结束!!!

JSP所需要掌握的部分的更多相关文章

  1. myeclipse学习总结一(在MyEclipse中设置生成jsp页面时默认编码为utf-8编码)

    1.每次我们在MyEclispe中创建Jsp页面,生成的Jsp页面的默认编码是"ISO-8859-1".在这种情况下,当我们在页面中编写的内容存在中文的时候,就无法进行保存.如下图 ...

  2. jsp前端实现分页代码

    前端需要订一page类包装,其参数为 private Integer pageSize=10; //每页记录条数=10 private Integer totalCount; //总记录条数 priv ...

  3. jsp中出现onclick函数提示Cannot return from outside a function or method

    在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...

  4. jsp页面无法识别el表达式的解决方案

    今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...

  5. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  6. 浅谈JSP注释

    HTML注释 JSP文件是由HTML尿急和嵌入的Java程序片段组成的,所以在HTML中的注释同样可以在JSP文件中使用.注释格式:<!--注释内容--> <!-- 欢迎提示信息! ...

  7. JSP 标准标签库(JSTL)

    JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...

  8. Nginx服务器之Nginx与tomcat结合访问jsp

    本文使用linux centos系统 本文概述: JSP是一种动态网页技术标准.使用的方式是在HTML文件中插入程序段和JSP标记,而形成JSP文件.使用JSP开发WEB应用可以跨平台开发.但jsp需 ...

  9. 基于jsp+servlet图书管理系统之后台万能模板

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

  10. JSP页面跳转的几种实现方法

    使用href超链接标记      客户端跳转 使用JavaScript               客户端跳转 提交表单                        客户端跳转 使用response ...

随机推荐

  1. Django-F和Q函数作用与使用

    F函数 能够解析对现有查询对象的引用的对象. obj = Score.objects.get(stuid=') obj.score += 1 obj.order.save() 执行出的SQL语句 wh ...

  2. python基础学习 str,list,dict,set,range,enumerate

    一.字符串 s = 'python' s1 = 'python' + 'learn' #相加其实就是简单拼接 s2 = 'python' * 5 #相乘其实就是复制自己多少次,再拼接在一起 字符串切片 ...

  3. JavaSE 学习笔记之集合框架(十八)

    集合框架:,用于存储数据的容器. 特点: 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:对象的个数确定可以使用数组,但是不确定怎么办?可以用集合.因为集合是可变长度的. 集合和数组的区 ...

  4. Tensorflow word2vec+manage experiments

    Lecture note 5: word2vec + manage experiments Word2vec Most of you are probably already familiar wit ...

  5. 生产(production)

    [题目描述] 工厂为了生产一种复杂的产品,给各个生产部门制定了详细的生产计划.那么,就经常会有生产部门要把产品送到另一个生产部门作为原料.这是一个注重产品质量的工厂,所以每当有产品要从A部门运到B部门 ...

  6. N - Is It A Tree? 并查集

    A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one ...

  7. 关于jQuery的append()和prepend()方法的小技巧

    最近工作上有个需求是要求一个自动向上滚动的列表,表有很多行,但只显示一行,每次滚动一行.很简单的一个功能,代码如下 <div class="scroll-area"> ...

  8. [Vue + TS] Watch for Changes in Vue Using the @Watch Decorator with TypeScript

    Vue watchers allow to perform async updates as a side effect of a property change. This lesson shows ...

  9. wpf slider进度条的样式模板,带有进度颜色显示

    效果图: 仅仅需在前台加上这段代码就可以: <UserControl.Resources> <!--笔刷--> <LinearGradientBrush x:Key=&q ...

  10. SVN Working copying &#39;xxxxx/xxxx/xxxx&#39; locked

    使用SVN想更新上传时提示Working copying 'xxxx/xxxx/xxx' locked 解决方法: 选中你的项目,上面工具栏一行找到 Action → Cleanup all  Wor ...