脚本程序可以包含任意量的Java语句、变量、方法或表达式,只要它们在脚本语言中是有效的。
语法格式:<% 代码片段 %>一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。
在JSP文件中,您必须先声明这些变量和方法然后才能使用它们。
语法格式:<%! declaration; [ declaration; ]+ ... %>一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。
表达式元素中可以包含任何符合Java语言规范的表达式,但是不能使用分号来结束表达式。
语法格式:<%= 表达式 %>为代码作注释以及将某段代码注释掉。
语法格式:<%-- 注释 --%>为JSP引擎而设计,并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分
语法格式:<%@ directive attribute="value" %><%@ page ... %> 定义页面的依赖属性,比如脚本语言、error页面、缓存需求等等
无论page指令出现在JSP页面中的什么地方,它作用的都是整个JSP页面
<%@ include ... %> 包含其他文件
<%@ taglib ... %> 引入标签库的定义,可以是自定义标签
JSP行为标签使用XML语法结构来控制servlet引擎。
它能够动态插入一个文件,重用JavaBean组件,引导用户去另一个页面,为Java插件产生相关的HTML等等。
语法格式:<jsp:action_name attribute="value" />在JSP页面中,可以不用显示捕获异常,而是通过配置page指令制定错误处理的JSP页面。如:<%@ page errorPage="error.jsp" %> ,同时在error.jsp中需制定<%@ page isErrorPage="true" %>。这样在error.jsp可以使用exception对象处理具体异常。
在web.xml文件中统一指定:
<error-page> <error-code>500<error-code/> <location>/WEB-INFO/error.jsp<location/> <error-page/>用于通知JSP引擎在翻译当前JSP页面时将其他文件的内容合并进当前JSP页面转换成的Servlet源文件中。
这种在源文件级别进行引入的方式称之为静态引入,当前JSP页面和引入的页面紧密结合为一个Servlet。
用于把另一个资源的输出内容插入进当前JSP页面的输出内容之中。被动态引入的资源必须是一个能独立被Web容器独立调用和执行的资源。
这种在JSP页面执行时的引入方式称为动态引入。生成两个Servlet源文件,通过一个方法的调用将目标文件包含进来。
参数在传输过程中使用的编码为 ISO-8859-1
只要在获取参数前调用 request.setCharacterEncoding("UTF-8"); 即可
前面方式对于GET无效,可以通过修改tomcat的server.xml文件的方式。
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" useBodyEncodingForURI="true"/>参照 http://localhost/docs/config/index.html 文档的useBodyEncodingForURI属性。
