精华内容
下载资源
问答
  • 去掉 NO_ZERO_IN_DATE, NO_ZERO_DATE 即可。

    去掉 NO_ZERO_IN_DATE, NO_ZERO_DATE 即可。

    展开全文
  • Java 向数据库中输入 datetime类型数据

    万次阅读 2018-06-28 15:48:01
    mysql数据库中的数据是datetime类型的,java得到的是String类型的时间戳(秒值),如何将这个java的时间戳写入到mysql数据表中呢? 就涉及到数据类型的转换问题,本文就是讲怎么转的问题。  java的时间戳(字符串型...


            mysql数据库中的数据是datetime类型的,java得到的是String类型的时间戳(秒值),如何将这个java的时间戳写入到mysql数据表中呢?  就涉及到数据类型的转换问题,本文就是讲怎么转的问题。

             java的时间戳(字符串型秒值)-------->java.util.Date -------->java.sql.Timestamp  这样才可以写入到表中了。

    代码如下:

                            String sec="154266208342";   //时间戳
                            //将字符串时间戳转成时期时间型的字符串,
    ZhuanHuanTools是自己写得一个工具类见后面代码
           String dateString = ZhuanHuanTools.timeStamp2Date(sec, "yyyy-MM-dd HH:mm:ss"); 

           //把上面语句得到的日期型字符串转成java.utils.Date型变量dateTemp
    SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
    Date dateTemp=null;
    try {
    dateTemp = sdf.parse(dateString);
    } catch (ParseException e) {
    e.printStackTrace();

    //java.util.Date转java.sql.Timestamp
    Timestamp timeStamp1 = new Timestamp(dateTemp.getTime());

                                    //上面己经转换完了,下面的代码只是如何用,比如将结果写入到你的pojo对象rc中,初学者不知道就不用看

    rc.setInCarTime(timeStamp1);
                                    //再将rc对象写入到数据表中,

                                    int myid=camerSetDao.setRecognition(rc);

    public class ZhuanHuanTools {
    /**
       * 时间戳转换成日期格式字符串
       * @param seconds 精确到秒的字符串
       * @param formatStr 格式字符串,比如:"yyyy-MM-dd HH:mm:ss"
       * @return
       */
    public static String timeStamp2Date(String seconds,String format) {
    if(seconds == null || seconds.isEmpty() || seconds.equals("null")){
    return "";
    }
    if(format == null || format.isEmpty()) format = "yyyy-MM-dd HH:mm:ss";
    SimpleDateFormat sdf = new SimpleDateFormat(format);
    return sdf.format(new Date(Long.valueOf(seconds+"000")));
    }
    }

    ---------------------------下面是参考资料---------------------------

    java可以使用jdbc访问数据库,但对时间这个问题很无奈。我们通常使用的时间是java.utils.Date。后来尝试使用java.sql.Date朝数据库中写入时间,发现了一个问题,这些写入的时间,无一例外的没有后面的小时等信息,如下图所示。 

    没有红色框框信息

    经过搜索,理解了相关的问题。 
    java.sql.Date只表示数据库中日期的部分,如果想向数据库中写入完整的时间,如2016-12-11 17:10:25.000 则需要使用java.sql.Timestamp这个类

    下面,我给大家介绍下两种东西的使用方法,也算是给自己记录了一份学习笔记。

    字符串和java.utils.Date相互转换

    我们使用DateFormat 类来进行String和Date的转换,而java.utils.Date是我们在java编程中经常使用的。

    字符串转化为Date类型

    DateFormat format = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");    // 这里填写的是想要进行转换的时间格式
    String str = "2016-12-11 17:17:10";         // 时间字符串
    
    java.utils.Date date = null;
    try{
    date = format.parse(str);
    }catch(Exception e){
    e.printStackTrace();
    }

    Date类型转化为字符串

    DateFormat format = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");    // 这里填写的是想要进行转换的时间格式
    Date date = new java.utils.Date();      // 获取当前时间
    String str = format.format(date);
    // str = "2016-12-11 17:17:10"

    java.sql.Date向数据库写入日期

    这里就需要java.sql.Date和java.utils.Date进行相互转换了,这个转换一般比较容易,利用构造方法和.getTime() 方法进行转化。

    java.utils.Date date = new java.utils.Date();   // 获取当前时间
    java.sql.Date sql_date = new java.sql.Date(date.getTime()); //转换成java.sql.Date

    接着使用PreparedStatement 向数据库中写入时间,即可。

    ps.setDate(1, new java.sql.Date(date.getTime()));   // 设置项

    java.sql.Timestamp向数据库中写入时间

    需要注意的是,上边一种方法只能将日期写入到数据库中,为了能够将时间精确到s甚至是ms。我们需要使用java.sql.Timestamp 类型。 
    java.sql.Timestamp 类型的构造函数也可以使用Long进行初始化

    Date date = new Date();  
    Timestamp timeStamp = new Timestamp(date.getTime());  

    故在生成java.utils.Date时,将时间精确到s,然后使用预编译语句执行SQL语句

    Date date = new Date();  
    Timestamp timeStamp = new Timestamp(date.getTime()); 
     sql= "insert into flowmeter2(total,std_flow,temp,press,time) values(?,?,?,?,?)";   
            try {  
                PreparedStatement ps = connection.prepareStatement(sql);  
                ps.setString(1, total);  
                ps.setString(2, std_flow);  
                ps.setString(3, temp);  
                ps.setString(4, press);  
                ps.setTimestamp(5, timeStamp);  
                ps.executeUpdate();  
                System.out.println("添加成功!");  
                connection.close();  

    便可以将时间精确到ms级

    展开全文
  • JAVA的Date类型转换到mysql的DateTime类型的方法1.Date类型转换mysql的DateTime类型2.数据库中的DateTime的对象,在jsp页面进行显示 1.Date类型转换mysql的DateTime类型 通过将Date类型转换成String类型,存到数据库...

    1.Date类型转换mysql的DateTime类型

    通过将Date类型转换成String类型,存到数据库中
    刚开始做的时候。其实碰到的坑挺多,所以选择了这种在没有框架的情况下,一种简单的解决方法通过把date对象转成指定格式的字符串,这里的格式对应数据库中时间类型的格式,格式保持一致,然后通过jdbc存入到数据库中。

    	@Override
    	public void insertnotice(Notice notice) {
    		//一个公告表 字段有公告id(自增)、公告标题、公告内容、公告状态、公告时间
    		notice.setNcontent("默认内容");
    		notice.setNstate(1);
    		notice.setNname("默认标题");
    		//把date对象转成指定格式的字符串,这里的格式对应数据库中时间类型的格
    		式,格式保持一致
    		Date date = new Date();
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    		String f = sdf.format(date);
    		//转入dao层,进行数据的插入等操作
    		nd.insertnotice(notice,f);
    	}
    

    2.数据库中的DateTime的对象,在jsp页面进行显示

    在jsp页面中导入jstl格式化日期标签

    <%-- 导入jstl格式化日期的标签 --%>
    
    <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
    
    

    通过el表达式取出后台存在session中的值

    <fmt:formatDate type="both" dateStyle="medium" timeStyle="medium"
     value="${notice.ntime}" />
    
    
    展开全文
  • java.sql.Date只表示数据库中日期的部分,如果想向数据库中写入完整的时间,如2016-12-11...我们需要使用java.sql.Timestamp 类型。 java.sql.Timestamp 类型的构造函数也可以使用Long进行初始化 import java.sql.Ti...

    java.sql.Date只表示数据库中日期的部分,如果想向数据库中写入完整的时间,如2016-12-11 17:10:25.000 则需要使用java.sql.Timestamp这个类。

    为了能够将时间精确到s甚至是ms。我们需要使用java.sql.Timestamp 类型。
    java.sql.Timestamp 类型的构造函数也可以使用Long进行初始化

    import java.sql.Timestamp;
    
    Date date = new Date();  
    Timestamp timeStamp = new Timestamp(date.getTime());  
    

    故在生成java.utils.Date时,将时间精确到s,然后使用预编译语句执行SQL语句

    Date date = new Date();  
    Timestamp timeStamp = new Timestamp(date.getTime()); 
     sql= "insert into flowmeter2(total,std_flow,temp,press,time) values(?,?,?,?,?)";   
            try {  
                PreparedStatement ps = connection.prepareStatement(sql);  
                ps.setString(1, total);  
                ps.setString(2, std_flow);  
                ps.setString(3, temp);  
                ps.setString(4, press);  
                ps.setTimestamp(5, timeStamp);  
                ps.executeUpdate();  
                System.out.println("添加成功!");  
                connection.close();  
    

    便可以将时间精确到ms级

    展开全文
  • 基本思路:在Servlet中接收请求数据,按照格式化的日期格式规定用户输入日期,然后根据用户输入的情况进行操作,如果不正确,则返回用户... //从前端页面接收用户输入的日期格式化之后再转化为util类型的Date java
  • 【Mysql】MySQL中 TIMESTAMP类型 和 DATETIME类型 的区别

    千次阅读 多人点赞 2020-11-09 15:49:22
    DATETIME:不做任何改变,基本上是原样输入和输出 2、两者所能存储的时间范围不一样 timestamp存储的时间范围为:‘1970-01-01 00:00:01.000000’ 到 ‘2038-01-19 03:14:07.999999’。 datetime存储的时间范围为:...
  • pymysql插入datetime类型

    2018-07-06 19:19:00
    create_time=datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") 第二种 update_time=time.strftime('%Y-%m-%d %X',time.localtime(time.time())) sql="insert into user(create_time,update_time...
  • datetime输入方法

    千次阅读 2018-02-08 15:42:42
    var date = DateTime.Parse("2017-01-18")
  • 向数据库插入datetime类型的数据 一种是用jsp处理 两种是在sql语句上进行处理
  • <p>input type="datetime-local" name="datentime" size="15" style="height:30px; font-size:18px" placeholder=" <p>Now I need to retrieve the value and put it into my mysql database. I tried a lot but ...
  • 把CString类型数据转化为sql数据库datetime类型2010-03-25 15:27 最近在做一个winCE方面的应用程序其中有一个要根据输入的字符串查询数据库的问题。sql数据库中的数据时datetime类型的,由于类型的不匹配在程序...
  • 遇到了一个问题,相信是一个很普遍的问题,就是在C#中使用控件dateTimePicker写入一个时间数据的时候,在写入数据库中DATETIME类型的时候,会出现数据类型转换错误,或者是数据错误的信息。 其实这个问题很简单...
  • DateTime类型在后台怎么判断是否为空

    千次阅读 2018-12-03 14:36:07
    由于DateTime类型属于值类型,后台进行判断是否为NULL肯定会报错  而且不可能这样进行判断,因为DateTime有一个默认的最小值:{0001/1/1 0:00:00} 因此判断用户有没有输入日期的话可以使用  //假设前端接收到的数据...
  • DateTime类型是比较常用的变量类型,要对其赋默认值有以下两种常用方式: DateTime dt1 = default(DateTime); DateTime dt2 = DateTime.MinValue; 这样dt1,dt2 的值都是{0001/1/1 0:00:00} 比较大小的话就使用...
  • 在.netcore 3.1 webapi中,使用json格式传入datetime类型参数时,会报解析失败异常,或者时间少8个小时,返回datetime类型值时返回的是utc时间; 解决方法: 第一步:自定义DateTime解析类 public class ...
  • Postman的DateTime类型参数

    千次阅读 2020-12-01 09:28:51
    格式: 2019/01/03 15:08:55
  • DateTime类型转换比较

    2008-05-30 13:09:00
    convert (转换类型,字段,格式)比如convert(varchar,time1,112) 把time1(datetime)转换成格式为yyyymmdd.有一个时间2008-05-30 14:12:11 则转换成 20080530。在下表中,左侧的两列表示将 datetime 或 ...
  • 可以将系统日期格式化一下,已字符串的方式存入数据库,本身sql datatime类型可以接受字符串的形式,也就是说,在存库的时候,只要将日期格式化为可以转换的数据库日期字符串就可以了 string time=DateTime.Now....
  • 在greendao生成类中的代码写的是 JCTBpic.addDateProperty(...项目需求为在db中是datetime类型,即2019-05-25 15:28:00.000这种形式 所以首先修改JCTBpic类中HCSJ字段为java.sql.Timestamp 类型 修改JCTBpicD...
  • sql时间datetime类型遇到的问题

    千次阅读 2018-12-24 13:28:59
    mysql数据库里设置的时间为datetime类型的,时间存入数据库时为包括时分秒的时间格式,结果查出来为只有日期而时分秒都为00:00:00,如下 上为数据库,下为控制台打印时间 下为mapper配置文件: 很奇怪,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 85,567
精华内容 34,226
关键字:

datetime类型怎么输入