页面的java代码 如下<%        Calendar date = new GregorianCalendar();

int year = date.get(Calendar.YEAR);
int month = date.get(Calendar.MONTH)+1;
int day = date.get(Calendar.DATE);

String dateweek = String.valueOf(date.get(Calendar.DAY_OF_WEEK)-1);


 %>
页面的代码如下:  欢迎,${sessionScope.tblUser.username}登录系统,登陆时间<%=year %>年${month}月${day}日星期${dateweek}</span></span></td>
前边的年可以去到值 但是月日都取不到  为甚么呢

解决方案 »

  1.   

    ${requestScope.month}这样试试
      

  2.   

    Calendar date = new GregorianCalendar(); int year = date.get(Calendar.YEAR);
    int month = date.get(Calendar.MONTH) + 1;
    int day = date.get(Calendar.DATE); String dateweek = String.valueOf(date.get(Calendar.DAY_OF_WEEK)-1);
    System.out.println(year+"-"+month+"-"+day+"-"+dateweek);
    可以得到  你导入包  代码如上 
    import java.util.Calendar;
    import java.util.GregorianCalendar;
    这2个包
      

  3.   

    ${month},${day}这样会拿你ACTION的month和day属性,你ACTION没有它是拿不出来,可以试试1楼的方法
      

  4.   

    你这样写el表达式是错的,当然取不到值了。你第一个能取到值因为它不是el表达式
    el取值是${作用域(session,request).model类.属性}就像${sessionScope.tblUser.username}
      

  5.   

    你的年月日都是在页面的吧 而不是request
    ${month}月${day}--->${pageScope.month}月${pageScope.day}日......
      

  6.   

    我测试过 在java 代码中可以输出值,包也已经导入了虽然我没有加作用域,但是不是有一个默认的查找顺序吗?page-》request-》session-》applacation
      

  7.   

    <%=XXX%>表示直接输出页面中的变量XXX 
    ${XXX}EL表达式虽然也是输出(读取数据)但是他却和<%=XXX%>不同那就是它必须在  page  request session   application这四个scope中去Set进去   
    在前台如果要用EL表单时调用前台的变量就必须有一个Set的过程,但是如果是从后台传值过来的就不用Set因为它会自己Set
    所以你必须在上面Java代码中加上 一个 setXXX(XXX:scope) 然后就可以取到值了。