博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EL表达式
阅读量:5948 次
发布时间:2019-06-19

本文共 1439 字,大约阅读时间需要 4 分钟。

EL能直接方法Bean里面的方法吗

例如test下MyBean java文件
package test;
public class MyBean {
   private int id; //私有属性
   public MyBean() {
     return();
  }
  public int getId() {return id;}
  public void setId(int id) {this.id=id;}
}
jsp页面
MyJsp.jsp
<%@page contentType="text/html; charset=gb2312" %>
<%@page import="test.MyBean" %>
<jsp:useBean id="mybean" class="test8.BooksBean" scope="session"/>
<jsp:setProperty property="*" name="mybean"/>
<html>
<%mybean.setId(1);%>
${ mybean.id }   <!--知道这个是可以的-->
${ mybean.getId() }   <!--这个可以么? 我试验是不行的, 不过不放心, 按理应该是可以的哦.  要是这个行的话告诉下, 顺便问问有没有其他的访问方式  例如--mybean.getId()   ,   mybean.getId     >
</html>
疑问1:EL表达式  ${ mybean.getId() }  能不能访问Bean的方法,
疑问2:除了直接访问属性和访问方法以外(加入疑问1是可以访问的), 有没有其他的访问方式
疑问3:Bean的属性是私有的, 为什么能访问? (是不是因为这是EL的特性)
疑问4:有没有注意到MyBean.java的否则方法, 有个语句是return, 既然是return应该是直接返回了, 为什么还能继续执行, 是不是没用到这个构造方法.
疑问5:新手拉, 大虾们泼泼水.

 

 

 

 

EL是从作用域(如:request,session。。等等)中找对象,
所以假如你把myBean对象放到request范围内,
那么画面就不用写
直接可以用${myBean.id} 就可以取到myBean对象的id值。这句话就会调用myBean对象的getId()方法。疑问1和2都解决了。疑问3:EL不会访问私有属性,而是getId()方法。了解一下属性封装概念。疑问4:看问题内容你好像不了解MyBean.java的作用,了解一下属性封装概念,什么是javaBean?
在这里是容器,把ID值保存起来的一个对象,用get,set方法去存取这个ID值。
 
 
 
 
EL表达式:expression language,即表达语言,
它是为了便于存取数据而定义的一种语言,JSP2.0之后才成为一种标准。
形式:以“$”结尾,通过PAGE指令来说明是否支持EL表达式,
具体举例:
<%@ page contentType="text/html; charset=GB2312" isELIgnored="false" %> //声明可以使用EL表达式,如果为"ture",则表示忽略$//
如果希望在此处用EL表达式写出上面定义的count的值 </body> </html>

转载于:https://www.cnblogs.com/mount/archive/2011/11/16/2251539.html

你可能感兴趣的文章
jquery 操作iframe、frameset
查看>>
解决vim中不能使用小键盘
查看>>
jenkins权限管理,实现不同用户组显示对应视图views中不同的jobs
查看>>
我的友情链接
查看>>
CentOS定时同步系统时间
查看>>
批量删除用户--Shell脚本
查看>>
如何辨别android开发包的安全性
查看>>
Eclipse Java @Override 报错
查看>>
交换机之间的VLAN通信(trunk)
查看>>
heartbeat-gui
查看>>
51CTO博客中直接粘贴截图的方法
查看>>
N26-第二周作业
查看>>
关于一阶逻辑中实例化的可满足性问题
查看>>
cut命令用法讲解
查看>>
我的第一篇日志。
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
企业实战:mysql5.6数据库备份、恢复脚本
查看>>
RabbitMQ(消息队列)Linux安装相关问题解决
查看>>
我的友情链接
查看>>