jsp脚本:
1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 (是被翻译到service方法内部方法里面方法中的)
2)<%=java变量或表达式%> ----- 会被翻译成service方法内部out.print()(输出类似于response.getWriter().write("");)
3)<%!java代码%> ---- 会被翻译成servlet的成员的内容(成员变量或者成员方法)
jsp注释: 不同的注释可见范围是不同
1)Html注释:<!--注释内容--> ---可见范围 jsp源码、翻译后的servlet、页面 显示html源码
2)java注释://单行注释 /*多行注释*/ --可见范围 jsp源码 翻译后的servlet
3)jsp注释:<%--注释内容--%> ----- 可见范围 jsp源码可见
jsp指令(3个)
jsp的指令是指导jsp翻译和运行的命令,jsp包括三大指令
1)page指令 --- 属性最多的指令(实际开发中page指令默认)
属性最多的一个指令,根据不同的属性,指导整个页面特性
格式:<%@ page 属性名1= "属性值1" 属性名2= "属性值2" ...%>
常用属性如下:
language:jsp脚本中可以嵌入的语言种类
pageEncoding:当前jsp文件的本身编码---内部可以包含contentType
contentType:response.setContentType(text/html;charset=UTF-8)(解决响应乱码)
session:是否jsp在翻译时自动创建session(默认是创建的)
import:导入java的包
errorPage:当当前页面出错后跳转到哪个页面
isErrorPage:当前页面是一个处理错误的页面
配置一个对整个项目都有用的,如果出现404或者500整个项目jsp都跳转的页面
这个配置好之后就和之前的的demo02就没关系了 只要这个项目任何一个jsp出错 都跳转到这个指定页面
include指令
页面包含(静态包含)指令,可以将一个jsp页面包含到另一个jsp页面中
格式:<%@ include file="被包含的文件地址"%>
我们之前做前端页面的时候肯定会做导航,每个界面都会有导航 而且每个导航都是一样的,要是以前只能一个一个复制
会比较麻烦 ,我们可以吧他的导航的底部单独做到一个jsp然后拼到别的jsp里
先创建三个jsp
在Webcontext里
然后分别写上
header
footer
bady
运行:
jsp被翻译成servlet之后,service方法中有9个对象定义并初始化完毕,我们在jsp 脚本中可以直接使用这9个对象
这些都可以直接jsp里直接使用就好,这些都是已经被定义好的
application对象=servletContion对象
page=this
out的类型:JspWriter
out作用就是向客户端输出内容----out.write()
out缓冲区默认8kb 可以设置成0 代表关闭out缓冲区 内容直接写到respons缓冲 器
关闭out缓冲区:
一般不用他自己作用域的作用,范围是当前jsp页面中
一般用的是向其他域中存取数据
jsp中有四个域
依次是pageContext域,session域,request域,application域
向其他域里存取数值
当他们的名字一样的时候
取值
当他们名字不一样的时候
(必须要有业务意义)
如果名字一样的话 会展找从小到大的方式找到
原文:https://www.cnblogs.com/www1842564021/p/12382482.html