1. 猴子技术宅首页
  2. JavaScript干货教程

第三课 – JSP:useBean 用法和详解分享

 

第三课 – JSP-useBean 用法和详解

Bean类:

1.必须要有一个空的构造器,在JSP元素创建Bean时会调用空构造器 2.不能有任何公共实例变量,(也就是说不允许直接通过变量名访问变量),并且变量名首字母必须小写。 3.通过getter/setter方法来读写变量的值,并且方法中变量的首字母必须大写。 4.不要使用裸体类(要打包) 5.补充,最好实现 java.io.Serializable接口,使其转化为byte流,

(可以通过反编译,更好地消除一地网络的数据差异,其他好处请百度。)

代码如下:

%ignore_pre_1%

标准实例 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.* %> 

取出的值是:

Bean.java

 package 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.* %> 

<%–相当于 com.qsuron.study.Bean bean = (Bean)request.getAttribute(bean); if(bean == null){ bean = new com.qsuron.study.Bean(); request.setAttribute(bean,bean); } –%> <% bean.setCount(100); %>/>

scope:request1

<%–RequestBean2 返回101 –%> <%––%> <%–RequestBean2 返回1 –%> <% response.sendRedirect(RequestBean2.jsp);%> 请注意注释部分,如果不明白,请查照博文-(

第二课 – Jsp之Forward & SendReDirect 的区别

)

RequestBean2.jsp

 <%@ page language=java  	contentType=text/html; charset=UTF-8     pageEncoding=UTF-8%> <%@page import=com.qsuron.study.* %> 

<%–相当于 com.qsuron.study.Bean bean = (Bean)request.getAttribute(bean); if(bean == null){ bean = new com.qsuron.study.Bean(); request.setAttribute(bean,bean); } –%>

scope:request2

取出的值是:

forward – 正常递增 sendRedirect – 重新初始化

SessionBean.jsp

 <%@ page language=java  	contentType=text/html; charset=UTF-8     pageEncoding=UTF-8%> <%@page import=com.qsuron.study.* %> 

<%–相当于 com.qsuron.study.Bean bean = (Bean)session.getAttribute(bean); if(bean == null){ bean = new com.qsuron.study.Bean(); session.setAttribute(bean,bean); } –%>

scope:session

取出的值是:


相同窗口正常递增,新建窗口则重新初始化
ApplicationBean.jsp

 <%@ page language=java  	contentType=text/html; charset=UTF-8     pageEncoding=UTF-8%> <%@page import=com.qsuron.study.* %> 

<%–相当于 com.qsuron.study.Bean bean = (Bean)session.getAttribute(bean); if(bean == null){ bean = new com.qsuron.study.Bean(); session.setAttribute(bean,bean); } –%>

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.* %> 

你好! <%= new String(man.getName().getBytes(iso8859_1),UTF-8) %> <%= new String(man.getSex().getBytes(iso8859_1),UTF-8) %>

转载请注明出处:blog.csdn.net/qsuron 小树博客 博主小树 (qsuron)

 

 

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注