javabean组件
2021-06-22 14:05
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 }
若使用简单的取变量使用变量是这样的:
1 2 pageEncoding="utf-8"%> 3 import="com.java1234.model.*" %> 4 5 6 7 8javaBean 9 10 11 12 Student student =new Student(); 13 student.setName("王二小"); 14 student.setAge(12); 15 %> 16姓名:
17年龄:
18 19
如果我们使用jsp:useBean创建javabean(我们会发现大大简化了代码的数量)
不需要
jsp:useBean创建javabean:
Scope,一共有page(页面),request(请求),session(会话)和application4个属性范围,默认是page;
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean 8 9 10class="com.java1234.model.Student"/> 11 12 student.setAge(18); 13 student.setName("王二小"); 14 %> 15 姓名:
16年龄
17 18
jsp:setProperty设置javabean属性值:
Property=”*”自动匹配所有。
如果我们不使用setProperty(创建一个student.jsp form表单提交界面):
1 2 pageEncoding="utf-8"%> 3 4 5 6 726 27javaBean 8 9 10
此时javabean03.jsp文件request.getParameter()方法获取name 和 age :
1 2 pageEncoding="utf-8"%> 3 4 import="com.java1234.model.Student" %> 5 6 7 8Setproperty 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
采用jsp:setProperty进行设置:(此时的Property="*")
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javabean03-1 8 9 10class="com.java1234.model.Student" /> 11 12 姓名:
13年龄:
14 15
现在使用Property="name" Property="age"重写为javaBean03-2.jsp。
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean03-1 8 9 10 11 request.setCharacterEncoding("utf-8"); 12 %> 13class="com.java1234.model.Student" /> 14 15 16 姓 名:
17年 龄:
18 19
jsp:getProperty获取javabean属性值:
Student.java里面有age name属性。
javaBean04.jsp代码:
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean 8 9 10class="com.java1234.model.Student"/> 11 12 student.setAge(18); 13 student.setName("王二小2"); 14 %> 15 姓名:
16年龄:
17 18
Javabean的保存范围:
Javabean的保存范围有page,request,session,application.默认是page;
page:
在page中我们的上一个例子就是最好的说明,首先page是页面,也就是说在同一个页面存取。
request:
下面写一下在request中的存取,客户端内部跳转
我们把目标文件设置为target01.jsp
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean 8 9 10 11 request.setCharacterEncoding("utf-8"); 12 %> 13class="com.java1234.model.Student"/> 14 15 16 17 18
target01.jsp
目标文件:
pageEncoding="utf-8"%>javaBean03-1 class="com.java1234.model.Student" /> 姓名:
年龄:
Session:(会话—只要浏览器不关闭就会一直存在)目标文件 target02.jsp
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean 8 9 10class="com.java1234.model.Student"/> 11 12 13 session设置完毕
14 15
目标文件:
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean03-1 8 9 10取到Session值
11class="com.java1234.model.Student" /> 12 姓名:
13年龄:
14 15
Application(很直观的换个浏览器都可以取到值)
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean 8 9 10class="com.java1234.model.Student"/> 11 12 13 application设置完毕
14 15
目标文件:
traget03,jsp(换个浏览器一样ok!)
1 2 pageEncoding="utf-8"%> 3 4 5 6 7javaBean03-1 8 9 10取到application值
11class="com.java1234.model.Student" /> 12 姓名:
13年龄:
14 15
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 7javaBean 8 9 10 11 session.removeAttribute("student"); 12 %> 13session删除成功!
14 15
ok了!
javabean组件
标签:实例化 nal rop pen integer type mod 技术 char
原文地址:https://www.cnblogs.com/zyxsblogs/p/9656829.html