jsp脚本表达式<%=变量或表达式%>
实际就是out.print(...),jsp引擎在翻译脚本表达式时,会将程序数据转成字符串,
然后在相应位置用out.print(..)将数据输出客户端。(注意在脚本表达式中的变量或者脚本表达式后边不能有分号)
jsp脚本片段:
*<% java代码%>
*
可以有多个java脚本片段,之间可以 相互访问,只是要组成完整的java代码
jsp声明:
*
jsp页面中编写的所有代码,默认会翻译单servlet的service方法中,而jsp声明的java代码会翻译到_jspService方法
的外面<%! java代码%>
,所以jsp声明可用于定义jsp页面装换成的Servlet程序中的静态代码块,成员变量和方法
*
多个静态代码块,变量和函数可以定义在一个jsp声明中,也可以分别单独定义在多个
jsp声明中。
*
jsp隐式对象中的作用范围仅限于Servlet中的_jspService方法,所以在jsp声明中
不能使用这些隐式对象
*
可以在jsp声明中可以重写Servlet中的方法(ps:具体的方法名看jsp翻译后的java代码)
jsp注释
<%- -%>
,在jsp中使用html的注释,在源文件中看的到,但是使用jsp的注释在源代码中是看不见的
jsp的page指令:
isErrorPage属性:
通过该属性可以将当前的jsp页面设置成错误处理页面来处理另外的一个jsp页面的错误,也就是异常处理,
这意味着当前的jsp页面业务的改变。
errorPage属性(给服务器看的)
该属性用于指定处理当前页面异常错误的另一个jsp页面,指定的jsp错误处理页面的isErrorPage必须为true;
注意:如果设置了该属性,那个在server.xml中定义的任何错误页面都将被忽略,而优先处理该属性定义的错误
处理页面
全局配置:在server.xml中配置
<error-page>
<exception-type>java.lang.ArithmeticException</exception-type>
<location>/error/ErrorPage.jsp</location>
</error-page>
找不到页面:404
<error-page>
<error-code>404</error-code>
<location>/error/404.jsp</location>
</error-page>
服务器内部错误500
<error-page>
<error-code>500</error-code>
<location>/error/500.jsp</location>
</error-page>
IsELIgnored(是否忽略EL表达式)
pageEccoding:指定服务器以什么方式翻译该jsp(设置这一个就行了,这个设置了,服务器默认也会用这种码打开)
contentType:浏览器以什么码打开
jsp标签:
<jsp:include page="URL" flush="false|true"/>
flush:用于设置是否刷新缓冲区。默认是false,如果设置成了true,在当前页面输出使用了缓冲区的情况下,先刷新缓冲区,然后再执行包含工作
请求转发标识<jsp:forward page="URL"/>
传递参数标识<jsp:param name="" value=""/>
注意:在包含文件标识或者请求转发标志中要传递参数的时候
<jsp:include ...> <jsp:forward page="">
<jsp:param.../> <jsp:param.../>
</jsp:include> </jsp forward>
映射jsp:跟Servlet中相同:
<servlet>
<servlet-name><rvlet-name>
<servlet-
class>j</servlet-
class>
</servlet>
<servlet-mapping>
<servlet-name></servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>