java中如何实现数据库数据循环显示(急)

java中如何实现数据库数据循环显示(急),第1张

String content = null;

while(rsnext()) {

content = content + rsgetString("学生姓名") + "\t" + rsgetString("xxxx") + "\t" + rsgetString("xxx") + "\n";

}

textAreasetText(content);

按升序那个,直接在sql里面控制就行了

SELECT FROM ORDER BY 学号 ASC

写一个javaBean,比如叫Result, 这里只给你个示范, private int id; private String name; public void setId(int id){ thisid = id; } public int getId(){ return id; } public void setName(String name){ thisname = name; } public String getName(){ return name; } 然后得到结果后把结果设成javaBean,再把javaBean装到list里 LIst resultList = new ArrayLIst();

while(rsnext()){ Result result = new Result();

resultsetId(rsgetInt("memID"));

resultsetName(rsgetString("memNam"));

resultListadd(result);} 最后再你需要的地方展现就可以了 for(int i=0; i<resultListsize(); i++){ Result result = listget(i);JLable lable1 = new JLable(resultgetId); JLable lable2 = new JLable(resultgetName); }只是写了思路,不是在工具上写的,可能有语法错误,还不懂在m我。

//JTable你用错了吧 

private static String tableRows[] = {"编号", "名称", "规格", "数量", "原价"};

    public final static int ROW_MAX = 100; //表格最大行数

    private static String tableColunms[][] = new String[ROW_MAX][tableRowslength];

 

    public static JTable table = new JTable(tableColunms, tableRows);

    public static JScrollPane scrollpane = new JScrollPane(table);//添加滚动条

楼主很懒,不看JAVA的JTable的 API 文档

JTable(int numRows,

int numColumns)

使用 DefaultTableModel 构造具有 numRows 行和 numColumns 列个空单元格的 JTable。

JTable(Object[][] rowData,

Object[] columnNames)

构造一个 JTable 来显示二维数组 rowData 中的值,其列名称为 columnNames。

JTable(TableModel dm)

构造一个 JTable,使用数据模型 dm、默认的列模型和默认的选择模型对其进行初始化。

JTable(TableModel dm,

TableColumnModel cm)

构造一个 JTable,使用数据模型 dm、列模型 cm 和默认的选择模型对其进行初始化。

JTable(TableModel dm,

TableColumnModel cm,

ListSelectionModel sm)

构造一个 JTable,使用数据模型 dm、列模型 cm 和选择模型 sm 对其进行初始化。

JTable(Vector rowData,

Vector columnNames)

构造一个 JTable 来显示 Vector 所组成的 Vector rowData 中的值,其列名称为 columnNames

每当我们要学习一种新的技术 首先要搞明白他是干什么的 对自己有什么用处 把相关情况弄清楚以后 才能决定去不去学习他 在学习JavaFX之前 下面几个问题我觉得应该先搞清楚

一 什么是 Rich Internet Applications ?

Rich Internet Applications 缩写RIAs 翻译过来是富客户端应用程序 或者富互联网应用程序 他是从网络下载到本机 可以在浏览器中运行的一种应用程序 当然也可以脱离浏览器 直接在 *** 作系统下运行 相对于传统的的Web应用 富客户端应用程序主要特点是丰富的界面效果

说白了 RIAs就是把原来在桌面上跑的应用程序放到浏览器中去跑

二 富客户端是不是为了取代传统 Web 应用的界面?

目前来说我觉得他们互为补充 传统 Web 应用 特别是企业级应用 主要突出数据的存储 检索和管理 重点在业务和逻辑 而不在界面 而RIAs主要突出用户的体验和交互性 二者如何结合应该根据实际情况来 你要在浏览器中玩扫雷游戏 当然得富客户端 如果是个搜索引擎 传统的 Web 界面足以 如果是个银行账户查询界面 可能可以把二者结合起来

三 富客户端出现的目的到底是什么?

