第三课 - JSP:useBean 用法和详解
程序员文章站
2022-06-18 16:01:54
第三课 - jsp-usebean 用法和详解
一丨基本要素
bean类:
1.必须要有一个空的构造器,在jsp元素创建bean时会调用空构造器 2.不能有任何公共实例变量,(也...
第三课 - jsp-usebean 用法和详解
一丨基本要素
bean类:1.必须要有一个空的构造器,在jsp元素创建bean时会调用空构造器 2.不能有任何公共实例变量,(也就是说不允许直接通过变量名访问变量),并且变量名首字母必须小写。 3.通过getter/setter方法来读写变量的值,并且方法中变量的首字母必须大写。 4.不要使用裸体类(要打包) 5.补充,最好实现 java.io.serializable接口,使其转化为byte流,
(可以通过反编译,更好地消除一地网络的数据差异,其他好处请百度。)
二丨基本用法
代码如下:jsp:usebean application="" class="package.beanclass" id="beanname" request="" scope="page" session="" type="typename"> /*id 实例化出来后的引用名称 class bean类scope 即变量的作用域,默认是page.(page即页面局部变量,request范围,session范围,application范围) type 默认和class一样,就是把new出来的beanclass当成typename来用。(父类引用指向子类对象) 相当于 java 语句:*/ package.beanclass beanname=null,typename=null; typename beanname = new package.beanclass(); /*name bean类实例化后的变量名 property bean类的私有成员变量 value 赋值 相当于 java 语句:*/ beanname.setproperty(value); /* name bean类实例化后的变量名 property bean类的私有成员变量 相当于 java 语句:*/ out.write(beanname.getproperty());标准实例 student.java
package com.qsuron.study; public class student implements java.io.serializable{ private string name; public string getname() { return name; } public void setname(string name) { this.name = name; } }usebean.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
取出的值是:
三丨scope 详解 - page request session application
bean.javapackage com.qsuron.study; public class bean implements java.io.serializable{ private int count = 0; public int getcount() { count++; return count; } public void setcount(int count) { this.count = count; } }
pagebean.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
scope:page
取出的值是:
requestbean.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
scope:request1
<%--requestbean2 返回101 --%> <%--第二课 - jsp之forward & sendredirect 的区别
)requestbean2.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
scope:request2
取出的值是:
sessionbean.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
scope:session
取出的值是:
相同窗口正常递增,新建窗口则重新初始化
applicationbean.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@page import=com.qsuron.study.* %>
scope:application
取出的值是:
不重启tomcat,则正常递增。重启则重新初始化。
四丨其他相关语法
param参数//直接把从上一个页面通过重写url传递来的 urlparam直接赋值到num中 //相当于 />
property=* 把上个页面表单传递来的键值对直接存入对应的bean中 实例: sayhello.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%>
sayhello2.jsp
<%@ page language=java contenttype=text/html; charset=utf-8 pageencoding=utf-8%> <%@ page import=com.qsuron.study.* %>
转载请注明出处:blog.csdn.net/qsuron 小树博客 博主小树 (qsuron)