JSP -java service pages
jsp的运行机制:
1客户端(请求jsp页面)------->JSP页面(转换为java源文件)------->Selvet文件(.java) (编译成相应的字节码文件也就是后缀名是.class的文件)------>(加载Servlet类创建Servlet实例)Servlet------->(实例调用相应的方法完成请求处理,把html格式的相应对象返回给客户端)------>客户端
JSP注释:
HTML注释:<!-- 注释内容 -->
JSP注释:<%-- 注释内容 --%>
JSP指令:<%@指令标记 [属性="值" 属性="值"]%>
jsp指令在整个页面范围内有效
page指令:页面指令,用来定义jsp页面的全局属性,该配置会作用于整个jsp页面,page指令用来定义所使用的脚本语言,导入指定的类及软件包
语法格式:<%@ page 属性1="属性值1" 属性2="属性值2" .......%>
include指令:是文件加载指令,用于在jsp文件中插入一个包含文本或代码的文件。需要注意的是如果被插入的文件本身发生了变化,那么包含这个文件的jsp文件需要被重新编译
语法格式:<%@ include file="被包含文件的地址" %>
taglib指令:用来引用标签库,并设置标签库的前缀。
语法各司:<%@ taglib uri="tagLibraryURI" prefix="taglibPrefix"%>其中uri用来指定标签文件或标签库的存放位置,prefix属性则用来指定该标签库所使用的 前缀
JSP脚本元素:
脚本元素是jsp中使用最频繁的元素,通过jsp脚本可以将java代码嵌入到html页面中。
JSP脚本元素主要包含如下三种类型:jsp声明语句 、 jsp表达式 、jsp Scriptlets
jsp的声明语句用于声明变量和方法。声明语句的语法格式:<%!变量或方法定义%>。使用jsp声明语句声明的变量将来会转换为servlet类中成员变量。这些变量在整个jsp页面内有效。因此也被称为jsp页面的成员变量
jsp表达式:在jsp中可以在<%=%>标记之间插入一个表达式,这个表达式必须能够求值,并且计算结果会以字符串形式发送到客户端显示出来。jsp表达式的值回作为html页面的内容。如果表达式为字符串会直接显示字符串,如果不是字符串会显示其计算结果。语法格式:<%=表达式%>
JSP Scriptlet是一段java代码段,当需要使用java实现一些复杂的操作 或控制时,jsp表达式往往不能满足需求,此时需要用到JSP Scriptlet。
在JSP Scriptlet中声明的变量是jsp页面的局部变量,调用JSP Scriptlet时,会为局部变量分配内存空间,调用结束后,释放局部变量占用的内存空间。
语法格式:<% java代码%> JSP Scriptlet 中可以包含变量方法表达式等内容。
jsp动作元素
<jsp:include>动作元素提供了一种在jsp包含页面的方式,既可以包含静态文件,也可以包含动态文件。
jsp动态包含某个文件,指的是当jsp页面运行时才会载入该文件。
<jsp:forward page="转向页面的url地址">是一种用于页面重定向的元素,他的作用是停止当前jsp页面的执行,而将客户端请求转交给另一个jsp页面。
注意:转发与重定向的区别,转发是在服务器端进行的,不会引起客户端的二次请求,因此浏览器的地址栏不会发生任何变化,效率比重定向要高。
<jsp:param name="参数名字" value=“指定给param的参数值”>是一种提供参数的附属动作元素,它以“名-值”对的形式,为其它动作元素提供附加信息。
<jsp:useBean>动作元素,用来装载一个将在jsp页面中使用的javaBean。
<jsp:setProperty>动作元素,获取大bean实例之后,便可以利用<jsp:setProperty>动作元素,来设置或修改Bean中的属性值。
<jsp:getProperty>动作元素,用来提取Bean属性的值, 并将其转换为字符串,然后输出。
servlet的生命周期
web容器加载servlet,生命周期开始。通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web容器调用servlet的destroy()方法。
Jsp内置对象(9中内置对象)
request用于封装客户端的请求信息,请求是创建,请求后销毁。
JSP -java service pages的更多相关文章
- jsp(java server pages):java服务器端的页面
jsp(java server pages):java服务器端的页面 JSP的执行过程1.浏览器输入一个jsp页面2.tomcat会接受*.jsp请求,将该请求发送到org.apache.jasper ...
- Jsp (Java Server Pages)相关知识九大内置对象和四大作用域
一.初识JSP Jsp页面的组成:静态内容.指令.表达式.小脚本.声明.标准动作.注释等元素构成 Url:统一资源定位符 Url组成:协议.主机名(包括端口号).路径 1.注释的方式: 1.HTML注 ...
- 什么是jsp(java server pages)
JSP是一种运行在服务器端的脚本语言,是用来开发动态网页的技术,它是JAVA Web 程序开发的重要技术.本章介绍JSP技术的相关概念以及如何开发JSP程序,主要内容包括JSP技术简介.JSP的处理过 ...
- JSP - (Java Server Pages) - Java服务器界面
JSP简介: 在HTML中嵌入Java脚本代码,由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本代码,然后将生成的整个页面信息返回给客户端: 一个JSP页面包含:静态内容(HTML静态文本), ...
- JSP Java服务器页面
大家好!好久不见!今日我们开始学习JSP了,一些记录基础性的知识在这里与大家分享. 先说下URL(Uniform Resource Locator 统一资源定位符). URL包括传输协议(http:/ ...
- 1.1(学习笔记)JSP(Java Server Pages)基础(脚本元素、指令元素)
一.JSP简介 JSP全称为Java Server Pages,是一种动态网页开发技术,可以在HTML界面中嵌入java代码, 实现动态的提供数据.访问JSP时服务器会将JSP翻译成Servlet,访 ...
- JSP(Java Servlet Page)
一.简介 HTML HTML擅长显示一个静态的网页,但是不能调用Java程序. Servlet Servlet擅长调用Java程序和后台进行交互,但是它不擅长显示一个完整的HTML页面. 我们希望创建 ...
- Java Service Wrapper简介与使用
在实际开发过程中很多模块需要独立运行,他们并不会以web形式发布,传统的做法是将其压缩为jar包独立运行,这种形式简单易行也比较利于维护,但是一旦服务器重启或出现异常时,程序往往无法自行修复或重启.解 ...
- 利用JAVA Service Wrapper把JAVA程序做成windows服务
今天做了一个读取数据入库的程序.由于读取的数据每天都更新,于是就想把程序做成一个服务,每天定时执行.研究了一下,发现有几种方式可以做.下面我主要记录一下JAVA Service Wrapper方式. ...
随机推荐
- 转载自 BotVS 「 珍藏版 」如何搭建一个完整的交易框架
[img]http://dn-filebox.qbox.me/8c218c119046b2a25df2d9c7b00c1e0fa6899bdd.png[/img]NO:01 交易策略 ≠ 交易系统. ...
- 4.variables
变量在python可以是字符也可以是数字.例如: x = 2 price = 2.5 word = 'Hello' 变量名在等号左边,值在右边,一旦变量被指定,就可以在程序的其他地方使用它. ...
- Git的使用-如何将本地项目上传到Github
默认你的电脑上已经安装了git. 第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹). 你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建. 现在我通过命令行 ...
- 记一个http-proxy-middleware 代理访问nginx映射的接口不通过的问题(connection close)
工作过程中遇见一个问题,使用Vue-cli 搭建了一个工程,由于跨域的问题 使用了自带的dev-server Express Server(A后台) http-proxy-middleware 去访问 ...
- springboot开启access_log日志输出
由于在调试时需要查看access_log日志,但是springboot默认并没有开启,因此查看了一下文档,在springboot的配置文件中添加如下设置,即可将日志输出当磁盘文件中以供查看. #日志开 ...
- MYSQL的REPLACE和ON DUPLICATE KEY UPDATE使用
REPLACE 我们在使用数据库时可能会经常遇到这种情况.如果一个表在一个字段上建立了唯一索引,当我们再向这个表中使用已经存在的键值插入一条记录,那将会抛出一个主键冲突的错误.当然,我们可能想用新记录 ...
- 2017 Multi-University Training Contest - Team 9 1004&&HDU 6164 Dying Light【数学+模拟】
Dying Light Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Tot ...
- Gym 100952B&&2015 HIAST Collegiate Programming Contest B. New Job【模拟】
B. New Job time limit per test:1 second memory limit per test:64 megabytes input:standard input outp ...
- 强连通分量&hdu_1269&Codeforce 369D
强连通分量 标签: 图论 算法介绍 还记得割点割边算法吗.回顾一下,tarjan算法,dfs过程中记录当前点的时间戳,并通过它的子节点的low值更新它的low,low值是这个点不通过它的父亲节点最远可 ...
- in运算符(javascript)
in的用法,如x in y: 1.如果第二个运算数为对象,则in运算符用来检测第一个运算数是否是第二个运算数的属性名.是,返回true,否则返回false. 例: var obj = {x:1,y:2 ...