您的位置:首页 > 其它

第十章 jdbc中的数据类型与日期问题

2012-02-17 02:33 344 查看
两种Date

birthday = new Date(rs.getDate("birthday").getTime()); 有时间 Sat Dec 06 00:00:00 CST 2008

birthday = rs.getDate("birthday"); 没时间 2008-02-12

package cn.itcast.jdbc;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;

public class DateTest {

	/**
	 * @param args
	 * @throws SQLException
	 */
	public static void main(String[] args) throws SQLException {

	}

	static Date read(int id) throws SQLException {
		Connection conn = null;
		Statement st = null;
		ResultSet rs = null;
		Date birthday = null;
		try {
			// 2.建立连接
			conn = JdbcUtils.getConnection();
			// conn = JdbcUtilsSing.getInstance().getConnection();
			// 3.创建语句
			st = conn.createStatement();

			// 4.执行语句
			rs = st.executeQuery("select birthday  from user where id=" + id);

			// 5.处理结果
			while (rs.next()) {  //两种Date
				//birthday = new Date(rs.getDate("birthday").getTime());
				birthday = rs.getDate("birthday");
			}
		} finally {
			JdbcUtils.free(rs, st, conn);
		}
		return birthday;
	}

	static void create(String name, Date birthday, float money)
			throws SQLException {
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			// 2.建立连接
			conn = JdbcUtils.getConnection();
			// conn = JdbcUtilsSing.getInstance().getConnection();
			// 3.创建语句
			String sql = "insert into user(name,birthday, money) values (?, ?, ?) ";
			ps = conn.prepareStatement(sql);
			ps.setString(1, name);
			ps.setDate(2, new java.sql.Date(birthday.getTime()));    //转换成java.sql.Date
			ps.setFloat(3, money);

			// 4.执行语句
			int i = ps.executeUpdate();

			System.out.println("i=" + i);
		} finally {
			JdbcUtils.free(rs, ps, conn);
		}
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: