我遇到错误,找不到符号,符号:方法setDate(Date)。
这是我的导入代码:
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Date;
import java.util.Vector;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import sun.applet.Main;
import javax.swing.table.DefaultTableModel;
这是有错误的代码(第6行):
private String idTransaksi() {
try {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd");
String tanggal = sdf.format(date);
txtDate.setDate(date);
SimpleDateFormat sdf2 = new SimpleDateFormat ("dd.MM.yyyy hh:mm:ss");
String tanggal2 = sdf2.format(date);
String qDate = "SELECT time, sellID FROM mssell";
rs = stm.executeQuery(qDate);
idJual = "Trans." + tanggal2;
String query = "INSERT INTO t_jual VALUES ('"+idJual+"','"+tanggal+"','ADMIN',0,0,'NOTHING')";
stm.executeUpdate(query);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
return idJual;
}
我想念什么?任何帮助性的回答都表示赞赏。
答案 0 :(得分:1)
在您的代码中;
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd");
String tanggal = sdf.format(date); //this tanggal for what? use this !!
txtDate.setDate(date); // date should be the string type. so make this tanggal and setText
所以最终代码应该像;
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd");
String tanggal = sdf.format(date);
txtDate.setText(tanggal);
答案 1 :(得分:1)
仅供参考,您使用的是可怕的旧日期时间类,而这些时间类早在几年前就被 java.time 类所取代。
LocalDate
类表示没有日期和时区的仅日期值。
LocalDate.now().toString()
2018-01-23
要访问数据库,请使用JDBC 4.2或更高版本。
myPreparedStatement.setObject( … , myLocalDate ) ;
和检索。
LocalDate myLocalDate = myResultSet.getObject( … , LocalDate.class ) ;
java.time框架已内置在Java 8及更高版本中。这些类取代了麻烦的旧legacy日期时间类,例如java.util.Date
,Calendar
和SimpleDateFormat
。
目前位于Joda-Time的maintenance mode项目建议迁移到java.time类。
要了解更多信息,请参见Oracle Tutorial。并在Stack Overflow中搜索许多示例和说明。规格为JSR 310。
您可以直接与数据库交换 java.time 对象。使用符合JDBC driver或更高版本的JDBC 4.2。不需要字符串,不需要java.sql.*
类。
在哪里获取java.time类?
ThreeTen-Extra项目使用其他类扩展了java.time。该项目为将来可能在java.time中添加内容提供了一个试验场。您可能会在这里找到一些有用的类,例如Interval
,YearWeek
,YearQuarter
和more。