我正在运行一个SQL数据库。所有java与它的交互都很清楚。
现在我想显示一些查询的结果(比如说SELECT * FROM example
),让用户在浏览器中用几个按钮进行查询(DELETE FROM example
)。
这样做有什么不复杂的方法?我的脑袋里充斥着像JAX-WS,JSP,Servlets等字样。最简单的方式似乎是JSP,但我听到它被弃用了,在做这个简单的任务时我也想学习一些对未来有用的东西:)
你会推荐什么?另外,如果你能指出一个好的教程会很好,因为我为Java webservices找到的所有教程都包括编写一个客户端,而不是在浏览器中使用它们。
答案 0 :(得分:1)
假设您非常信任您的用户,最简单的方法是创建一个带有文本框的简单HTML页面,让用户输入查询到他/她的心脏内容。然后,您可以将用户输入的任何文本直接传递到数据库并丢弃结果。
如果您想在此过程中学习新内容,可以使用Spring框架。这可能是一种矫枉过正,但考虑到应用程序的简单性(在您的情况下),这个练习可能是让您入门的好方法。
答案 1 :(得分:1)
有几种方法可以做你想做的事,我会列出一对:
在服务器端。
答案 2 :(得分:0)
如果有人感兴趣,我最终使用了tapestry.apache.org,它带有一个很好的入门教程:)
答案 3 :(得分:0)
也许你可以尝试ZK framework,这很简单&简单。您可以查看他们的awesome live demos,感觉有多简单&很容易。此外,他们有一个在线sandbox网络应用程序,您可以在其中尝试zk代码。
例如,以下代码将查询数据库并将结果显示给用户。如果您填写了数据库访问部分的代码,那么这些代码就会运行,这并不奇怪。
<强> index.zul 强>
<?xml version="1.0" encoding="UTF-8"?>
<zk>
<button label='Query database' onClick='QueryAndDisplay()'/>
<grid id='gridQueryResult'>
<columns/>
<rows/>
</grid>
<zscript><![CDATA[
import java.sql.*;
void QueryAndDisplay ()
{
// clear displayed content
org.zkoss.zul.Columns cols = gridQueryResult.getColumns();
org.zkoss.zul.Rows rows = gridQueryResult.getRows ();
// ...
// query the database, get the result set
//...
ResultSetMetaData rsmd = rs.getMetaData();
for (int i=1; i<rsmd.getColumnCount(); i++)
{
// display the columns
org.zkoss.zul.Column col = new org.zkoss.zul.Column (rsmd.getColumnName(i));
cols.appendChild (col);
}
while (rs.next())
{
for (int i=1; i<rsmd.getColumnCount(); i++)
{
org.zkoss.zul.Row row = new org.zkoss.zul.Row (rs.getString(i));
rows.appendChild (row);
}
}
// close database
// ...
}
]]></zscript>
</zk>