rio
问问题
3052 次
2 回答
2
首先,不要在JSP 中使用 scriptlet。十年来,它们被 taglibs 和 EL 所取代。一个常用的标记库是JSTL,它提供了<c:forEach>
完全用于此目的的标记。使用EL,您可以无缝访问 JSP 页面中的后端数据。
Here's an examplelpe 如何最好地替换您的代码。
员工:
public class Employee {
private Long code;
private String name;
// +getters +setters
}
员工服务小程序:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<Employee> employees = employeeDAO.list();
request.setAttribute("employees", employees);
request.getRequestDispatcher("employees.jsp").forward(request, response);
}
员工.jsp:
<select name="employee">
<c:forEach items="${employees}" var="employee">
<option value="${employee.code}">${employee.name}</option>
</c:forEach>
</select>
将 EmployeeServlet 映射到url-pattern
of/employees/*
并通过 调用它http://example.com/contextroot/employees
。祝你好运,让你的 JSP scriptletfree :)
于 2009-11-13T11:46:05.117 回答
0
I am a c# coder, but I believe you want something like this:
<%@ page import="java.util."%>
<%@ page import="java.lang."%>
<%! ArrayList al = c.loadExistingEmpCode();
for(int i=0; i < ai.Count; i++)
{
%>
<option><%= ai[0].toString() %></option>
<% } %>
于 2009-05-03T22:03:47.963 回答