您好,我是在SQL SERVER中创建的Tableview
中显示数据库中的某些数据,因此在表视图中显示该数据的过程中,一些数据正在显示,我有一些{ {1}}和Strings
的值显示正常,但其他一些则不行,这也是罕见的Int
和String
。
这是我用于创建表的代码,我正尝试为其显示数据:
Interger
这是FXML档案文件CREATE TABLE AUDITORIAC(
ID INT IDENTITY(1,1) NOT NULL,
FECHA_RECIBIDO DATE NOT NULL,
MES VARCHAR(50) NOT NULL,
NIT VARCHAR(50) NOT NULL,
ENTIDAD VARCHAR(50) NOT NULL,
NUMERO_FACTURA INT NOT NULL,
VALOR_FACTURA BIGINT NOT NULL,
TIPO_OBJECION VARCHAR (50) NOT NULL,
FECHA_ENTREGA DATE NOT NULL,
USUARIO VARCHAR(50) NOT NULL,
OBSERVACIONES VARCHAR(50) NOT NULL,
PRIMARY KEY(ID)
)
中的FXML
代码,其中包含表格视图。
Vista.fxml
这是我的<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.layout.AnchorPane?>
<AnchorPane prefHeight="497.0" prefWidth="943.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="application.ConexionController">
<children>
<Pane layoutY="1.0" prefHeight="734.0" prefWidth="1523.0">
<children>
<Button fx:id="btn" layoutX="159.0" layoutY="63.0" mnemonicParsing="false" onAction="#cargarconexion" prefHeight="46.0" prefWidth="117.0" text="Prueba Conexion" />
<Button fx:id="mtn" layoutX="20.0" layoutY="552.0" mnemonicParsing="false" onAction="#cargarregistro" prefHeight="46.0" prefWidth="150.0" text="Grabar Registro" />
<Button fx:id="lmp" layoutX="20.0" layoutY="624.0" mnemonicParsing="false" onAction="#borrarcasillatexto" prefHeight="25.0" prefWidth="150.0" text="Limpiar Texto" />
<Button fx:id="mts" layoutX="19.0" layoutY="63.0" mnemonicParsing="false" onAction="#mostrartodo" prefHeight="46.0" prefWidth="117.0" text="Mostrar" />
<TextField fx:id="buscarfactura" layoutX="75.0" layoutY="692.0" prefHeight="25.0" prefWidth="149.0" />
<Button fx:id="bqd" layoutX="246.0" layoutY="692.0" mnemonicParsing="false" onAction="#buscanm" prefHeight="25.0" prefWidth="242.0" text="BUSCAR POR NUMERO DE FACTURA" />
<Label layoutX="35.0" layoutY="245.0" prefHeight="17.0" prefWidth="55.0" text="MES" />
<Button fx:id="botonborrar" layoutX="674.0" layoutY="692.0" mnemonicParsing="false" onAction="#borraregistroid" prefHeight="25.0" prefWidth="155.0" text="BORRAR REGISTRO" />
<TextField fx:id="borrar" layoutX="508.0" layoutY="692.0" />
<DatePicker fx:id="mifecha" layoutX="169.0" layoutY="178.0" prefHeight="25.0" prefWidth="150.0" />
<Label layoutX="32.0" layoutY="182.0" prefHeight="17.0" prefWidth="117.0" text="FECHA RECIBIDO" />
<MenuBar fx:id="menucombo" layoutX="3.0" layoutY="3.0">
<menus>
<Menu mnemonicParsing="false" text="Agregar">
<items>
<MenuItem mnemonicParsing="false" onAction="#cargavistauno" text="Nueva Entidad" />
</items>
</Menu>
</menus>
</MenuBar>
<MenuBar fx:id="menudos" layoutX="77.0" layoutY="3.0">
<menus>
<Menu mnemonicParsing="false" text="Actualizar">
<items>
<MenuItem mnemonicParsing="false" onAction="#vistados" text="Actualiza Datos" />
</items>
</Menu>
</menus>
</MenuBar>
<Label layoutX="35.0" layoutY="371.0" prefHeight="17.0" prefWidth="29.0" text="NIT" />
<Label layoutX="35.0" layoutY="319.0" prefHeight="17.0" prefWidth="84.0" text="ENTIDAD" />
<Label layoutX="30.0" layoutY="430.0" prefHeight="17.0" prefWidth="131.0" text="NUMERO DE FACTURA" />
<TextField fx:id="numerofactura" layoutX="170.0" layoutY="426.0" />
<Label layoutX="350.0" layoutY="182.0" prefHeight="17.0" prefWidth="96.0" text="VALOR GLOSA" />
<TextField fx:id="valorglosa" layoutX="474.0" layoutY="178.0" />
<Label layoutX="347.0" layoutY="245.0" text="TIPO DE OBJECION" />
<DatePicker fx:id="mifent" layoutX="475.0" layoutY="306.0" prefHeight="25.0" prefWidth="150.0" />
<Label layoutX="350.0" layoutY="310.0" text="FECHA DE ENTREGA" />
<TextField fx:id="usuario" layoutX="473.0" layoutY="367.0" prefHeight="25.0" prefWidth="155.0" />
<Label layoutX="350.0" layoutY="371.0" prefHeight="17.0" prefWidth="69.0" text="USUARIO" />
<Label layoutX="350.0" layoutY="430.0" prefHeight="17.0" prefWidth="96.0" text="OBSERVACIÓN" />
<TextField fx:id="observacion" layoutX="471.0" layoutY="426.0" prefHeight="25.0" prefWidth="155.0" />
<AnchorPane layoutX="651.0" layoutY="76.0" minHeight="0.0" minWidth="0.0" prefHeight="548.0" prefWidth="853.0">
<children>
<TableView fx:id="tablaglosa" prefHeight="548.0" prefWidth="853.0">
<columns>
<TableColumn fx:id="idg" prefWidth="75.0" text="ID" />
<TableColumn fx:id="fecharec" prefWidth="110.0" text="FECHA RECIBIDO" />
<TableColumn fx:id="mmes" prefWidth="75.0" text="MES" />
<TableColumn fx:id="minit" prefWidth="75.0" text="NIT" />
<TableColumn fx:id="mientidad" prefWidth="75.0" text="ENTIDAD" />
<TableColumn fx:id="numfac" prefWidth="103.0" text="N° FACTURA" />
<TableColumn fx:id="valglosa" prefWidth="109.0" text="VALOR GLOSA" />
<TableColumn fx:id="tipoobj" prefWidth="96.0" text="TIPO OBJECION" />
<TableColumn fx:id="fechaent" prefWidth="101.0" text="FECHA ENTREGA" />
<TableColumn fx:id="usu" prefWidth="75.0" text="USUARIO" />
<TableColumn fx:id="obser" prefWidth="110.0" text="OBSERVACION" />
</columns>
</TableView>
</children></AnchorPane>
<ComboBox fx:id="mes" layoutX="169.0" layoutY="241.0" onAction="#llenadocombobox" prefWidth="150.0" />
<ComboBox fx:id="entidad" layoutX="169.0" layoutY="315.0" onAction="#llenadocombobox2" prefWidth="150.0" />
<ComboBox fx:id="nit" layoutX="171.0" layoutY="367.0" onAction="#llenadocombobox3" prefWidth="150.0" />
<ComboBox fx:id="tipoobjecion" layoutX="473.0" layoutY="241.0" onAction="#llenadocombobox4" prefWidth="150.0" />
</children>
</Pane>
</children>
</AnchorPane>
代码中的一部分:
ConexionController
ConexionController中的方法用于在表视图中显示数据库数据。
public void initialize(URL arg0, ResourceBundle arg1) {
idg.setCellValueFactory(new PropertyValueFactory <Glosa,Integer>("idglosa"));
mmes.setCellValueFactory(new PropertyValueFactory <Glosa,String>("mes"));
minit.setCellValueFactory(new PropertyValueFactory <Glosa,String>("nit"));
mientidad.setCellValueFactory(new PropertyValueFactory <Glosa,String>("entidad"));
numfac.setCellValueFactory(new PropertyValueFactory <Glosa,Integer>("numerofactura"));
valglosa.setCellValueFactory(new PropertyValueFactory <Glosa,Integer>("valorglosa"));
tipoobj.setCellValueFactory(new PropertyValueFactory <Glosa,String>("tipoobjecion"));
usu.setCellValueFactory(new PropertyValueFactory <Glosa,String>("usuario"));
obser.setCellValueFactory(new PropertyValueFactory <Glosa,String>("observacion"));
fecharec.setCellValueFactory(cellData -> cellData.getValue().fechaRecibidoProperty());
fechaent.setCellValueFactory(cellData -> cellData.getValue().fechaEntregaAuditoriaProperty());
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy");
fecharec.setCellFactory(column -> {
return new TableCell<Glosa, LocalDate>() {
@Override
protected void updateItem(LocalDate item, boolean empty) {
super.updateItem(item, empty);
if (item == null || empty) {
setText(null);
} else {
setText(formatter.format(item));
}
}
};
});
fechaent.setCellFactory(column -> {
return new TableCell<Glosa, LocalDate>() {
@Override
protected void updateItem(LocalDate item, boolean empty) {
super.updateItem(item, empty);
if (item == null || empty) {
setText(null);
} else {
setText(formatter.format(item));
}
}
};
});
seleccionaregistros();
busquedanfactura();
llenadocombobox();
llenadocombobox2();
llenadocombobox3();
llenadocombobox4();
}
Glosa类,在这个类中,我正在传递表视图的数据。
打包申请;
public void seleccionaregistros() {
ObservableList <Glosa> data =FXCollections.observableArrayList();
Connection conn=null;{
try {
conn=DriverManager.getConnection("jdbc:sqlserver://DESKTOP-4JA6SFR:1433;databaseName=GLOSASNINO", "sa", "123");
Statement mostrar=conn.createStatement();
ResultSet rs;
rs= mostrar.executeQuery("select * from auditoriac");
while ( rs.next() )
{
data.add(new Glosa(
rs.getInt(1),
rs.getDate(2).toLocalDate(),
rs.getString("mes"),
rs.getString("nit"),
rs.getString("entidad"),
rs.getInt(6),
rs.getInt(7),
rs.getString("tipo_objecion"),
rs.getDate(9).toLocalDate(),
rs.getString("usuario"),
rs.getString("observaciones")
)
);
tablaglosa.setItems(data);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
这是我的表视图的捕获。
任何帮助都可以得到。