java指定查询数据库表内容并用一个二维数组a来显示出现的问题

问题描述

主要通过“元件名”和“生产厂家”2个内容来查询数据库并显示结果部分代码如下:Objecta[][];Objectcolname[]={"元件名","生产厂家"};.....a=newObject[30][2];table=newJTable(a,colname);......if(eb.getSource()==b_enter){try{inti=0;sqll=sql.connect();a1="'"+"%"+t_name.getText().trim()+"%"+"'";//t_name为“元件名”文本框a2="'"+"%"+t_company.getText().trim()+"%"+"'";//t_company为“生产厂家”文本框Stringtemp="select*fromFFwhere元件名like"+a1+"and元件厂家like"+a2;rs=sqll.executeQuery(temp);for(intn=0;n<2;n++){a[i][n]=rs.getString(n+2);}i++;p_bar.setValue(i);p_bar.setString("查询了"+i+"条记录");......整个代码测试并读取数据库内容都没问题。。假设我的table为:tableFF:元件名生产厂家aabbaabbaabbccddeeff........现在问题主要出在数组a的显示问题上了,主要有2个大问题:1.当输入的a1=aa,a2=bb时,提示我查询到3条记录,但是a[30][2]这个表格并不显示出数据,只有用鼠标点击该表格内容框时才显示出来(用鼠标点a[0][0]表格位置时,就显示出aabb,要是接着点a[3][0]则显示完3条记录),不知道是不是table需要刷新?若需要的话怎么刷新?2.在1的基础上,若再次输入a1=cc,a2=dd时(1的问题依然存在,就是表内无法立即刷新出查询到的记录),提示找到1条记录。但最终结果为:ccddaabbaabb就是第一条记录更新了,但之前查询时遗留下来的2-3条记录依然存在,不知道该如何在每次按下b_enter键时都更新一遍数组a。我希望第二次查询的结果为:ccdd把之前的查询到的记录删除掉。这2个问题我从早上弄到现在,,,一直找不到解决的办法。。特来不耻下问。。希望大家帮忙下、

解决方案

解决方案二:
使用List<List<Object>>比二维数组方便一些。
解决方案三:
JTable的刷新很好做,无非就是增加删除行。第二个问题的原因应该是数组或者JTable的model没出去原来的记录而直接加薪记录了。btw,最后用的那个“不耻下问”,太油菜了。
解决方案四:
那个成语没别的意思阿,,刚刚看了下成语意思,,发现和我想表达的意思颠倒了0.0别人都说有问题先问百度,解决不了再来BBS请高手,我现在就是第二种境界了。言归正传。。。第一个问题解决了。。。就是最后调用个table.updateUI();看来自己没学好的缘故--!现在还在努力思索怎么解决第二个烦恼,,大家赐教下#14

时间: 2024-11-10 11:19:04

java指定查询数据库表内容并用一个二维数组a来显示出现的问题的相关文章

用函数读出数据表内容放入二维数组

//用函数读出数据表内容放入二维数组 //动态sql语句 //以读出点击次数表为例. function list_hit($fields,$where,$order,$direction,$limit,$conn) { if ($fields=="") {$fields="hit_id,banner_id,hit_ip,hit_time";} if ($order=="") {$direction="";} $sql=&quo

用函数读出数据表内容放入二维数组_php基础

//用函数读出数据表内容放入二维数组 //动态sql语句 //以读出点击次数表为例. function list_hit($fields,$where,$order,$direction,$limit,$conn) { if ($fields=="") {$fields="hit_id,banner_id,hit_ip,hit_time";} if ($order=="") {$direction="";} $sql=&quo

将数据库的内容读到二维数组并按指定列输出

数据|数据库|数组 <? $host = "localhost";   //主机名 $user = "root";        //mysql用户名 $password = "";    //mysql密码 $database = "doc";  //mysql数据库名 $tables = "mclass";  //表名 $conn=mysql_connect("$host",&

PHP将MYSQL内容读到二维数组并按指定列输出

PHP将MYSQL内容读到二维数组并按指定列输出 <? $host = "localhost";   //主机名 $user = "root";        //mysql用户名 $password = "";    //mysql密码 $database = "doc";  //mysql数据库名 $tables = "mclass";  //表名 $conn=mysql_connect(&quo

在java中定义了一个二维数组,这样做好像不对,输出时报错, 代码如下

问题描述 在java中定义了一个二维数组,这样做好像不对,输出时报错, 代码如下 我是想要定义一个二维数组,然后动态地给它赋值,应该怎么做不知道问题出在做么地方,请大神指导一下 ,代码如下: int[][] a = null; a[1] = new int[]{1,2,3}; System.out.println(a[1][1]); 解决方案 int[][] a = null; a = new int[5][];//第一维需要初始化 a[1] = new int[]{1,2,3};//这是第二维

java 命名-一个二维数组常量命名该怎么命名,不能是大写吧。

问题描述 一个二维数组常量命名该怎么命名,不能是大写吧. java的数组常量命名约定.======================================= 解决方案 用final 来定义 解决方案二: 命名规范http://wenku.baidu.com/link?url=lXm9BPBbZvU_ELi0c-MwajASixWSWT_H62owk4lp3DDeUUdxJ-GYp-oTobOJRn0XO-2L-mkiKkkaLXmR_mV_Yc-ByOsJ1Ja4yaeeU5nMn__

已知一个二维数组,求一个新的二维数组,具体描述请看内容吧

问题描述 我将DataTable中的数据存放到了一个二维数组中,如图所示比如这个数组的名称是a[][],现在我定义一个新的二维数组b[][],求出a的每一行.每一列的和,然后和a一起,都赋值给b,b的结构如图所示.右下角是整个a数组的所有数据的和.这样的程序怎么写呢? 解决方案 解决方案二:唉,自己写for解决方案三:全部循环,简单暴力解决方案四:先看看....

link中如何颠倒一个二维数组?二维数组不支持revses吧?

问题描述 link中如何颠倒一个二维数组?二维数组不支持revses吧? link中如何颠倒一个二维数组?二维数组不支持revses吧? 解决方案 可以用select Enumerable.Range(0 arr.GetLength(1)).Select(x => Enumerable.Range(0 arr.GetLength(1)).Select(y => arr[x y]).Reverse().ToArray()).Reverse().ToArray(); 解决方案二: 长方形的矩阵有上

c++程序-我用vector里resize函数创建了一个二维数组,怎么给它排序?代码如下,哪里错了呢?

问题描述 我用vector里resize函数创建了一个二维数组,怎么给它排序?代码如下,哪里错了呢? #include #include #include #include #include using namespace std; int main() { int n, m; cout << "input the row:n and the column:m" << endl; cin >> n >> m; vector< vec