可能有人问 说了半天 富客户端即不是取代传统 Web 界面 也可以在桌面上直接运行 那还用得着费那么大的劲把它放到浏览器里面吗?

回答是很用得着 目的有两个 跨平台 易于发布

想想 不管是电脑还是手机 不管是Windows Linux Windows Mobile 塞班或者 Google 的手机 *** 作系统 哪个里面没有浏览器?只要有浏览器 你写的程序就可以在任何物理平台 任何 *** 作系统下运行 这是多么棒的一件事情啊!

四 当前主流的富客户端技术有哪些?他们的优缺点是什么?

基于 AJAX 技术的富客户端 比如 ExtJS

优点 纯基于浏览器 不需要安装插件

缺点 个人观点 毕竟中间多了一层浏览器 速度和功能可能稍差一点

微软的 SilverLight

优点 ( )他是微软的技术

( )基于 Net 框架和 WPF 功能强大

( )最重要的一点 Net 框架和 SilverLight 插件必定会成为微软新的 *** 作系统的一部分 在新 *** 作系统中 你的 SilverLight 程序不用安装插件就可以直接运行了

缺点 ( )还是这一条 他是微软的技术

Adobe 的 Flex

优点 底层基于 Flash 以 Flash 的形式发布 想一下 我们重新装完系统 打开浏览器 进入一个门户网站 一般会做什么事?当然是安装 Flash 插件了 只要联了因特网的机器 还有几台没装 Flash插件的呢?这就为 Flex 程序的发布扫清了一个很大的障碍 只要程序能满足需求 用什么平台开发用户一般不会很介意 但是动不动就安装插件那可真的很烦 而 Flash 已经被广泛接受了

缺点 又要重新学习一套新的语言规则 一套新的 Framework 真的很累啊

Sun 的 JavaFX

优点

( )对传统 Java 的继承 JavaFX 主要突出的是界面和交互性这一块 剩下的功能依然调用传统的 Java 包 这种既有创新又有继承的思路 降低了学习难度 这样 我们可以用以前熟悉的 Java 方式开发程序的模型层 然后用 JavaFX 设计视图层

( )同一个程序 Build 以后会产生两个包 一个是在浏览器中运行的 一个是在桌面直接运行的 当然 Flex 也可以 Silverlight 则可以直接变成 WPF 再变成 exe 所以这点可能算不上什么优点 但是话说回来 对于桌面 Java 仅仅一个发布问题 当初就曾经吓退多少想入门的新手?不信你 Google 一下 java 打包 !

缺点

( )虽然 JRE 现在以插件的形式发布了 但是除了 Java 开发人员 普通用户安装的毕竟还是少数 大型的 Java 程序很多都自带 JRE 也可以反映出这个问题

( )浏览器中 程序的启动速度要比 Flash 和 SilverLight 慢许多 可能是要从 Sun 官网下载很多 JS 脚本文件 这么多客户同时访问官网 能不慢吗?应该想办法改进一下

( )桌面运行包的扩展名是 jnlp 只要你安装了 JRE 插件 运行它就像运行 exe 程序一样 双击就可以了 这本来是一种很绿色的发布方式 但实际上不是这样 每当你运行一个新的桌面版 jnlp 程序以后 再打开控制面板的添加删除程序看看 都给你安装进去了!如果你直接删除了这个 jnlp 程序 控制面板里的信息就留在里面删不掉了 这种发布细节问题 应该可以改进

五 RIAs 可以和服务器通信吗?

传统的 CS 客户端都可以 RIAs当然更没问题了 不但可以通信 而且 Silverlight 支持 Asp Net Flex 支持 PHP ASP JSP等常见的服务器技术 比如在服务器端有个 Login php 文件 你可以用 Flex 把用户名和密码 Post 给它里面对应的处理函数 然后由 PHP 脚本完成数据库查询和登录等逻辑 再返回相应的数据用来刷新界面

注意 这里用到了刷新 而不是跳转 这就是富客户端和传统 Web 界面的重要区别 整个过程传统的 Web 程序区别不是很大 当然 数据在传输中的格式一般都是基于 XML 的

