3

我读过很多帖子说 scriptlet 是一种不好的做法,所以最后我也决定避免这种做法。我使用 struts 框架开发了一个项目,其中大部分 jsp 页面都有 java 代码。现在我想从我的所有页面中删除该代码。

<%@page import="java.sql.ResultSet"%>
<%@page import="com.pra.sql.SQLC"%>
<%@page import="java.util.ArrayList"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<table align="left" width="346" border="0">
    <tr><td align="center" colspan="3" style="font-size:20px;">Tests We Provide</td></tr>
    <tr>
        <th width="80" height="38" nowrap>Test ID</th>
        <th width="200" nowrap>Test Name</th>
        <th width="144" nowrap>Test Fee</th>
    </tr>
    <%
        String sql = "Select TestID,tname,tfee from addtest order by tname";
        ResultSet rs = SQLC.getData(sql, null);
        while (rs.next()) {
            String testid = rs.getString("TestID");
            String testname = rs.getString("tname");
            String testfee = rs.getString("tfee");
    %>
    <tr>
        <td width="80" height="34" nowrap><%=testid%></td>
        <td width="200" nowrap><%=testname%></td>
        <td width="144" nowrap><%=testfee%></td>
    </tr>  
    <%
        }
    %>
</table>
4

2 回答 2

1
  1. 将 JSP 与动作相关联,从而与动作类相关联
  2. 在 Java 代码中执行查询 - 您可以在操作中执行此操作,但我建议将控制权传递给单独的数据访问层
  3. 将查询结果保存到一个 bean 类型的列表中,该列表包含结果中的每一列
  4. 将 List 设置为请求的属性
  5. 使用类似循环列表的标记库,并打印输出。
于 2012-05-20T17:38:41.687 回答
0

您可以编写自己的 jsp 标签,也可以使用 JSTL。JSTL是oracle(原sun)提供的标准标签库

于 2012-05-20T18:58:25.517 回答