复制即可使用
只需要修改两个数据库连接方式即可
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.sql.*;
public class DateToDate {
/**
* 读取数据库
*/
public static String PRE_USER = "root";
public static String PRE_PASSWORD = "123456";
public static String PRE_DBDRIVER = "com.mysql.cj.jdbc.Driver";
public static String PRE_DBURL = "jdbc:mysql://127.0.0.1:3306/stw_ckd?characterEncoding=utf8&useSSL=false&serverTimezone=UTC";
/**
* 写入数据库
*/
public static String IN_USER = "root";
public static String IN_PASSWORD = "123456";
public static String IN_DBDRIVER = "com.mysql.cj.jdbc.Driver";
public static String IN_DBURL = "jdbc:mysql://127.0.0.1:3306/stw_ckd?characterEncoding=utf8&useSSL=false&serverTimezone=UTC";
public static void main(String[] args) {
//读取数据库sql
String sql ="select * from patient_his_rel";
JSONArray jsonArray = select(sql);
if (jsonArray.size() > 0) {
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
update("REPLACE INTO patient_his_rel_copy" +
"(patient_id, his_patient_id, pat_tag, pat_state, create_time) " +
String.format("VALUES(%s, %s, %s, %s, %s);",
getVarcharParameter(obj.getString("patient_id")),
getVarcharParameter(obj.getString("his_patient_id")),
getVarcharParameter(obj.getString("pat_tag")),
getVarcharParameter(obj.getString("pat_state")),
getVarcharParameter(obj.getString("create_time"))
));
}
}
}
/**
* 数据库连接
* 查询方法
*/
public static JSONArray select(String sql){
JSONArray jsonArray = null;
try{
Class.forName(PRE_DBDRIVER);
Connection connection = DriverManager.getConnection(PRE_DBURL, PRE_USER, PRE_PASSWORD);
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(sql);
jsonArray = resultToJsa(resultSet);
resultSet.close();
statement.close();
connection.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
return jsonArray;
}
public static void update(String sql) {
try {
Class.forName(IN_DBDRIVER);
Connection connection = DriverManager.getConnection(IN_DBURL, IN_USER, IN_PASSWORD);
Statement statement = connection.createStatement();
statement.executeUpdate(sql);
statement.close();
connection.close();
} catch (SQLException | ClassNotFoundException throwables) {
throwables.printStackTrace();
}
}
/**
* 将结果集resultSet转成JSONArray
*/
private static JSONArray resultToJsa(ResultSet resultSet) {
JSONArray jsonArray = new JSONArray();
try {
ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();
JSONObject jsonObject = null;
while (resultSet.next()){
jsonObject = new JSONObject();
for (int i = 1;i<=columnCount; i++){
String columnName = metaData.getColumnName(i);
jsonObject.put(columnName, resultSet.getString(i));
}
jsonArray.add(jsonObject);
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return jsonArray;
}
public static String getVarcharParameter(String s){
if(s != null && s.length() > 0){
return "'" + s + "'";
}else{
return "null";
}
}
}