我在哪里为保存元数据以格式化月历的JavaBean指定默认值

我在哪里为保存元数据以格式化月历的JavaBean指定默认值,java,jsp,Java,Jsp,我有一个JavaBean,它存储了我所称的元数据(星期开始日,任何节假日),我的JSP视图将使用这些元数据来显示日历月份。我使用的是JSTL,而不是EL,因为该公司只有JSP1.2 <table align="center" border="1" cellpadding="3" cellspacing="0" width="100%" class="tableInternalBorder"> <tbody> <tr>

我有一个JavaBean,它存储了我所称的元数据(星期开始日,任何节假日),我的JSP视图将使用这些元数据来显示日历月份。我使用的是JSTL,而不是EL,因为该公司只有JSP1.2

  <table align="center" border="1" cellpadding="3" cellspacing="0" width="100%" class="tableInternalBorder">
     <tbody>
        <tr>
           <th width="180px" class="optionYellow">Sun</th>
           <th width="180px">Mon</th>
           <th width="180px">Tue</th>
           <th width="180px">Wed</th>
           <th width="180px">Thu</th>
           <th width="180px">Fri</th>
           <th width="180px" class="optionYellow">Sat</th>
        </tr>

        <c:forEach var="week" begin="1" end="${calendar.totalWeeks}" varStatus="status">
           <tr>
           <c:forEach var="cell" begin="${1+7*(week-1)}" end="${7+7*(week-1)}" step="1" varStatus="status"><c:set var="dayNo" value="${cell-calendar.weekStartDay+1}" />
               <c:choose><c:when test="${calendar.weekStartDay>cell || (cell-calendar.weekStartDay+1)>calendar.totalDays}">
               <td height="50" class="<c:out value="${calendar.cellColor[cell]}" />">*&nbsp;</td>
               </c:when>
               <c:otherwise>
               <td valign="Top" height="75px" class="<c:out value="${calendar.cellColor[dayNo]}" />"><span class="calDayNo"><c:out value="${dayNo}" /></span><span class="calDayName"> <c:out value="${calendar.holidayName[dayNo]}" /></span><br>
               <c:forEach var="dayEvent" items="${eventMap.byDay[dayNo]}" varStatus="status"><div class="eventContent" ><c:out value="${status.count}" />) <c:out value="${dayEvent.event_type_name}" />: <c:out value="${dayEvent.eventUser.lastName}" /></div></c:forEach></td>
               </c:otherwise>
               </c:choose>
           </c:forEach>
           </tr>
        </c:forEach>
     </tbody>
  </table>
编辑:以下是我根据接受的答案所做的 我改变了这一点:

<c:forEach var="month" items="${calendar.monthList}" varStatus="status">
    <option value="<c:out value="${status.index}" />" <c:if test="${month == calendar.monthName}">selected</c:if>><c:out value="${month}" /></option>
</c:forEach>

为此:

<c:set var="months">January,February,March,April,May,June,July,August,September,October,November,December</c:set>
<c:forTokens var="month" items="${months}" delims="," varStatus="status">
  <option value="<c:out value="${status.index}" />" <c:if test="${month == calendar.monthName}">selected</c:if>><c:out value="${month}" /></option>
</c:forTokens>
一月、二月、三月、四月、五月、六月、七月、八月、九月、十月、十一月、十二月

我认为这里的问题是,您应该将默认值与视图或模型放在一起。我更喜欢将默认设置与模型一起使用,因为将来可能会有不同的jsp具有不同的默认设置。然后,您必须返回并更改模型中的默认值。我投了赞成票

“我用的是JSTL,不是EL”--嗯?在这段代码中,您同时使用了这两种方法。JSTL是那些
标记。EL是那些
${}
的东西。你每次都能听到我的话!!!:)我只是想澄清一下,我需要使用“你是说你更喜欢将默认设置与视图一起使用吗?那么你在第二句话中是否有拼写错误?
<c:forEach var="month" items="${calendar.monthList}" varStatus="status">
    <option value="<c:out value="${status.index}" />" <c:if test="${month == calendar.monthName}">selected</c:if>><c:out value="${month}" /></option>
</c:forEach>
<c:set var="months">January,February,March,April,May,June,July,August,September,October,November,December</c:set>
<c:forTokens var="month" items="${months}" delims="," varStatus="status">
  <option value="<c:out value="${status.index}" />" <c:if test="${month == calendar.monthName}">selected</c:if>><c:out value="${month}" /></option>
</c:forTokens>