Java 日期 ->到MySql时间
我在java中有一个日期格式,我需要将其保存为MySQL中的时间格式。有没有办法从日期中获取时间部分?我知道 Dat.gettime() 返回很长,但我只需要 MySql 中的时间
任何建议...
谢谢大家..
I have a Date format in java that I need to save as a Time format in MySQL. Is there a way to just get the time part from the date? I know Dat.gettime() that returns a long but I just need the Time in MySql
Any suggestions...
Thx all ..
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
将PreparedStatement 与从
java.util.Date
创建的java.sql.Time
对象一起使用应该可以:Using a PreparedStatement together with a
java.sql.Time
object created from yourjava.util.Date
should work:使用 java.sql.Date 构建 SQL 日期。
Use the java.sql.Date to build a SQL Date.
您可以使用 SimpleDateFormat 来格式化日期的时间字段:
You could use SimpleDateFormat to format the Time fields of your date:
根据 JDBC 驱动程序,它可能会省略日期的时间部分,最好使用 java.sql.Timestamp。
Depending on the JDBC driver, it could omit the time portion of the date, better use java.sql.Timestamp.
获取日期+时间Mysql
Get Date + Time Mysql
与数据库交换数据时,请使用适当的日期类型和对象。不要仅使用字符串或整数来代替合法的类型/类。
java.time
现代方法使用 java.time 类。使用符合 JDBC 4.2 或更高版本的 JDBC 驱动程序,您可以省略
的使用java.sql.Time
类,直接使用java.time.LocalTime
即可。遗留类
java.util.Date< /code>
表示 UTC 中的日期和时间。转换为现代 java.time 类 (
Instant
),指定要通过其查看值的时区,并提取当天的时间。要进行转换,请调用添加到旧遗留类中的新方法。
指定时区。
时区至关重要。对于任何特定时刻,全球各地的日期都会因地区而异。例如,在法国巴黎午夜过后几分钟,又是新的一天“昨天”在魁北克蒙特利尔。
以
大陆/地区
格式指定正确的时区名称 ,例如美国/蒙特利尔
、非洲/卡萨布兰卡
,或太平洋/奥克兰
。切勿使用 3-4 个字母的缩写,例如EST
或IST
,因为它们不是真正的时区,不是标准化的,甚至不是唯一的( !)。提取不带日期的时间。
通过调用
setObject
传入您的PreparedStatement
。以类似的方式获取数据,调用
ResultSet::getObject
。When exchanging data with a database, use appropriate date types and objects. Do not use mere strings or integers instead of legitimate types/classes.
java.time
The modern approach uses java.time classes. With a JDBC driver complying with JDBC 4.2 or later, you can omit the use of
java.sql.Time
class, and just usejava.time.LocalTime
directly.The legacy class
java.util.Date
represents a date and a time-of-day in UTC. Convert to a modern java.time class (Instant
), assign a time zone through which you want to view the value, and extract the time-of-day.To convert, call new methods added to the old legacy classes.
Assign a time zone.
The time zone is crucial. For any given moment, the date varies around the globe by zone. For example, a few minutes after midnight in Paris France is a new day while still “yesterday” in Montréal Québec.
Specify a proper time zone name in the format of
continent/region
, such asAmerica/Montreal
,Africa/Casablanca
, orPacific/Auckland
. Never use the 3-4 letter abbreviation such asEST
orIST
as they are not true time zones, not standardized, and not even unique(!).Extract the time-of-day without a date.
Pass into your
PreparedStatement
by callingsetObject
.Fetch data in a similar manner, calling
ResultSet::getObject
.