在jsp上显示来自sql表的数据的其他一些方法

时间:2016-06-28 13:30:49

标签: java mysql jsp

我已经使用jstl在found.jsp上显示来自表名为status(所有列都是字符串类型)的特定数据。在我的表中,我在状态列下输入了1和0,其中1表示IN,0表示OUT。

found.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Found page</title>
    <style>
        header {
            background-color:teal;
            color:white;
            text-align:center;
            padding:5px;
        }
        section {
            height:270px; 
            width:1050px;
            float:right;
            padding:87px;
        }
        footer {
            background-color:black;
            float:bottom;
            color:white;
            clear:both;
            text-align:center;
            padding:5px;
        }
    </style>
</head>
<body style="background-color:lightsteelblue;">
    <header><h3>File Status!!</h3>
        <br>
    </header>
    <a href="create1.jsp"><font color="black">back</font></a>

    <form action=" LogoutServlet" method="post">
        <input type="submit" value="Logout" >
    </form>
    <form method="POST">
        File Number:<input type="text" name="status" value="" size="20" />
        <input type="submit" value="submit" name="submit" />
    </form>
    <br>
    <section>
        <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
                           url="jdbc:mysql://localhost/login"
                           user="root"  password="root"/>

        <sql:query dataSource="${snapshot}" var="result">
            SELECT * from status where fname="${param.status}";
        </sql:query>

        <table border="1" width="100%">
            <tr>  
                <th>File Number</th>

下面是

下显示1和0的列
                <th>File Status(IN=1 and OUT=0)</th>
                <th>File Department</th>
                <th>Date and Time</th>   
            </tr>
            <c:forEach var="row" items="${result.rows}">
                <tr>
                    <td><c:out value="${row.fname}"/></td>

值来自这里

                    <td><c:out value="${row.fstatus}"/></td>
                    <td><c:out value="${row.department}"/></td>
                    <td><c:out value="${row.datetime}"/></td>
                </tr>
            </c:forEach>
        </table>
    </section>
    <footer>
        Copyright 2016 NSIC. All right reserved.                             
    </footer>
</body>
</html>

我不希望显示1和0,而是希望IN和OUT显示在列下,我不想将数据库表entery从1和0更改为IN和OUT有没有办法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以使用<c:choose>代码

执行此操作
<c:choose>
    <c:when test="${row.fstatus=='1'}">

        IN

    </c:when>    
    <c:otherwise>

        OUT

    </c:otherwise>
</c:choose>