javabean组件

2021-06-22 14:05

阅读:912

YPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

标签:实例化   nal   rop   pen   integer   type   mod   技术   char   

javaBean组件引入:

javaBean是使用java语言开发的一个可重用的组件,在Jsp开发中可以使用javaBean减少重复代码,使整个JSP代码的开发更简洁。

我们首先创建一个类叫做Student 她有两个属性,age(年龄)    name(姓名)

代码如下:

技术分享图片技术分享图片
 1 package com.java1234.model;
 2 public class Student {
 3    private int age;
 4    private String name;
 5 public int getAge() {
 6     return age;
 7 }
 8 public void setAge(int age) {
 9     this.age = age;
10 }
11 public String getName() {
12     return name;
13 }
14 public void setName(String name) {
15     this.name = name;
16 } 
17 }
Student.java

若使用简单的取变量使用变量是这样的:

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 import="com.java1234.model.*" %>
 4 
 5 
 6 7
 8 javaBean 9 
10 
11     12         Student student =new Student();
13         student.setName("王二小");
14         student.setAge(12);
15     %>
16     

姓名:

17

年龄:

18 19
Javabean01.jsp

如果我们使用jsp:useBean创建javabean(我们会发现大大简化了代码的数量)

不需要

jsp:useBean创建javabean:

实例化对象的名称scope=“保存范围”class=类完整名称/>

Scope,一共有page(页面),request(请求),session(会话)和application4个属性范围,默认是page;

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     class="com.java1234.model.Student"/>
11     12     student.setAge(18);
13     student.setName("王二小");
14     %>
15     

姓名:

16

年龄

17 18
javabean02.jsp

jsp:setProperty设置javabean属性值:

实例化对象的名称

”value=”属性值”param=”参数名称”/>

Property=”*”自动匹配所有。

如果我们不使用setProperty(创建一个student.jsp form表单提交界面):

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     
11 121314151617181920212223
姓名
年龄:
24 25
26 27
student.jsp

此时javabean03.jsp文件request.getParameter()方法获取name 和 age :

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 import="com.java1234.model.Student"  %>
 5 
 6 
 7  8 Setproperty 9 
10 
11     12     request.setCharacterEncoding("utf-8");
13     String name=request.getParameter("name");
14     String age=request.getParameter("age");
15     Student student=new Student();
16     
17     student.setAge(Integer.parseInt(age));
18     student.setName(name);
19     %>
20     

姓名:

21

年龄:

22 23
javaBean03.jsp

采用jsp:setProperty进行设置:(此时的Property="*")

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javabean03-1 8 
 9 
10     class="com.java1234.model.Student" />
11     12     

姓名:

13

年龄:

14 15
javaBean03-1

 现在使用Property="name" Property="age"重写为javaBean03-2.jsp。

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean03-1 8 
 9 
10      11        request.setCharacterEncoding("utf-8");
12      %>
13     class="com.java1234.model.Student" />
14     15     16     

姓 名:

17

年 龄:

18 19
javaBean03-2.jsp

jsp:getProperty获取javabean属性值:

Student.java里面有age name属性。

javaBean04.jsp代码:

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     class="com.java1234.model.Student"/>
11     12     student.setAge(18);
13     student.setName("王二小2");
14     %>
15     

姓名:

16

年龄:

17 18
javaBean04.jsp

Javabean的保存范围:

Javabean的保存范围有page,request,session,application.默认是page;

page:

在page中我们的上一个例子就是最好的说明,首先page是页面,也就是说在同一个页面存取。

request:

下面写一下在request中的存取,客户端内部跳转

我们把目标文件设置为target01.jsp

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     11        request.setCharacterEncoding("utf-8");
12     %>
13     class="com.java1234.model.Student"/>
14     15     16     17 
18 
javaBean04-1.jsp

target01.jsp

目标文件:

技术分享图片技术分享图片
    pageEncoding="utf-8"%>



javaBean03-1class="com.java1234.model.Student" />
    

姓名:

年龄:

target01.jsp

Session:(会话—只要浏览器不关闭就会一直存在)目标文件  target02.jsp

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     class="com.java1234.model.Student"/>
11     12     13     

session设置完毕

14 15
javaBean04-2.jsp

目标文件:

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean03-1 8 
 9 
10 

取到Session值

11 class="com.java1234.model.Student" /> 12

姓名:

13

年龄:

14 15
target02.jsp

Application(很直观的换个浏览器都可以取到值)

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     class="com.java1234.model.Student"/>
11     12     13     

application设置完毕

14 15
javaBean04-3.jsp

目标文件:

traget03,jsp(换个浏览器一样ok!)

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean03-1 8 
 9 
10 

取到application值

11 class="com.java1234.model.Student" /> 12

姓名:

13

年龄:

14 15
target03.jsp

javabean删除:

Page范围:pageConext.removeAttribute(“javaBean Name”);

Request范围:request.removeAttribute(“javaBean Name”);

Session范围:session.removeAttribue(“javaBean Name”);

Application范围:application.removeAttribue(“javaBean Name”);

 举个例子:

删除session中的值

技术分享图片技术分享图片
 1  2     pageEncoding="utf-8"%>
 3 
 4 
 5 
 6  7 javaBean 8 
 9 
10     11     session.removeAttribute("student");
12     %>
13     

session删除成功!

14 15
javaBeanDelete.jsp

ok了!

javabean组件

标签:实例化   nal   rop   pen   integer   type   mod   技术   char   

原文地址:https://www.cnblogs.com/zyxsblogs/p/9656829.html


评论


亲,登录后才可以留言!