<sql:dateParam> 标签与 <sql:param> 标签功能相似,不过 <sql:dateParam> 主要用于为 SQL 语句填充日期类型的参数值。
语法:
参数说明:
本示例应用 <sql:dateParam> 标签设定其数值为“2008-12-1”,用于查询注册日期为 2008-12-1 的用户信息,关键代码如下:
<%@page language="java" contentType="text/html;charset=GBK" pageEncoding="GBK"%>
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<sql:setDataSource driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=db_testJSTL"
user="sa"password=""/>
<%
Date date = new Date(new GregorianCalendar(2008,11,1).getTimeInMillis());
request.setAttribute("date",date);
%>
<sql:query var="rs" sql="SELECT*FROM tb_user WHERE createTime=?">
<sql:dateParam value="${date}" type="date"/>
</sql:query>
本示例在上一示例的基础上加入对详细时间时分秒的限定,将数值具体到“2008-12-1 15:24:12”,用以查询注册时间为“2008-12-1 15:24:12”的用户信息,关键代码如下:
<%@page language="java"contentType="text/html;charset=GBK" pageEncoding="GBK"%>
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<sql:setDataSource driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=db_testJSTL"
user="sa"password=""/>
<%
Date date = new Date(new GregorianCalendar(2008,11,1,15,24,12).getTimeInMillis());
request.setAttribute("date",date);
%>
<sql:query var="rs" sql="SELECT*FROM tb_user WHERE createTime=?">
<sql:dateParam value="${date}" type="timestamp"/>
</sql:query>