关于向Mysql数据库中插入时间只有日期没有时分秒的问题

时间:2025-04-01 14:01:40

关于向Mysql数据库中插入时间只有日期没有时分秒以及jsp页面显示日期时间多了个.0的问题

Java.需要转换为,常规的方式转换过来只可以得到年月日,如若要取得时分秒,可以用Date的子类Timestamp

是不能直接插入数据库中的,虽然它包含了日期和时分秒。可以直接插入数据库,但是它只有日期而没有时间;可以直接插入数据库,但是它只有时间,没有日期

使用来向数据库插入。可包含了日前和到毫秒的时间值,在程序中,我们常常是使用的,所以就要将转化为

1.如下为插入数据时:

		Connection conn = null;
		PreparedStatement psmt = null;
		ResultSet rs = null;

		try {
			conn = ();
			psmt = (sql);
			(1, ());
			(2, ());
			(3, new Timestamp(().getTime()));
			(4, ());
			();

		} catch (Exception e) {
			// TODO Auto-generated catch block
			();

2.取出数据时:

try {
			conn = ();
			psmt = (sql);
			rs = ();
			
			while(()){
				m=new Message();
				(("m_id"));
				(("m_title"));
				(("m_content"));
				(("m_publishTime"));
				(("e_id"));
				(m);
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			();

页面显示时多了个0,可以用如下方式解决:

  用jstl的<fmt:formatDate>标签,(项目需要引入jstl的jar,页面需要引入标签库

<%@ taglib prefix="fmt" uri="/jsp/jstl/fmt" %>

<c:forEach var="me" items="${me}">
				<tr>
					<td width="15%">${}</td>
					<td width="20%">${}</td>
					<td width="10%"><fmt:formatDate value="${}" pattern="yyyy-MM-dd HH:mm:ss"/></td>
					<td width="10%">${}</td>
					<td width="10%">回复(..)</td>
				</tr>
			</c:forEach>