gpt4 book ai didi

java - 如何使用 ZK 在网格中显示查询结果?

转载 作者:太空宇宙 更新时间:2023-11-04 08:13:30 25 4
gpt4 key购买 nike

我是 ZK 新手,我想创建一个包含查询语句结果行的网格。

这是我的代码:

    <window title="REPORTE IMPRESION" border="normal">
<zscript><![CDATA[
import java.sql.*;
void submit() {
//load driver and get a database connetion
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection(
"jdbc:sqlserver://127.0.0.1;databaseName=Reports", "sa", "sa");
PreparedStatement stmt = null;
try {
stmt = conn
.prepareStatement("select s.ID, s.NOMBRE, c.FECHA, c.PAG, c.TOTAL, c.PAG * 3.3 as TOTAL_PAGAR, c.PAG * 2.67 as Impresion, (c.PAG * 2.67)+(c.PAG * 3.3) as R FROM C_Sucursal s, Corte c where s.CLAVE=c.CLAVE and c.FECHA=?");

//insert what end user entered into database table
stmt.setString(1, fecha.getContext());
//execute the statement and Put the result in a ResultSet
PreparedStatement consulta1 = stmt;
ResultSet result1 = consulta1.executeQuery();
int i=0;
while(result1.next()){
//Here i need to put the result in a row!
System.out.println(result1.getObject(i));
i++;
}

} finally { //cleanup
if (stmt != null) {
try {
stmt.close();
} catch (SQLException ex) {
log.error(ex); //log and ignore
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException ex) {
log.error(ex); //log and ignore
}
}
}
}
]]>
</zscript>
<div apply="org.zkoss.bind.BindComposer">
<borderlayout sclass="complex-layout" height="580px">
<north size="120px" border="0">
<div>
<image sclass="complex-layout-header-img"
src="/images/bb.png" />
</div>
</north>
<!-- Content -->
<center>
<div>
<hlayout>
<label sclass="hightlight">
Fecha del Corte
</label>
</hlayout>
<datebox id="fecha" width="150px"
format="dd-MM-yyyy" />
<button label="submit" onClick="submit()" />
<grid>
<columns menupopup="auto">
<column label="ID" sort="auto" />
<column label="SUCURSAL" sort="auto" />
<column label="PAGINAS" sort="auto" />
<column label="EDO_CUENTA" sort="auto" />
<column label="TOTAL A PAGAR" sort="auto" />
<column label="IMPRESION" sort="auto" />
<column label="ENVIO" sort="auto" />
</columns>
</grid>
</div>
</center>
<south size="40px" border="0"
style="background: none repeat scroll 0 0 ;">
<toolbar mold="panel" align="center">
DERECHOS RESERVADOS
</toolbar>
</south>
</borderlayout>
</div>
</window>

如何将查询的结果放入网格的行中?救命!

我做了一个陈述,结果就是我需要放入行中的内容,但我不知道如何放入结果。

最佳答案

为网格提供一个 ID,将其传递给您的方法,然后您可以在方法中使用 Grid 对象(您传入的)并根据需要创建行来显示数据。

<grid id="myGrid">
<columns menupopup="auto">
<column label="ID" sort="auto" />
<column label="SUCURSAL" sort="auto" />
<column label="PAGINAS" sort="auto" />
<column label="EDO_CUENTA" sort="auto" />
<column label="TOTAL A PAGAR" sort="auto" />
<column label="IMPRESION" sort="auto" />
<column label="ENVIO" sort="auto" />
</columns>
</grid>

当您调用函数时,将“myGrid”传递给它

submit(myGrid);

假设您有一个私有(private)方法,可以为您将结果添加到网格中,并假设您的结果包装在名为“Data”的对象中,以下将在网格中显示数据:

private void displayResult(Grid myGrid, List<Data> data)
{

Rows rows = new Rows();
rows.setParent(programGrid);

for(Data d : data)
{
Label idLabel = new Label(d.getID());
Label sucursalLabel = new Label(d.getSucursal());
Label paginasLabel = new Label(d.getPaginas());
.... etc ...

Row row = new Row();

idLabel.setParent(row);
sucursalLabel.setParent(row);
paginasLabel.setParent(row);
.... etc ...

row.setParent(rows);
}
}

关于java - 如何使用 ZK 在网格中显示查询结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10841093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com