java JTable中如何添加一行数据!

java JTable中如何添加一行数据!,第1张

可以使用Swing的DefaultTableModel类。

DefaultTableModel model = new DefaultTableModel()// 新建一个默认数据模型

JTablt table = new JTable(model)// 用数据模型创建JTable,JTable会自动监听到数据模型中的数据改变并显示出来

JScrollPane jsp = new JScrollPane(table)// 用列表创建可滚动的Panel,把这个Panel添加到窗口中

Vector row = new Vector()// 数据行向量,使用它的add()添加元素,比如整数、String、Object等,有几行就new几个行向量

Vector data = new Vector()// 数据行向量集,因为列表不止一行,往里面添加数据行向量,添加方法add(row)

Vector names = new Vector()// 列名向量,使用它的add()方法添加列名

model.setDataVector(Vector data, Vector names)// 设置模型中的元素,它会自动显示在列表中

你首先得获取你选择的指定行

(getselectrow()方法),再通过getValueAt(row,column)获取指定行的每一个单元格中的数据,再将你获取的值用insert语句插入到数据库中。PS:数据库交互应该不用我多说的吧~~~

Java程序向数据库中插入数据,代码如下:

//首先创建数据库,(access,oracle,mysql,sqlsever)其中之一,其中access,sqlsever需要配置数据源(odbc)//然后再eclipse中创建类(ConnDb,Test,TestBean)ConnDb功能为连接数据库,查询,插入,删除,修改数据的类,Test为含有main方法的测试类,TestBean为数据表中的字段属性及set,get方法//以下是ConnDb代码:package dbimport java.sql.Connectionimport java.sql.DriverManagerimport java.sql.ResultSetimport java.sql.SQLExceptionimport java.sql.Statementimport java.util.ArrayListpublic class ConnDb {public Connection startConn(Connection conn){ try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") conn = DriverManager.getConnection("jdbc:odbc:数据库","用户名", "密码") } catch (Exception e) { System.out.println("连接数据库时出现错误") } return conn} public ArrayList executeQuery(String sql){ Connection conn = null Statement stmt = null ResultSet rs = null ArrayList list = new ArrayList() try { conn = startConn(conn) stmt = conn.createStatement() rs = stmt.executeQuery(sql)//sql为sql语句例如"select * from 表名",从main方法中传进来,这里用的是ArrayList 类将查询结果存储起来 while(rs.next()){TestBean tb = new TestBean() tb.setTid(rs.getString("tid")) tb.setTname(rs.getString("tname")) tb.setTinfo(rs.getString("tinfo")) list.add(tb) } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace() }finally{ closeConn(rs,stmt,conn) } return list} public void executeUpdate(String sql){ Connection conn = null Statement stmt = null try { conn = startConn(conn) stmt = conn.createStatement() stmt.executeUpdate(sql) } catch (SQLException e) { System.out.println("修改,插入或者删除数据库数据时发生错误!") }finally{ closeConn(stmt,conn) } } public void closeConn(ResultSet rs,Statement stmt,Connection conn){ try { if(rs != null){rs.close() } if(stmt != null){stmt.close() } if(conn != null){conn.close() } } catch (SQLException e) { // TODO Auto-generated catch block System.out.println("关闭数据库的时候发生错误!") } } public void closeConn(Statement stmt,Connection conn){ try { if(stmt != null){stmt.close() } if(conn != null){conn.close() } } catch (SQLException e) { // TODO Auto-generated catch block System.out.println("关闭数据库的时候发生错误!") } }}


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

原文地址: http://outofmemory.cn/bake/11887137.html

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

发表评论

登录后才能评论

评论列表(0条)

保存