至于 JavaFX 还没有看到相关资料 至少会支持 JSP 吧

六 到底选哪一个

如果你是一个年轻人 精力充沛 学习劲头足 那么套用一句老话 全面撒网 重点钓鱼 如果你像我一样是个老人家了 脑子越来越不好使 那么选一个对你来说能最快上手的吧 附带说一句 Flex 和 JavaFX 都是开源的

七 一个小例子

下面一个简单的 Java 类 功能是返回程序运行时刻的时间 这个类用 JavaFX 调用 然后打包并通过互联网发布出去 可以在浏览器或者桌面里面运行

第一步 用 Netbeans 创建一个 JavaFX 空项目 然后项目中添加一个 Java 类

package javafxapplication ;import java util Date;public class Hello {    public String getTime(){        Date d = new Date();        return d toString();    }}

第二步 在项目中添加一个 JavaFX Stage 文件 并在 Scene 中加入一个 Text 看代码吧

package javafxapplication ;import javafx scene Scene;import javafx scene text Font;import javafx scene text Text;import javafx stage Stage;import javafxapplication Hello;var d = new Hello();var str :String=d getTime();Stage {    title:  Application title     width:      height:      scene: Scene {        content: Text {            font : Font {                size :              }            x:              y:              content: bind str        }    }};

Build 以后就可以在桌面运行了 如图

下面是我把它发布到服务器上 当你浏览这个页面的时候 程序就在你的浏览器中运行了

如果没有安装 JRE 运行时 系统会提示你安装 浏览器d出的对话框都点确定或者允许就可以 测试完了以后如果不喜欢可以将 Jre 从控制面板卸载 如果你一直从开始看下来 没注意到这里的程序是怎么加载的 可以刷新一下

Java needed Click for details lishixinzhi/Article/program/Java/JSP/201311/19253

在面板上用table显示数据库的中的信息

代码如下:

try{

             Database db = new Database();

             dbconn();

             Statement stmt = dbconncreateStatement();

             ResultSet rset = stmtexecuteQuery("SELECT FROM goods");//前面的为数据库部分(每个人视情况而定)

             DefaultTableModel dtm = (DefaultTableModel) jTable1getModel();

             dtmsetRowCount(0);

             while (rsetnext()) {

                 Object[] row = {

                     rsetgetString(1),

                     rsetgetDouble(2),

                     rsetgetDouble(3),//这三个为表各个字段的值,从数据库中得到的

                };

                 dtmaddRow(row);

             }

             rsetclose();

             stmtclose();

             dbcloseConn();

         } catch (ClassNotFoundException ex) {

             LoggergetLogger(AdminclassgetName())log(LevelSEVERE, null, ex);

         } catch (SQLException ex) {

             LoggergetLogger(AdminclassgetName())log(LevelSEVERE, null, ex);

         }

这个要从头说起就复杂了。我简单说一下吧。

首先,要把数据从库中取出来,假设你已经会了。

其次,创建一个表格模型,

DefaultTableModel model=new DefaultTableModel();

//创建表头

modelsetColumnIdentifiers(new Object[]{"日期/时间"," *** 作工","产品型号","数量"});

再次,添加数据

while(resultsnext())

{

String dt=resultsgetString("dt");

String name=resultsgetString("name");

String pname=resultsgetString("product");

int i=resultsgetInt("num");

//把以上数据添加到表格模型的一行中

modeladdRow(new Object[]{dt,name,pname,i});

}

最后,用模型生成表格

JTable table=new JTable(model);

当然,还有一些其它的 *** 作,比如把表格显示出来,表格的字体、行高等设置等等,不再一一赘述。

以上就是关于java中如何实现数据库数据循环显示(急)全部的内容,包括:java中如何实现数据库数据循环显示(急)、java怎么将查询到的数据库的内容显示到java图形界面上、java窗口程序实现显示数据库表格等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9781138.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存