基础:

一、JavaBean

①用作JavaBean的类必须是具有一个公共的无参数的构造方法

②JavaBean的属性是以方法定义的形式出现的。

③JavaBean的属性名是根据Setter和getter方法名称的来的,getter或setter方法去掉前缀set或get后的

部分即为属性名,但属性名的首字母必须小写。

④JSP中定义了三个标签<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>分别用于创建

和查找JavaBean的实例对象,设置JavaBean对象的属性,读取JavaBean对象的属性。

⑤对于JSP页面来说只要一个类是具有一个公共的、无参数的构造方法,就可以把这个类当作JavaBean来使用。

⑥方法:<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>

注意使用<jsp:getProperty>跨页面传参数时需要和<jsp:useBean>一块使用,代码比较繁琐。后面可以使用EL表达式。

a.jsp:

< ! – 注意使用<jsp:getProperty>跨页面传参数的时侯需要和< jsp:useBean >一块使用 –>

<a href="bean2.jsp">To bean2 Page</a>
<jsp:useBean id="customer" class="com.shopCart.Customer.Customer" scope="session"></jsp:useBean>
<jsp:setProperty property="username" name="customer" value="test"/>
<a href="b.jsp">To B Page</a>
b.jsp:
<jsp:useBean id="customer" class="com.shopCart.Customer.Customer" scope="session"></jsp:useBean>
username:<jsp:getProperty property="username" name="customer"/>

案例:

a.jsp

<body>

<!-- 注意使用< jsp:getProperty >跨页面传参数的时侯需要和< jsp:useBean >一块使用 -->
<a href="bean1.jsp">To bean1 Page</a>
<jsp:useBean id="customer" class="com.test.bean.Customer" scope="session"></jsp:useBean>
<jsp:setProperty property="username" name="customer" value="test"/>
<a href="b.jsp">To B Page</a> </body>

b.jsp

<body>

    <jsp:useBean id="customer" class="com.test.bean.Customer" scope="session"></jsp:useBean>
username:<jsp:getProperty property="username" name="customer"/> </body>

bean1.jsp

<body>

    <jsp:useBean id="customer" class="com.test.bean.Customer" scope="session"></jsp:useBean>
username:<jsp:getProperty property="username" name="customer"></jsp:getProperty>
</body>

bean.jsp

<body>

    <!-- 不经常使用,了解即可 -->

    <!-- 1.jsp:useBean -->
<jsp:useBean id="customer" class="com.test.bean.Customer" scope="session"></jsp:useBean> <!-- 其作用如下: -->
<%-- <%
//1.从scope(session)中获取id(customer)属性值,赋给class(Customer)类型的id(customer)
Customer customer1 = (Customer)session.getAttribute("customer1");
//2.若属性值为空,则利用反射创建一个新的对象,把该对象赋给id(customer)并以id为属性名存到scope(session)中
if(customer == null){
customer1 = (Customer)Class.forName("com.shopCart.Customer.Customer").newInstance();
session.setAttribute("customer", customer1);
}
%>--%> <!-- 2.jsp:setProperty 设置属性值-->
<jsp:setProperty property="username" name="customer" value="test"/> <!-- 其作用如下: -->
<%-- <%
customer.setUsername("test");
%> --%> <!-- 3.jsp:getProperty 获取属性值-->
username:<jsp:getProperty property="username" name="customer"/> <!-- 其作用如下: -->
<%-- <%
customer.getUsername();
%> --%> <!-- 4.为所有的属性赋值, property的值为*,则自动的为所有的属性赋值为对应的请求参数的值。在地址栏中输入
http://localhost:8080/Demo7_Cookie_Session/ Demo10_JavaBean/bean.jsp
?username=root&address=Beijing&cardType=Visa&card=1234-->
<jsp:setProperty property="*" name="customer"/> <!-- 5.use:Bean 的另外一种用法 -->
<jsp:useBean id="customer2" beanName="com.test.bean.Customer" type="java.lang.Object" scope="session"></jsp:useBean> <!-- 其作用如下: -->
<%
Object customer3 = session.getAttribute("customer2");
if(customer3 == null){
customer2 = Class.forName("com.test.bean.Customer").newInstance();
session.getAttribute("customer2");
}
%> <br><br>
address:<jsp:getProperty property="address" name="customer"/>
<br><br>
cardType:<jsp:getProperty property="cardType" name="customer"/>
<br><br>
card:<jsp:getProperty property="card" name="customer"/>
</body>

