- 浏览: 55592 次
-
文章分类
- 全部博客 (87)
- 模糊查询 (1)
- 树查询 (1)
- 汉字文件编码 (1)
- 图片文件写入网页 (1)
- 网络爬虫 (1)
- 正则表达式实现IP排序 (1)
- javax读取xml (1)
- javax增删改查xml (1)
- java反射 (1)
- dom4j操作XML文件 (1)
- descode函数 (1)
- 用户在线管理 (1)
- oracle统计函数统计各个年份入职的人数 (1)
- js解绑时间和自定义时间 (1)
- extjs 树控件开发 (1)
- java导出excel (1)
- java导入excel... (1)
- 行转列 (1)
- 连接池 (1)
- oracle plsql (0)
- oracle (1)
- oracle存储过程 (5)
- plsql编程 (5)
- oracle触发器 (2)
- oracle知识 (1)
- web技术 (22)
- servle+jspt文件下载 (0)
- wen技术 (0)
- java连接池 (1)
- java基础 (10)
- weblogic (3)
- jstl标签库的使用 实例 (1)
- css技术 (1)
- 存储过程 (1)
- sql统计 (1)
- webservice技术 (5)
- spring框架总结 (1)
- mongoDB (1)
- 64位oracle安装plsql (1)
- mongoDB分组统计 (1)
- ssh 无密码登录 (0)
- mysql (1)
- hadoop (0)
- lucene (1)
最新评论
package com.cgm.util;
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.jsp.tagext.TryCatchFinally;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.junit.Test;
/**
* 元数据分析
* @author Administrator
*
*/
public class TestMetaData {
/*
元数据,是指仅拥有Connection一个对象的情况下,分析得出数据库的所有信息。
DataBaseMetadate - 说明数据库的信息。
ResultSetMetadate - 说明数据结果的类型信息的。核心。
如果要进行元数据分析,就必须要使用statement,preparedstatement.
*/
@Test
public void testExport(){
Connection conn=null;
try {
conn=Conutils.getCon();
DatabaseMetaData metaData=conn.getMetaData();
String dbName = metaData.getDatabaseProductName();//数据库名称
System.err.println(dbName);
System.err.println("数据库中有多少表:");
ResultSet rs2 = metaData.getTables(null,null,null,new String[]{"TABLE"});
List<String> tables = new ArrayList<String>();
//声明book
HSSFWorkbook book = new HSSFWorkbook();
Statement st = conn.createStatement();
while(rs2.next()){
String tableName = rs2.getString("TABLE_NAME");
tables.add(tableName);
}
for(String tableName:tables){
HSSFSheet sheet = book.createSheet(tableName);
//声明sql
String sql = "select * from "+dbName+"."+tableName;
//查询数据
rs2 = st.executeQuery(sql);
//根据查询的结果,分析结果集的元数据
ResultSetMetaData rsmd = rs2.getMetaData();
//获取这个查询有多少行
int cols = rsmd.getColumnCount();
//获取所有列名
//创建第一行
HSSFRow row = sheet.createRow(0);
for(int i=0;i<cols;i++){
String colName = rsmd.getColumnName(i+1);
//创建一个新的列
HSSFCell cell = row.createCell(i);
//写入列名
cell.setCellValue(colName);
}
//遍历数据
int index = 1;
while(rs2.next()){
row = sheet.createRow(index++);
//声明列
for(int i=0;i<cols;i++){
String val = rs2.getString(i+1);
//声明列
HSSFCell cel = row.createCell(i);
//放数据
cel.setCellValue(val);
}
}
}
conn.close();
book.write(new FileOutputStream("d:/a/"+dbName+".xls"));
/**
while(rs2.next()){
String tableName = rs2.getString("TABLE_NAME");
System.err.println(tableName);
} */
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
conn.setAutoCommit(true);
conn.close(); //close变成了还链接
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.jsp.tagext.TryCatchFinally;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.junit.Test;
/**
* 元数据分析
* @author Administrator
*
*/
public class TestMetaData {
/*
元数据,是指仅拥有Connection一个对象的情况下,分析得出数据库的所有信息。
DataBaseMetadate - 说明数据库的信息。
ResultSetMetadate - 说明数据结果的类型信息的。核心。
如果要进行元数据分析,就必须要使用statement,preparedstatement.
*/
@Test
public void testExport(){
Connection conn=null;
try {
conn=Conutils.getCon();
DatabaseMetaData metaData=conn.getMetaData();
String dbName = metaData.getDatabaseProductName();//数据库名称
System.err.println(dbName);
System.err.println("数据库中有多少表:");
ResultSet rs2 = metaData.getTables(null,null,null,new String[]{"TABLE"});
List<String> tables = new ArrayList<String>();
//声明book
HSSFWorkbook book = new HSSFWorkbook();
Statement st = conn.createStatement();
while(rs2.next()){
String tableName = rs2.getString("TABLE_NAME");
tables.add(tableName);
}
for(String tableName:tables){
HSSFSheet sheet = book.createSheet(tableName);
//声明sql
String sql = "select * from "+dbName+"."+tableName;
//查询数据
rs2 = st.executeQuery(sql);
//根据查询的结果,分析结果集的元数据
ResultSetMetaData rsmd = rs2.getMetaData();
//获取这个查询有多少行
int cols = rsmd.getColumnCount();
//获取所有列名
//创建第一行
HSSFRow row = sheet.createRow(0);
for(int i=0;i<cols;i++){
String colName = rsmd.getColumnName(i+1);
//创建一个新的列
HSSFCell cell = row.createCell(i);
//写入列名
cell.setCellValue(colName);
}
//遍历数据
int index = 1;
while(rs2.next()){
row = sheet.createRow(index++);
//声明列
for(int i=0;i<cols;i++){
String val = rs2.getString(i+1);
//声明列
HSSFCell cel = row.createCell(i);
//放数据
cel.setCellValue(val);
}
}
}
conn.close();
book.write(new FileOutputStream("d:/a/"+dbName+".xls"));
/**
while(rs2.next()){
String tableName = rs2.getString("TABLE_NAME");
System.err.println(tableName);
} */
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
conn.setAutoCommit(true);
conn.close(); //close变成了还链接
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}
发表评论
-
往泛型的集合里添加数据
2014-07-17 23:26 781package com.cgm.callback; impo ... -
初识回调函数
2014-07-17 23:14 580package com.cgm.callback; publ ... -
threadlocal的基本实现
2014-07-13 13:44 459package com.cgm.threadlocal; i ... -
java数据库连接池的优化动态代理多线程线程通讯
2014-07-12 19:20 5671.数据可连接配置文件 jdbc配置文件 driver:ora ... -
java数据库连接池通过动态代理和线程通讯实现
2014-07-09 23:52 4571.代理类 package com.cgm.threadpo ... -
list代理对象测试
2014-07-09 21:30 380package com.cgm.invokelist; im ... -
java动态代理的基本实现
2014-07-08 23:45 3631 目标类接口 package com.cgm.invokec ... -
关于jvm的三个类加载器以及jar包的生成
2014-07-08 22:57 632package com.cgm.invokeclass; i ... -
java最简单的反射实例
2014-07-08 21:31 529package com.cgm.invokeclass; ...
相关推荐
标题中的"DELPHI 从EXCEL导入到数据库"是一个关于使用Delphi编程语言将Excel电子表格中的数据导入到数据库的应用实例。这个话题涉及到多个IT领域的知识点,包括Delphi编程、Excel文件处理以及数据库交互。 Delphi是...
为了解决这个问题,我们可以考虑实现一个通用转换类,例如使用Java中的反射机制来动态读取Excel文件的元数据,并根据元数据生成对应的SQL语句来将Excel数据导入到数据库中。 Excel读取数据导入DB2数据库需要使用POI...
这个工具可以方便地将数据库中的数据导出为Excel格式,同时也可以将Excel文件中的数据导入到数据库中。这在数据处理、数据分析或系统迁移等场景中非常实用。 描述进一步明确了这是一个Java项目,包含了执行数据库到...
在这个Excel文件中,你可以看到每个表的名称、字段名、数据类型、长度、是否为主键、外键信息以及其他元数据。这使得用户可以方便地查看和编辑这些信息,或者将它们导入到其他数据处理工具中。 总结来说,"Oracle...
通过将表结构导出到Excel,我们可以更直观地查看这些信息,比如用不同的颜色或样式高亮显示主键字段,或者在Excel中使用公式和图表进行进一步的数据分析。 "导出"操作通常涉及SQL查询,这些查询从数据库中提取所需...
1. 准备数据:在Excel中编辑文章信息,确保所有必填字段完整。 2. 下载并安装插件:从可靠来源获取织梦DedeCMS批量导入Excel插件,并按照官方文档或说明安装到你的DedeCMS系统中。 3. 设置权限:确保插件具有读取和...
2. **数据转换**:将Excel中的数据转换为Java对象,这通常是一个自定义的实体类,比如`Student`,包含对应Excel列名的属性。创建一个`List<Student>`来存储所有行的数据。 3. **SSM整合**:在SSM配置中,确保...
数据库内容导入到Excel是数据处理中的常见操作,特别是在数据分析、报表生成或数据迁移时。这里我们关注的是使用Java的一个库——jxl.jar,它允许我们方便地读取和写入Excel文件。jxl库是一个非常实用的工具,尤其...
在Java编程环境中,将Oracle数据库的表结构导出到Excel是一种常见的需求,特别是在数据库管理和数据分析时。这个场景可以通过两个核心类来实现:`TableStructureToExcel.java`和`ConnectionOracle.java`。这两个类...
1. **数据导入导出**: 这是系统与用户间交互的重要方式,允许用户通过Excel这样的工具来编辑和管理数据,然后将这些更改同步到数据库中,或者反之,将数据库中的数据导出到Excel以便分析或报告。这种方式提高了工作...
在本文中,VB被用来实现Excel数据导入SQL Server数据库的功能,这是数据迁移和整合过程中的常见需求。以下是对三种方法的详细解释: 1. OpenRowSet方法: OpenRowSet方法允许直接从数据源(例如Excel文件)创建一...
1. **Excel导入导出**:工具的核心功能,支持读取Excel文件到程序中处理,以及将处理结果写回Excel。 2. **通用**:意味着该工具对多种Excel格式(如XLS、XLSX)兼容,且适用于多种业务场景。 3. **简明通用**:设计...
在VB(Visual Basic)编程环境中,常常需要处理与Excel和SQL Server的数据交互,例如将Excel数据导入到SQL Server数据库中。这个"vb excel导入sql"的项目就是一个典型的例子,它展示了如何利用VB来实现这样的功能。...
可以使用 TableInputMeta 和 TableOutputMeta 对象来描述输入和输出表的元数据。然后,使用 TransHopMeta 对象来描述转换步骤之间的关系。 使用 Kettle 的 API 进行数据转换的优点是可以高效地处理大规模数据,并且...
Excel文件(.xlsx格式)本质上是基于Open XML标准的XML文档集合,包含多个工作表(子表)和元数据。工作表中的数据以行和列的形式存储,每个单元格可以包含文本、数字、日期、公式等类型的数据。 导入Excel文件通常...
通过结合SQL进行复杂查询,JSON实现数据交换,CSV进行数据导入导出,以及XLSX提供直观的表格展示,这个数据集提供了一整套的工具,满足了从数据管理到数据分析再到结果展示的全方位需求。利用这些文件,我们可以深入...
在Java编程领域,Excel数据处理是一项常见的任务,特别是在数据分析、报表生成或数据交换等场景中。本主题聚焦于一个名为"Excel数据导入、导出工具类"的源码,它利用了Java的反射机制来实现高效且灵活的功能。以下是...
首先,Excel导入动态校验是指在将Excel数据导入到系统或数据库时,对数据进行实时检查的过程。这一步骤确保了导入的数据符合预设的规则和格式,从而防止错误数据的引入。动态校验的关键在于灵活性,它可以适应不同的...
导入的数据库数据中可能就包含了这些流程定义的元数据,以便系统能够识别并执行相应的流程。 任务实例(Task Instance)是流程执行过程中的具体工作单元,它们对应于流程图中的各个任务节点。每个任务实例都包含了...
从获取所有表的名称和类型到获取字段信息,这些实例展示了如何通过不同的技术获取数据库的元数据。了解数据库的结构对于开发和维护应用程序而言非常关键。 #### 四、数据导入和导出 将数据库记录导入Excel工作表是...