关于jsp的EL表达式

    技术2023-03-19  39

    pojo.UserInfo实体类的源代码如下:

     

    package pojo;

     

    import org.apache.struts.action.ActionForm;

     

    public class UserInfo extends ActionForm

    {

              private String userName;

              ……

              // Some function:

              public String getUserName()

              {

                       return this.userName;

              }

              public void setUserName(String userName)

              {

                       this.userName = userName

              }

              ……

    }

     

     

    通过登录把用户信息存入session中:session.setAttribute("loginedUser",userInfo);

    用户登录后转入某个jsp网页,页面中有如下代码:<font size="2">欢迎您,<font color="#FF0000">${sessionScope.loginedUser.userName}</font></font>

    这段html代码中包含了一个EL表达式,它会将已登录的用户名输出来。但是我们发现,pojo.UserInfouserName属性是private级别的,外界是访问不到的,在jsp里又怎么能访问得到呢?其实,这个EL表达式里的userName的作用不是直接访问pojo.UserInfouserName属性,而是访问它的getUserName()方法(这个方法是public级别的),然后返回一个String。不信的话,你把getUserName()的方法名改一下试试。

    最新回复(0)