在搜索和阅读如何处理来自Java和MySQL的日期和时间后,我仍然感到困惑.
让我们说我创建了一个java.util.Date对象.该对象保留UTC时间.任何格式化或解析到其他时区都可以用例如java.text.SimpleDateFormat.
现在我想将我的日期对象以UTC格式存储到MySQL数据库中.但是当我使用这个setTimestamp()方法时,java.sql.PreparedStatement我有点困惑.下面是一些示例代码,我在表中测试了MySQL DATETIME和TIMESTAMP.我还用setString()和setTimestamp()方法插入日期.
java.sql.Connection conn = java.sql.DriverManager.getConnection("jdbc:mysql://localhost/test","user","password");
java.sql.Statement st = conn.createStatement();
String q = "DROP TABLE IF EXISTS tmp";
st.execute(q);
q = "CREATE TABLE tmp (dt_string TEXT, dt DATETIME, ts TIMESTAMP)";
st.execute(q);
java.sql.PreparedStatement pst = conn.prepareStatement("INSERT INTO tmp SET dt_string=?, dt=?, ts=?");
java.text.SimpleDateFormat utc = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
utc.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
java.util.TimeZone.setDefault(java.util.TimeZone.getTimeZone("EST"));
System.out.println("Default time zone: " + java.util.TimeZone.getDefault().getID());
java.util.Date d = new java.util.Date();
System.out.println("A date: " + d);
java.sql.Timestamp …Run Code Online (Sandbox Code Playgroud) 我有一个Java程序,可以对Math.tanh()函数进行多次调用.出于好奇,我想与C++进行比较.因此,我编写了两个小程序,一个用Java编写,一个用C++编写,用于测试.
Java代码:
public class TestTanh {
public static void main(String[] args) {
double t1 = -1.0;
double t2 = 1.0;
double step = 1e-8;
double z = 0.0;
for(double t=t1; t<=t2; t += step) {
double y = Math.tanh(t);
z += y;
}
System.out.println("Sum = " + z);
}
}
Run Code Online (Sandbox Code Playgroud)
和C++代码:
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double t1 = -1.0;
double t2 = 1.0;
double step = 1e-8;
double z = 0.0;
for(double t=t1; t<=t2; …Run Code Online (Sandbox Code Playgroud)