有关Jtable的问题(旧帖新发!!!) 如何实现把数据库中的数据先显示在Jtable中,然后添加一个空行,可以输入信息,然后保存到数据库中啊???求助给位了,目前本人只能实现只从数据库读取,或是把自己录入的信息保存到数据库中,不知道该如何结合起来啊?谢谢各位高人先!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【juchao】截止到2008-06-27 09:28:41的历史汇总数据(不包括此帖):发帖数:36 发帖分:2084 结贴数:29 结贴分:1464 未结数:7 未结分:620 结贴率:80.56 % 结分率:70.25 % 楼主加油 其实这种问题的核心就是 TableModelJTable将数据放在TableModel中。TableModel用Vector来放数据(也可以自定义TableModel用类似Vector之类的容器)。你要做的就是把从数据库中取出的数据放在TableModel中的Vector中,并将自己后面加入的数据写回数据库。 呵呵,这个问题的实质跟JTable没有任何关系了,问题的本质在于怎样向数据库回写数据,楼主不妨这样考虑一下,将你JTable中的数据构建成一个JavaBean,也就是说每一行是一个Bean实例,例如叫做TableDataBean,其对应查询出来的数据,每列对应其字段——说穿了就是一个O/R Mapping而已,然后给这个Bean加个状态字段dirty,对于你新增的行,这个字段默认是TRUE,意思是这条数据是脏数据,在内存中没有回写的,你点保存按钮时,取到所有Bean并判断哪些是脏数据,将这些脏数据一并调用insert插入数据库,当然你还要对这个bean加上前后台校验,保证if nullalbe,primary key consraint等一系列事情,建议你还是做一个validation类专门去做校验,这就是后话了。实际上这就是典型的OR mapping机制, TableModel用Vector来放数据=========================因为最开始我们用Vector存放数据,现在想改成ArrayList存放结果修改量是相当的大,数量级估计在1E4以上郁闷... Table_Model model = new Table_Model(20);JTable table = new JTable(model);TableColumnModel tcm = table.getColumnModel();tcm.getColumn(0).setPreferredWidth(50);tcm.getColumn(1).setPreferredWidth(50);tcm.getColumn(2).setPreferredWidth(100);我是这样定义JTable的 ,该如何来获取数据库中的数据啊??? java循环的小问题,在线等 如何在抛出异常的函数中加入finally? 关于java 中scanner的使用 如何获得网卡信息 interface的疑惑! 如果IE不能正常地打开Applet ,那么该怎么办? 请教一下JPanel内容改变内容后不能刷新的问题。 请问java里有类似c中isdigit,isalpha等函数吗? 我在jbuilder6中用這段程序為什麼退不出來? 尝试开发一个程序: 定义一个求圆面积的方法,其中以圆半径作为参数,将计算结果保留5位小数。 菜鸟问题 去jtable中从数据库获取数据后在界面显示出的省略号???????
楼主【juchao】截止到2008-06-27 09:28:41的历史汇总数据(不包括此帖):
发帖数:36 发帖分:2084
结贴数:29 结贴分:1464
未结数:7 未结分:620
结贴率:80.56 % 结分率:70.25 %
楼主加油
JTable将数据放在TableModel中。TableModel用Vector来放数据(也可以自定义TableModel用类似Vector之类的容器)。你要做的就是把从数据库中取出的数据放在TableModel中的Vector中,并将自己后面加入的数据写回数据库。
=========================
因为最开始我们用Vector存放数据,现在想改成ArrayList存放
结果修改量是相当的大,数量级估计在1E4以上
郁闷...
JTable table = new JTable(model);
TableColumnModel tcm = table.getColumnModel();
tcm.getColumn(0).setPreferredWidth(50);
tcm.getColumn(1).setPreferredWidth(50);
tcm.getColumn(2).setPreferredWidth(100);
我是这样定义JTable的 ,该如何来获取数据库中的数据啊???