java timestamp是什么类型,Java中针对Timestamp数据类型操作

一、数据库

数据库使用Oracle 10g 32位,存在一张表STU(学生表)。

ad635f5a0703bc2356522dbff358fd75.png

二、项目结构图

bc32bc9f9393dcae157c82486e3ec60c.png

三、关键代码

Stu (bean)

package sample.bean;

import java.sql.Timestamp;

public class Stu {

private int stuNo;

private String stuName;

private Timestamp createTime;

public int getStuNo() {

return stuNo;

}

public void setStuNo(int stuNo) {

this.stuNo = stuNo;

}

public String getStuName() {

return stuName;

}

public void setStuName(String stuName) {

this.stuName = stuName;

}

public Timestamp getCreateTime() {

return createTime;

}

public void setCreateTime(Timestamp createTime) {

this.createTime = createTime;

}

}

StuDao

public class StuDao {

/**

* 插入stu表记录(PreparedStatement),效率更高,更安全

*/

public void testInsertStuPs(Stu stu) {

Connection conn = DBUtil.getConnection(); // 创建数据库连接

PreparedStatement ps = null;// 创建PreparedStatement对象

try {

System.out.println("=========连接成功===============");

String sql = "insert into stu values(?,?,?)";

ps = conn.prepareStatement(sql); // 获取PreparedStatement对象

ps.setInt(1, stu.getStuNo());

ps.setString(2, stu.getStuName());

ps.setTimestamp(3, stu.getCreateTime());

int rs = ps.executeUpdate();// 执行更新语句

if (rs != 0) {

System.out.println("insert success");

} else {

System.out.println("insert fail");

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

DBUtil.closePreparedStatement(ps);

DBUtil.closeConnection(conn);

}

}

/**

* 查询stu表记录

*/

public Stu testSelectStuByNo(int stuNo) {

Connection conn = DBUtil.getConnection(); // 创建数据库连接

PreparedStatement statement = null;// 创建statement对象

ResultSet result = null;// 创建结果集ResultSet

Stu stu = new Stu();

try {

String sql = "select * from stu where stuno=?";

statement = conn.prepareStatement(sql); // 获取PreparedStatement对象

statement.setInt(1, stuNo);

result = statement.executeQuery();

if (result.next()) {

stu.setStuNo(result.getInt(1));

stu.setStuName(result.getString(2));

stu.setCreateTime(result.getTimestamp(3));

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

DBUtil.closeResultSet(result);

DBUtil.closePreparedStatement(statement);

DBUtil.closeConnection(conn);

}

return stu;

}

TestFormat

public class TestFormat {

//插入学生记录

@Test

public void testInsert() {

Stu stu = new Stu();

stu.setStuNo(15);

stu.setStuName("dalin");

将String类型格式化为timestamp

String date = "2009-07-16T19:20"; // 输入参数

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");

try {

Date dt = sdf.parse(date);

stu.setCreateTime(new Timestamp(dt.getTime()));

} catch (ParseException e) {

e.printStackTrace();

}

StuDao stuDao = new StuDao();

stuDao.testInsertStuPs(stu);

}

//根据学生编号查询学生记录

@Test

public void testSelectByNo(){

StuDao stuDao = new StuDao();

Stu stu = stuDao.testSelectStuByNo(15);

//将timestamp类型格式化为String

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm");

System.out.println(stu.getCreateTime()); //2009-07-16 19:20:00.0

System.out.println(sdf.format(stu.getCreateTime())); //2009/07/16 19:20

}

}

文章转自:https://blog.csdn.net/psp0001060/article/details/78283787

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值