Jtable简单的封装使用

package project02_Order_management.util;

import java.sql.ResultSet;
import java.sql.SQLException;

import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

/**
 * 一个JTable工具类 <br>
 * 进行初始化表数据
 *
 * @author MartinDong
 *
 */
public class TableUtil {
	/**
	 * 声明table控件
	 */
	private static JTable jTable;
	/**
	 * 初始化缺省的数据模型
	 */
	private static DefaultTableModel dtm;

	/**
	 * 初始化JTable控件
	 *
	 * @param rst
	 *            传入的结果集
	 * @param columnNames
	 *            传入的表格的表头
	 * @return 返回jtable控件实体
	 */
	public static JTable initTable(ResultSet rst, String[] columnNames) {

		dtm = new DefaultTableModel(initDate(rst, columnNames), columnNames) {
			public boolean isCellEditable(int row, int column) {
				return false;
			}
		};
		jTable = new JTable(dtm);
		return jTable;
	}

	/**
	 * 初始化缺省的数据模型
	 *
	 * @param rst
	 *            传入的结果集
	 * @param columnNames
	 *            传入的表格的表头
	 * @return 返回二维数据
	 */
	public static Object[][] initDate(ResultSet rst, String[] columnNames) {
		Object[][] rowDate = null;
		if (rst != null) {
			// 移动光标到最后一行的ResultSet对象。为了获取所有的数据行
			try {
				rst.last();
				rowDate = new Object[rst.getRow()][columnNames.length];
				int index = 0;
				// 移到第一条数据韦德是后面的遍历
				rst.first();
				// 由于需要遍历从第一个,所以先从第一条记录向上移动一行数据
				rst.previous();
				while (rst.next()) {
					for (int j = 0; j < columnNames.length; j++) {
						rowDate[index][j] = rst.getObject(j + 1);
					}
					index++;
				}
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return rowDate;
	}
}

时间: 2024-11-10 14:04:29

Jtable简单的封装使用的相关文章

html --- ajax --- javascript --- 简单的封装

Ajax的简单封装 Ajax的全称是AsynchronousJavaScriptAndXML 如有疑问请参考:http://zh.wikipedia.org/zh-cn/AJAX 以及传智播客的视频教程:http://java.itcast.cn/news/8308d118/740a/4dcd/8dbf/c73d2fe5bc60.shtml 其实已经有好多框架对它进行了封装,但是还是有好多时候用到自己封装的 透露一下,本人是宇多田光的听众之一哦! 封装后的代码如下: 文件路径:\web\Ajax

最新 AFNetworking 3.0 简单实用封装

AFNetworking 3.0 的到来使我们开发者又方便了许多,话不多说,直接上代码. 1.首先 引入框架AFNetworking框架 GitHub下载地址:https://github.com/AFNetworking/AFNetworking AFNetworking官网地址:http://afnetworking.com 2.导入AFNetworking 支持框架 #import<MobileCoreServices/MobileCoreServices.h> #import<S

对bootstrap modal的简单扩展封装

对bootstrap modal的简单扩展封装 参考自:http://www.muzilei.com/archives/677   注:原文不支持bootstrap新版本,并且居中等存在问题 此段时间一直在学习bootstrap,主要是用于做后台,一直习惯用easyui,ui,jgrid前端框架,以至于并不习惯bootstrap的风格.近来考虑到easyui性能不太好,就用了bootstrap,先说下我所了解的bootstrap. 1.外国的框架用于显示中文看着总是不妥. 2.默认的样式觉得有些

一个用python简单的封装了aria2的jsonrpc中adduri的脚本

aria2是一个十分牛逼的下载神器,有时候项目需要一个很牛逼的下载中间件的话,aria2是一个不错的选择.其中支持jsonrpc和websocket的特性尤其诱人.但是python用起来还是有点不爽,所以简单封装一下aria2的jsonrpc. 所以,用python简单的封装了aria2的jsonrpc中adduri的脚本. 使用起来非常简单,仅需要三行代码. from pyaria2 import Jsonrpc jsonrpc = Jsonrpc('localhost', 6800) res

React+Echarts简单的封装套路

今天我们来介绍一下React中,对Echarts的一个简单的封装. 首先在我们的React项目中,想使用Echart包,首先需要先安装它,安装代码如下,任选一个就可以 cnpm install echarts --save npm install echarts --save yarn add echarts --save 安装好之后,新建一个JS文件,命名test.js,首先导入的是各种依赖(总代码在文章结尾) import React from 'react'; import echarts

SSH 项目中 用Hibernate底层 简单的封装DAO层

废话不多少了,主要是使用hibernate的查询方法,自己封装了DAO层,供service来方便使用. 首先:必须要继承的 public class CommonDao extends HibernateDaoSupport 紧接着是要注入必须的数据源: @Resource private SessionFactory sessionFactory; @PostConstruct public void initSessionFactory() { super.setSessionFactory

[分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例)

踏雁寻花 发表于 2015-8-23 23:31:28 https://www.itsk.com/thread-355923-1-4.html 学会封装,只需要掌握十个步骤.五分钟包你学会,不会不交学费~ 适合人群: 1.会装系统 2.了解PE的使用 3.对注册表有初步的了解 所需工具: 1.Windows系统镜像 2.PE(可以放到U盘,如果使用虚拟机封装系统,直接下载PE镜像即可) 3.磁盘清理工具(如Windows7瘦身工具.自由天空系统清理&减肥程序.注册表减肥工具等) 4.驱动包(如万

Autofac Container 的简单的封装重构

为了使用方便,对Autofac container的简单封装,记录如下,备以后用或分享给大家,欢迎讨论! 1 using Autofac; 2 using Autofac.Core.Lifetime; 3 using Autofac.Integration.Mvc; 4 5 public static class ContainerManager 6 { 7 private static IContainer _container; 8 9 public static void SetConta

iOS简单runtime封装fmdb的使用

学习了iOS有一段时间了,使用到fmdb操作数据库的时候感觉有很多重复性的工作要做,查询数据库时面向对象性感觉很差,一个查询只能针对一个Model,经过了解发现了runtime的使用可以解决这一问题. 使用fmdb的时候相信有过这样的经历查询某个model时: NSString *sql = @"select * from myFmdb"; FMResultSet *set = [self.database executeQuery:sql]; while (set.next) { i