Jsp 这段代码中有错误吗?为什么不将数据保存在数据库中?

Jsp 这段代码中有错误吗?为什么不将数据保存在数据库中?,jsp,jstl,Jsp,Jstl,我只是表达语言(el)的新手 这是代码 在应用条件之前,它工作正常。情况是否有任何错误 我的参数的非空值为空 我还检查了and而不是&,然后它给出了异常faild来解析EL表达式 <c:if test="${not empty param.firstName && not empty param.lastName && not empty param.fatherName && not empty param.gender

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

这是代码

在应用条件之前,它工作正常。情况是否有任何错误

我的参数的非空值为空

我还检查了and而不是&,然后它给出了异常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>

非空相当于!=如果我没记错的话,则为空。既然您正在检查请求参数,从技术上讲,它们的值不是空值而是“”吗

如果我有50%的声誉,我会将此作为一条评论发布:p

编辑:这里有一个指向Oracle EL指南的链接供参考


您的某个参数是空的吗?不,所有参数都有值,而您在类路径中的JSTL版本有值?是的,我知道它们的值为“”,但我已经给出了所有参数,但它不会将数据保存到数据库中。