`

java.sql.Timestamp转为相应字符串的问题及解答

阅读更多
工作中用到了java.sql.Timestamp这个类,先不说这个类别的方面(现在不大明白的是它与java.sql.Date和java.sql.Time这两个类有什么不同?这个Timestamp有了对nanos的支持后就更精准了吗?),用这个类自身的toString()方法时就有些不舒服,因为它返回的字符串都是"yyyy-mm-dd hh:mm:ss:nnnnn......."格式的,而且那个小尾巴总是一个数字0,抹不掉了,这怎么办呢?为了这个小尾巴的问题总不至于再写一个自己的MyTimestamp来覆盖它吧?

知道可以用Format这样的一些手段format掉,可查了些后也没找到合适的,就写了一个很ugly的静态方法,若不是为了记下来并引以为鉴,我真就不好意思把这个静态方法写出来放在这.

那个方法大致是这样的:
    public static String deleteLastZeroForTimestamp(Timestamp ts) {
        
         if(ts == null){
             return null;
         }else{
             String original = ts.toString();
             int length = original.length();
             return original.substring(0, length-2);
         }
     }

呵呵,真是汗颜至极呀!

出此下策地写这个方法,也是出于时间紧为了测试别的功能点的考虑.

现在工作不怎么紧了,回过头来再好好地收拾这个小尾巴.

private static String DATE_TIME_FORMAT  = "MM/dd/yyyy HH:mm:ss";
static SimpleDateFormat dateTimeFormat = new SimpleDateFormat(DATE_TIME_FORMAT);

public static String formatDateTime(Date obj){
        if(obj!=null)
            return dateTimeFormat.format(obj);
        else
            return "";
}

用上面的这个SimpleDateFormat就可很方便地解决掉.
分享到:
评论
1 楼 逆风的香1314 2009-01-09  
恩  你的习惯很不错! 我有事都没时间甚至想不起来清理自己留下的小尾巴

相关推荐

    java.sql.date与java.util.date.pdf

    对于字符串与 `java.sql.Date` 之间的转换,可以使用 `SimpleDateFormat` 类进行解析和格式化。例如,将 `"yyyy-MM-dd"` 格式的字符串转换为 `java.sql.Date`,可以按照以下步骤操作: 方法1: ```java ...

    如何优雅的将Mybatis日志中的Preparing与Parameters转换为可执行SQL.doc

    - 对于包含括号的参数(如日期、字符串等),需要额外处理以获取参数的真实值和类型。 - **步骤3:拼接SQL语句**: - 根据解析出的参数,替换原始SQL语句中的问号`?`。 - 注意不同类型的数据(如字符串、时间戳...

    postgresql + mybatis传入时间参数的问题.md

    我们看到, 直接在可视化工具里用SQL写...甚至去掉 TIMESTAMP 都是可以的, pgSQL可以自动把字符串给你转换成日期格式, 然后作比较 但是在mapper文件中这么写就不可以了, 它会提示你varchar类型不能和日期类型进行比较

    sql mysql oracle数据类型

    8. **VARCHAR**: 可变长度字符串,最高可达255个字符,用于存储长度不固定的字符串。 9. **TEXT**: 无最大长度限制的字符串,适合存储大量文本数据。 10. **BLOB**: 二进制大数据类型,用于存储图片、附件等非文本二...

    探讨:sql插入空,默认1900-01-01 00:00:00.000的解决方法详解

    在SQL Server中,当我们在一个定义为`datetime`类型的字段中尝试插入空值或空白字符串时,系统通常会默认填充1900-01-01 00:00:00.000作为日期时间值。这是因为`datetime`类型不接受空值(NULL),如果未提供有效值...

    Json 自定义使用函数的简单实例

    在本文中,我们将深入探讨如何在Java中自定义使用JSON(JavaScript Object Notation)功能,特别是在处理对象转换为JSON字符串的场景。这个简单的实例展示了如何创建一个名为`JsonUtils`的工具类,它包含了将Java...

    LocalDateTime在项目中的使用(LocalDateTime对接前端通过时间戳互转、LocalDateTime对接数据库)

    默认情况下,fastJson在序列化`LocalDateTime`对象时,会将其转换成ISO 8601格式的字符串,如"2020-03-12T23:00:28.747",这并不符合前端以时间戳接收数据的需求。 #### 2.1.2 更改 fastJson 写入格式,让其回写...

Global site tag (gtag.js) - Google Analytics