【问题标题】:java.sql.Date is deprecated what should I use? [duplicate]不推荐使用 java.sql.Date 我应该使用什么? [复制]
【发布时间】:2016-06-26 14:01:27
【问题描述】:

我正在尝试使用在我的 sqlite 数据库中插入日期。

public CardHolder(String firstName, String lastName, String barcodeNb,
                         Date dateOfBirth,Date expiryDate)

我在 mainActivity 中启动这个实例的地方

 CardHolder person1 =new CardHolder("John","example","123123",new
                    java.sql.Date(1993,9,3),new java.sql.Date(1993,9,3));

但它表明 java.sql.Date 已被弃用,我应该改用什么?

【问题讨论】:

  • 日期未被弃用,但您使用的构造函数是。我建议查看该类的 javadoc 并选择另一种构造 Date 对象的方法
  • 查看这里了解更多信息stackoverflow.com/questions/887653/…你在这里找到你的解决方案
  • @beresfordt 我想以特定格式(任何已知格式的日期)保存日期,而不是毫秒
  • @RimaHajou new java.sql.Date(60707833200000L) 产生一个等于new java.sql.Date(1993,9,3) 的对象;这只是一种不同的构造方法。值得注意的是new java.sql.Date(1993,9,3) 并没有做你认为它做的事情。你应该阅读javadoc

标签: java android sqlite


【解决方案1】:
new java.sql.Date(new GregorianCalendar(1993, 9, 3).getTimeInMillis())

【讨论】:

  • 我想保存成日期格式
  • 仅供参考,java.util.Datejava.util.Calendarjava.text.SimpleDateFormat 等麻烦的旧日期时间类现在已被 java.time 类所取代。大多数 java.time 功能在 ThreeTen-Backport 项目中被反向移植到 Java 6 和 Java 7。进一步适用于ThreeTenABP 中的早期 Android (How to use ThreeTenABP…
猜你喜欢
  • 2016-08-22
  • 2016-05-18
  • 2013-08-07
  • 2013-05-20
  • 2012-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-02
相关资源
最近更新 更多