Java中针对Timestamp数据类型操作
来源:互联网 发布:益盟软件怎么样 编辑:程序博客网 时间:2024/05/20 00:39
刚入门的新人初次接触到java.sql.Timestamp数据类型时,往往会遇到各种错误(类型转换失败、数据格式化失败),本篇博客主要通过一个对学生表的插入和查询案例介绍Timestamp类型。
完整代码可以到https://github.com/psp0001060/LearnServlet下载。
一、数据库
数据库使用Oracle 10g 32位,存在一张表STU(学生表)。
二、项目结构图
三、关键代码
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"; // <input type="datetime-local"> 输入参数 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 }}
阅读全文
1 0
- Java中针对Timestamp数据类型操作
- mysql中timestamp数据类型
- java中Timestamp
- MySQL中timestamp数据类型的特点
- timestamp 数据类型
- TIMESTAMP 数据类型
- TIMESTAMP 数据类型
- Oracle中Date和Timestamp数据类型的比较
- Hibernate配置文件中数据类型date与timestamp区别
- Hibernate——配置文件中数据类型date与timestamp区别
- TIMESTAMP数据类型-007
- SqlServer的 timestamp数据类型
- Sqlserver:timestamp数据类型
- SQL Server timestamp 数据类型
- Sybase内置数据类型Timestamp
- DATE和TIMESTAMP数据类型
- Mysql数据类型---TIMESTAMP
- 疑难杂症 java中Timestamp导致ORA-03115
- Mysql利用Navicat导出数据
- 爬虫知识点(tesseract图形验证码)
- 分析工厂管理系统功能有什么作用?
- 1.1介绍
- BZOJ4810 / 由乃OI2017 由乃的玉米田【莫队+Bitset】
- Java中针对Timestamp数据类型操作
- python比较时间大小
- codeforce 855C. Helga Hufflepuff's Cup 树形DP
- 二层交换机和三层交换机和路由器的原理分析及区别
- 六大设计原则------单一职责原则
- 监控和管理生产环境spring boot actuator
- 详解各种加密算法的区别
- CCF之工资计算
- Python 运行时为啥会产生一个叫__pycache__的文件夹