我试图做一个简单的程序,插入一个电影信息到一个数据库,ID,标题,和日期,但我不能把日期,我已经尝试了一些方法,包括java文档,但没有人帮助。
这是我的代码:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package prueba3;
import connectivity.ConnectioClass;
import java.net.URL;
import java.util.ResourceBundle;
import connectivity.DatabaseTableRowViewObject;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.time.LocalDate;
import javafx.collections.ObservableList;
import javafx.scene.control.DatePicker;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
/**
*
* @author Guillermo
*/
public class FXMLDocumentController implements Initializable {
@FXML
private Label label;
@FXML
private Button button;
@FXML
private TextField texto;
@FXML
private Button boton2;
@FXML
private TextField texto2;
@FXML
private DatePicker texto3;
@FXML
private TableColumn<DatabaseTableRowViewObject, Integer> id;
@FXML
private TableColumn<DatabaseTableRowViewObject, String> nombre;
@FXML
private TableColumn<DatabaseTableRowViewObject, String> fecha;
@FXML
private TableView<DatabaseTableRowViewObject> tabla;
ObservableList<DatabaseTableRowViewObject> conexion;
@FXML
private void handleButtonAction(ActionEvent event) throws SQLException {
label.setText(texto.getText());
// added to make sure the properties of the object can be shown..
id.setCellValueFactory(new PropertyValueFactory<>("id"));
nombre.setCellValueFactory(new PropertyValueFactory<>("stringy"));
fecha.setCellValueFactory(new PropertyValueFactory<>("fecha"));
ConnectioClass connectioclass = new ConnectioClass();
Connection Connection = connectioclass.getConnection();
//String sql="INSERT INTO adios VALUES('"+texto.getText()+"')";
String pop = "INSERT INTO adios VALUES ('"+texto.getText()+"','" +texto2.getText()+"''" +texto3.getValue()+"')";
//String paco = "INSERT INTO adios (nombre) VALUES('" +texto3.getText()+"')";
Statement statement= Connection.createStatement();
Statement f = Connection.createStatement();
ConnectioClass.mostrar(f, tabla);
//statement.executeUpdate(sql);
Connection.createStatement();
//statement.executeUpdate(paco);
statement.executeUpdate(pop);
}
@FXML
private void botoneliminar(ActionEvent event) throws SQLException {
label.setText(texto.getText());
ConnectioClass connectioclass = new ConnectioClass();
Connection Connection = connectioclass.getConnection();
String sql="DELETE FROM adios WHERE nombre =('"+texto.getText()+"')";
Statement statement= Connection.createStatement();
statement.executeUpdate(sql);
}
@FXML
private void fechas(ActionEvent event){
LocalDate fechas = texto3.getValue();
}
@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO
}
}
正如您所看到的,有一个名为“texto3”的日期,而texto3.getValue()
不工作,所以我不知道该怎么做才能使我的日期选择器工作。
知道吗?祝你有愉快的一天。
您应该使用java.sql.PreparedStatement,而不是java.sql.Statement
。您还应该使用try-with-resources。用于插入数据库表adios
的代码应该如下所示。
String pop = "INSERT INTO adios VALUES (?, ?, ?)";
ConnectioClass connectioclass = new ConnectioClass();
try (java.sql.Connection connection = connectioclass.getConnection();
java.sql.PreparedStatement ps = connection.prepareStatement(pop)) {
ps.setString(1, texto.getText());
ps.setString(2, texto2.getText());
java.sql.Date theDate = java.sql.Date.valueOf(texto3.getValue());
ps.setDate(3, theDate);
ps.executeUpdate();
}
DatePicker类的getValue
方法返回java.time.LocalDate。
方法setdate
(在接口PreparedStatement
中)接受java.sql.date
参数。因此,您需要将localdate
转换为java.sql.date
。静态方法valueof
(在接口java.sql.date
中)为您执行转换。
问题内容: 我想从字节数组中提取一组坐标到DoubleBuffer中。 以下是如何将一组坐标从主字节数组提取到另一个字节数组的示例。 我的问题是: 如何将geomCoords字节数组放入DoubleBuffer? 还是 可以在不创建geomCoords的情况下将这些数据放入DoubleBuffer中?速度和效率是关键,因此任何捷径或优化都是最欢迎的! 问题答案: 如果您知道字节缓冲区中的8个字节确
如何在模型中添加增量?
Iam在数据库中插入时出现异常 下面的persistence.xml。 http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd“version=”1.0“>
我对Kinesis是新手。阅读我发现的文档,我可以创建Kinesis流来从生产者那里获得数据。然后使用KCL将从流中读取这些数据以进行进一步的处理。我了解了如何通过引入IRecordProcessor来编写KCL应用程序。
问题内容: 我希望我的问题不会很荒谬,因为令人惊讶的是,就流行的网站而言(据我所知)显然还没有真正问过这个问题。 情况是我有几个csv文件,总共包含1个以上的Mio观测值。每个观察结果都包含一个邮政地址。我打算将所有文件读入一个GeoDataFrame中,对地址进行地理编码,在给定shapefile的情况下执行空间连接,并为每行保存来自多边形的一些信息。我想是相当标准的。这是一次性数据清理过程的一