JSP动作包括:include,:useBean,:forward,:plugin,:setProperty,:getProperty
利用JSP动作可以包含进来文件(jsp:include)、调用JavaBean组件(jsp:useBean)、 跳转到另外的页面(jsp:forward)、调用Java插件(jsp:plugin)、读取属性jsp:setProperty和jsp:getProperty等 。马克- to-win:马克 java社区:防盗版实名手机尾号: 73203 。
【jsp调用java方法 java基础面试题及答案】jsp:useBean动作到底有什么意义?
jsp:useBean动作:
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203 。
马克-to-win:java bean简单来说很像过去的类,但是不必有main方法,但里面的将被jsp调用的方法必须是public型的 。当把一大堆可被人调用的公共方法,放在一个黑匣子当中时,你觉得这个黑匣子像个“豆”吗?bean的中文翻译就是“豆” 。相比servlet,jsp的弱项就在于:当需要写大量业务代码时 。现在好了,有了useBean这个动作,jsp一下就如虎添翼了 。useBean的scope属性可能让Bean关联到更多的页面,大大增加了bean的重用性 。
如果下面的例子中MyBean的方法不是public,程序运行时会报下面的错误: ServletException: tried to access method com.MyBean.increment()V from class org.apache.jsp.jsp1_jsp
例 4.1.1
package com;
public class MyBean {
private int count;
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public void increment()
{
count ++;
}
}
jsp1.jsp:
<jsp:useBean id=”count1″ class=”com.MyBean” scope=”session”/>
<jsp:useBean id=”count2″ class=”com.MyBean” scope=”session”/>
Count1:
<%count1.increment();%>you are <%=count1.getCount()%>
Count2:
you are <%=count2.getCount()%>
输出结果,在浏览器中:
Count1: you are 1 Count2: you are 0
继续在同一个浏览器中刷新:数据会一直上升 。
Count1: you are 2 Count2: you are 0
换个浏览器,结果就回到了初始:
Count1: you are 1 Count2: you are 0
观察转换成的servlet:
<jsp:useBean id=”count1″ class=”com.MyBean” scope=”session”/>
会被转换成:意思就是,session当中有没有count1,如没有,new一个,如有,就用过去的,这样在几个jsp页面和servlet之间就用session可以共享bean了 。名字就叫count1.
com.MyBean count1 = null;
synchronized (session) {
count1 = (com.MyBean)
_jspx_page_context.getAttribute(“count1”, PageContext.SESSION_SCOPE);
if (count1 == null){
count1 = new com.MyBean();
_jspx_page_context.setAttribute(“count1”, count1, PageContext.SESSION_SCOPE);
}
}
- 甜品店的优势与劣势swot分析,甜品店的优势与劣势swot分析?
- 老龄化服务创业项目,老龄化服务创业项目经验分享?
- 产品代理销售方案,产品代理销售方案策略分析?
- cps推广是什么意思,cps推广名词含义解释?
- 毕业论文初稿要写到什么程度,毕业论文初稿要写到什么程度及出现的问题?
- 淘宝客推广,淘宝客推广定义攻略?
- 10元店进货渠道,10元店进货渠道如何选品?
- 免费入驻的卖货平台,免费入驻的卖货平台有哪些?
- 创业团队主要五个职务,抖音运营创业团队主要五个职务?
- 淘宝网客服,淘宝网客服的话术技巧?
