在java中,用户从界面输入字符串,要求读取用户输入的字符串并将其转化为日期类型输入mysql数据库
时间: 2024-02-24 17:00:35 浏览: 61
java与mysql日期类型的问题
5星 · 资源好评率100%
好的,我可以帮助你完成这个任务。在Java中,可以使用SimpleDateFormat类将字符串转换为日期类型,然后使用JDBC连接到MySQL数据库,并使用PreparedStatement将日期插入数据库中。以下是示例代码:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入日期字符串(格式为YYYY-MM-DD):");
String dateStr = scanner.nextLine();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
try {
date = dateFormat.parse(dateStr);
} catch (ParseException e) {
System.out.println("日期格式不正确!");
return;
}
Connection connection = null;
PreparedStatement preparedStatement = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/database_name", "username", "password");
String sql = "INSERT INTO table_name (date_column) VALUES (?)";
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setDate(1, new java.sql.Date(date.getTime()));
preparedStatement.executeUpdate();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
try {
if (preparedStatement != null) {
preparedStatement.close();
}
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
在上面的代码中,我们首先使用Scanner读取用户输入的日期字符串,然后使用SimpleDateFormat将其转换为日期类型。接下来,我们使用JDBC连接到MySQL数据库,并使用PreparedStatement将日期插入数据库中。在PreparedStatement中,我们使用setDate()方法将日期设置为参数,然后使用executeUpdate()方法执行插入操作。
请注意,上面的代码中的database_name、table_name、username和password需要根据您的实际情况进行替换。如果您需要使用其他类型的数据库,请根据其具体的JDBC驱动程序进行替换。
阅读全文