此代码中是否有任何错误以及为何不在数据库中保存数据?

时间:2014-08-21 19:20:48

标签: jsp jstl

我只是表达语言(el)的新手。

这是代码。

在申请条件之前,它正常运作。条件是否有任何错误。

非我的参数是空的....

我也检查而不是&&然后它给出异常faild来解析EL表达式

<c:if test="${not empty param.firstName && not empty param.lastName && 
        not empty param.fatherName && not empty param.gender && not empty param.day &&
        not empty param.month && not empty param.year && 
        not empty param.classNo && not empty param.address} ">

<fmt:parseDate var="date" value="${param.day}-${param.month}-${param.year}" type="DATE"  
pattern="dd-MM-yyyy" />

<sql:update dataSource="${StdData }" scope="page" var="result">

INSERT INTO students(FirstName,LastName,FatherName,Gender,DateOfBirth,Class,Address)  
VALUES (?,?,?,?,?,?,?);
<sql:param value="${param.firstName}" />

<sql:param value="${param.lastName}" />

<sql:param value="${param.fatherName}" />

<sql:param value="${param.gender}"></sql:param>

<sql:param value="${date}" />

<sql:param value="${param.classNo}" />

<sql:param value="${param.address}" />

</sql:update>


</c:if> 

我只是想知道为什么这段代码打印所有参数,而上面的代码不会将数据保存到数据库,如果我在那里打印数据,它也不会显示在页面上。

    <c:if test="${not empty param.firstName && not empty param.lastName && 
        not empty param.fatherName && not empty param.gender && not empty param.day &&
        not empty param.month && not empty param.year && 
        not empty param.classNo && not empty param.address}">

    <c:out value="${param.firstName}"></c:out>
    <c:out value="${param.lastName}"></c:out>
    <c:out value="${param.fatherName}"></c:out>
    <c:out value="${param.gender}"></c:out>
    <c:out value="${param.day}/"></c:out>
    <c:out value="${param.month}/"></c:out>
    <c:out value="${param.year}"></c:out>
    <c:out value="${param.classNo}"></c:out>
    <c:out value="${param.address}"></c:out>
</c:if>

1 个答案:

答案 0 :(得分:1)

如果我没记错的话,

Not Empty相当于!= null。由于您正在检查请求参数,因此它们在技术上不具有&#34;&#34;&#34;&#34;而不是null?

如果我有50个声望,我会发布此评论:p

编辑:以下是Oracle EL指南的链接以供参考。

http://docs.oracle.com/javaee/1.4/tutorial/doc/JSPIntro7.html