1.在项目src目录下创建jdbc.properties文件
内容:
dbName=JMJL
className=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@168.9.202.49:1521:test
user=TEST
password=TEST
2.写一个jdbc处理通用的简单处理工具类JdbcByPropertiesUtil
参照《JDBC获取连接、关闭连接的简单工具类2》,
地址:http://blog.csdn.net/hu_shengyang/article/details/7861187
3. 下面就是一段获取数据库元数据的示例代码:
package com.adam.test.entity;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import com.adam.dev.utils.JdbcByPropertiesUtil;
public class TestDatabaseMetaData {
private JdbcByPropertiesUtil jbpu = JdbcByPropertiesUtil.getInstance();
public JdbcByPropertiesUtil getJbpu() {
return jbpu;
}
public void setJbpu(JdbcByPropertiesUtil jbpu){
this.jbpu = jbpu;
}
public Properties getProperties(){
Properties pros = JdbcByPropertiesUtil.readPropertiesFile();
return pros;
}
/**
* 读取配置文件jdbc.properties中的数据库名称
* @return
* @throws Exception
*/
public String getDataSourceName()throws Exception{
Properties pros = this.getProperties();
String dbName = pros.get("dbName").toString();
return dbName;
}
/**
* 获取数据库中的表名称与视图名称
* @return
*/
public List getTablesAndViews()throws Exception{
Connection conn = jbpu.getConnection();
ResultSet rs = null;
List list = new ArrayList();
try {
Properties pros = this.getProperties();
String schema = pros.get("user").toString();
DatabaseMetaData metaData = conn.getMetaData();
rs = metaData.getTables(null, schema, null, new String[]{"TABLE","VIEW"});
while(rs.next()){
String tableName = rs.getString("TABLE_NAME");
list.add(tableName);
}
} catch (SQLException e) {
e.printStackTrace();
} finally{
jbpu.close(rs, null, conn);
}
return list;
}
/**
* 利用表名和数据库用户名查询出该表对应的字段类型
* @param tableName 表名
* @return
* @throws Exception
*/
public String generateBean()throws Exception{
Connection conn = jbpu.getConnection();
ResultSet rs = null;
String strJavaBean = "";
String tableName = this.getDataSourceName();
try{
Properties pros = this.getProperties();
String schema = pros.get("user").toString();
DatabaseMetaData metaData = conn.getMetaData();
rs = metaData.getColumns(null, schema, tableName, null);
Map map = new HashMap();
while(rs.next()){
String columnName = rs.getString("COLUMN_NAME");//列名
String dataType = rs.getString("DATA_TYPE");//字段数据类型(对应java.sql.Types中的常量)
String typeName = rs.getString("TYPE_NAME");//字段类型名称(例如:VACHAR2)
map.put(columnName, dataType+":"+typeName);
}
// 其它生成javaBean的相关操作
}catch(Exception e){
e.printStackTrace();
}finally{
jbpu.close(rs, null, conn);
}
return strJavaBean;
}
}
这只是一些简单常用的jdbc元数据的获取方式,如果需要更加深入请参考java api。
分享到:
相关推荐
通过调用`Connection`对象的`getMetaData()`方法,我们可以获取到`DatabaseMetaData`实例,从而获取到关于数据库的各种元数据,例如表、视图、列、索引等的详细信息。 2. **元数据的作用** 元数据是描述数据的数据...
DatabaseMetaData和ResultSetMetaData就是两个常用的获取数据库元数据相关信息的接口,本文只讲解DatabaseMetaData接口获取元数据的方法。 文章地址:http://blog.csdn.net/chen_zw/article/details/18816599
项目分为核心查询模块“database-metadata-core”和数据展示模块“database-metadata-view”,其中核心模块采用纯JDBC方式,通过java.sql.DatabaseMetaData对象获取数据库元数据信息,不依赖任何外部jar包,适用于...
使用`Connection`对象的方法`getMetaData()`获取`DatabaseMetaData`对象,它是用于访问数据库元数据的对象。 ```java DatabaseMetaData dbmd = connection.getMetaData(); ``` 3. **获取表列表** 使用`...
在Java编程中,当我们需要与Oracle数据库交互时,`java.sql.DatabaseMetaData`接口提供了一种方式来获取关于数据库的各种元数据信息。这篇文章将详细介绍如何利用`DatabaseMetaData`查询Oracle数据库的所有表。 ...
在Oracle数据库中,这些信息存储在数据字典中,可以通过数据库元数据API来访问和查询。 在Java编程中,我们可以使用JDBC(Java Database Connectivity)的`DatabaseMetaData`接口来获取数据库的元数据。这个接口...
5. **数据库元数据** 在数据库操作中,JDBC(Java Database Connectivity)提供了`DatabaseMetaData`接口,允许查询数据库的元信息,如表结构、列信息、索引、视图等。通过`Connection`对象的`getMetaData()`方法...
通过调用Connection对象的`getMetaData()`方法,我们可以得到一个DatabaseMetaData对象,它是数据库元数据的接口。 ```java DatabaseMetaData metaData = conn.getMetaData(); ``` 3. **查询表信息**: - `...
这篇博客"怎样用JDBC查看数据库的详细信息"可能是关于如何通过JDBC接口查询和获取数据库中的数据,以及如何获取数据库的元数据。 首先,我们需要了解JDBC的基本步骤: 1. 加载驱动:在Java程序中,我们通常使用`...
连接建立后,可以使用`DatabaseMetaData`接口获取数据库的各种元数据。这个接口提供了大量方法,如`getDatabaseProductName()`获取数据库产品名称,`getDatabaseProductVersion()`获取数据库版本信息,`getUserName...
`codesc.net`可能是包含示例代码的资源,为了更好地理解和应用上述知识,建议下载并研究这些代码,以便于实际操作中更熟练地处理数据库元数据。在编写代码时,记得处理可能的异常,并根据实际情况调整方法的参数,以...
8. **DatabaseMetaData**:提供关于数据库及其特性、支持的数据类型、表、视图等元数据的信息。 9. **Exception Handling**:在处理数据库操作时,可能会遇到如`SQLException`这样的异常,需要适当的捕获和处理。 ...
在Java Web开发中,数据库元数据操作是一项重要的技能,它允许程序员获取关于数据库的各种信息,例如数据库版本、驱动信息等。本案例主要讲解如何使用Java的`DatabaseMetaData`类来获取数据库的元数据,并展示了一个...
8. **元数据增强**:提供更丰富的数据库元数据信息,如`DatabaseMetaData`接口,可用于获取表结构、列信息等。 9. **性能优化**:引入了Statement的`executeUpdate(String sql, int autoGeneratedKeys)`方法,可以...
2. **元数据获取**: - **元数据**: 元数据是关于数据的数据,如数据库的结构、表的定义、字段信息、索引详情等。在Java中,可以使用JDBC(Java Database Connectivity)API来获取元数据。例如,`Connection....
包括CallableStatement用于调用存储过程,ResultSetMetaData获取列信息,DatabaseMetaData获取数据库元数据,以及RowSet接口的离线数据处理能力。 9. **JDBC与ORM框架的关系** ORM(Object-Relational Mapping)...
7. **数据库元数据**:通过`DatabaseMetaData`获取数据库的结构和属性信息。 《Java数据库接口JDBC入门基础讲座》可能是针对初学者的教程,着重于介绍JDBC的基础概念和基本操作,包括如何设置数据库连接参数、执行...
- 其他辅助接口如SQLException处理异常,DatabaseMetaData获取数据库元数据等。 【JDBC访问MS SQL Server步骤】 1. 加载驱动:使用DriverManager的registerDriver()方法加载对应MS SQL Server的JDBC驱动。 2. 建立...
在`GetDataBaseMessage.java`这个文件中,你可能会看到类似上述的实现,通过读取数据库元数据获取关于SQL支持的信息。而`Java.jpg`可能是用来辅助理解的示例图或数据库连接配置的截图。 总之,Java中的JDBC API提供...
**元数据存取器**在JDBC中是用于获取关于数据库结构信息的接口,比如`DatabaseMetaData`,它提供了大量方法来获取数据库的详细信息。这些信息包括但不限于数据库产品名称、版本、表、视图、索引等。 解决这个问题的...