JSP(6)—JavaBean及案例的更多相关文章

  1. jsp 以及javabean内省技术

    l JSP l JavaBean及内省 l EL表达式 1.1 上次课内容回顾 会话技术: Cookie:客户端技术.将数据保存在客户端浏览器上.Cookie是有大小和个数的限制. Session:服 ...

  2. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  3. JSP+Servlet+javabean+oracle实现页面多条件模糊查询

    之前写过一篇JSP+Servlet+javabean+mysql实现页面多条件模糊查询 使用的是mysql进行的分页查询,mysql用limit控制,而oracle则是用rownum,今天第一次写or ...

  4. jsp学习---使用jsp和JavaBean实现超简单网页计算器

    一.需求 如题,用jsp实现一个超简单的网页计算器. 二.实现 1.效果图 1)初始界面: 2)随便输入两个数进行相乘: 3)当除数为零时提示报错: 2.代码 Calculator.java pack ...

  5. javaWeb 使用 jsp 和 javaBean 实现计算器功能

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  6. JSP中使用的模式——JSP+Servlet+JavaBean

    上一篇博文写到模式一:JSP+JavaBean 链接地址:http://wxmimperio.coding.io/?p=155 JSP中两种模式的总结 链接地址:http://wxmimperio.c ...

  7. MVC jsp+servlet+javabean 连接Mysql数据库測试demo

    本文介绍的是怎样使用MVC架构去实现jsp+servlet+javabean连接数据库 首先我们应该了解什么是MVC: MVC包含三个部分 : ①View:由各种JSP页面组成. ②Controlle ...

  8. 深入浅出Java MVC(Model View Controller) ---- (JSP + servlet + javabean实例)

    在DRP中终于接触到了MVC,感触是确实这样的架构系统灵活性不少,现在感触最深的就是使用tomcat作为服务器发布比IIS好多了,起码发布很简单,使用起来方便. 首先来简单的学习一下MVC的基础知识, ...

  9. JSP共享javabean

    JavaBean是一种可重复使用,且跨平台的软件组件.JavaBean可分为两种:一种是有用户界面(UI)的javaBean:还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的jav ...

随机推荐

  1. 令人疑惑的 std::remove 算法

    摘自<Effective STL>第32条 remove的声明: template<class ForwardIterator, class T> ForwardIterato ...

  2. BZOJ 4282(慎二的随机数列

    题解: 网上题解还没看 我的方法是用平衡树维护一个单调栈 由于N用了一定是赚的 所以它的作用是让f[i+1]=f[i]+1 这个是可以记录的 就跟noip蚯蚓那题一样 然后插入一个值的时候查询前面的最 ...

  3. NEST - 编写布尔查询

    Writing bool queries Version:5.x 英文原文地址:Writing bool queries 在使用查询 DSL 时,编写 bool 查询会很容易把代码变得冗长.举个栗子, ...

  4. xcode svn commit is not under version control 和 git常用指令

    使用Xcode提交一个第三方库时,由于包含资源文件,总是提交不了,提示报错:XXX commit is not under version control (1) 网上查了下,得知 xcode对于sv ...

  5. python 链接数据库错误

    用python3链接oracle产生错误: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified mo ...

  6. Codeforces Round #460 (Div. 2) ABCDE题解

    原文链接http://www.cnblogs.com/zhouzhendong/p/8397685.html 2018-02-01 $A$ 题意概括 你要买$m$斤水果,现在有$n$个超市让你选择. ...

  7. 【目录】《剑指Offer》Java实现

    如题: 1) 找出数组中重复的数字 2) 不修改数组找出重复的数字 3) 二维数组中的查找 4) 替换空格 5) 从尾到头打印链表 6) 重建二叉树 7) 二叉树的下一个结点 8) 用两个栈实现队列 ...

  8. LeetCode 237. 删除链表中的节点

    /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...

  9. Kmeans:利用Kmeans实现对多个点进行自动分类—Jason niu

    import numpy as np def kmeans(X, k, maxIt): numPoints, numDim = X.shape dataSet = np.zeros((numPoint ...

  10. Codeforces 853B Jury Meeting (差分+前缀和)

    <题目链接> 题目大意: 有$ n(n<=1e5)$个城市和一个首都(0号城市),现在每个城市有一个人,总共有$ m (m<=1e5)$次航班,每个航班要么从首都起飞,要么飞到 ...