JSP学习笔记(3)_动作元素
这篇接着上篇,来写关于JSP的动作元素的内容
1.动作元素: 所有动作元素都是 <jsp:xxx >
1.1 <jsp:useBean />
1.1.1 关于javaBean的:
Javabean就是一个普普通通的java类而已,只不过这个类要符合一些规范而已
1.1.2 JavaBean的规范:
1. 所有属性必须私有化
2. 必须为私有属性提供公共的getter(获取器)和setter(设置器)
3. 必须提供一个公共的无参的构造器。
4. 必须实现序列化接口: java.io.Serializable
1.2 <jsp:setProperty /> :给javaBean实例的对象的属性赋值
1.3 <jsp:getProperty /> :获取javaBean实例的对象的属性赋值
注意:<jsp:useBean/> 会回调公共的无参构造器
注意:<jsp:setProperty /> 会回调对应的setter方法
注意:<jsp:getProperty /> 会回调对应的getter方法
1.4 <jsp:include /> 动态包含
1.4.1 静态包含与动态包含的区别:
(1)静态包含是先包含,后编译; 最终只能生成一个java源文件!class也是一个
动态包含是先编译,后包含。最终生成多个java源文件!class也是多个
(2)静态包含不能用变量名作为路径; 动态包含就可以用变量名作为路径。
(3)静态包含不能给被包含的目标jsp页面传递参数;动态包含就可以!
(4)一个页面上的多个静态包含的页面中,不能有同名的变量;动态包含就可以!
注意:如果有一种场景,既能使用静态包含,又能使用动态包含,应该使用静态包含! 因为静态包含总共只会编译一次,速度快!
1.5
<jsp:forward /> 转发跳转到另外一个页面
1.6 <jsp:param /> 用来传值
1.6.1 传值方法:
(1)通过表单
(2)直接在url后面加上?参数名=参数值&参数名2=参数值2...
(3)直接在超链接的url后面写出参数即可
(4)通过window.location=”url?请求参数”
(5)<jsp:param>也是用来给服务器传递参数的,但是该标记必须搭配<jsp:include />或者<jsp:forward />
注意:如果没有给被动态包含的页面传递参数,则<jsp:include>和</ jsp:include>之间不能有任何内容,必须贴紧