第1个回答 2009-08-15
这是我曾经做过的项目里面部分DB操作代码,看是否对你有帮助:
/** 数据库驱动 */
public String DB_driver = "com.mysql.jdbc.Driver";
/** 数据库位置 */
public String DB_URL = "jdbc:mysql://localhost:3306/";
/** 数据库名字 */
public String DB_name = "information_schema"
/** 数据库用户 */
public String DB_user = "root";
/** 数据库密码 */
public String DB_pswd = "123456";
/**
*初始化驱动器
*/
protected void initDriver() {
try {
Class.forName(DBDriverStr); //装载数据库驱动
Helper.logger.fine("数据库 驱动 加载成功");
} catch (ClassNotFoundException e) { //驱动加载失败
e.printStackTrace();
Helper.logger.severe("数据库驱动加载失败:\n" + e.toString());
}
}
/**
*新建一个数据库连接
*本方法不对外开发,只为本类服务
* @return Connection 一个数据库连接实例
*/
protected Connection getConnection() {
Connection connection = null;
try {
//以 DBUserNameStr,DBUserPswdStr 身份获取与数据库 DBURLStr 连接
connection =
DriverManager.getConnection(DBURLStr, DBUserNameStr, DBUserPswdStr);
//设置事务为非自动递交, 事务递交由上层调用完成
connection.setAutoCommit(false);
} catch (SQLException e) { //数据源查询失败
e.printStackTrace();
Helper.logger.severe("数据源加载失败:" + e.toString());
}
return connection;
}
获取到了与数据库的连接以后就很好办事了,只要做一些 SQL 查询了,借鉴一下一楼的代码:
//tables为 information_schema 数据库中记录表格信息的表
String sql = select * from tables";
Connection conn = getConnection();
Statement st = conn.createStatement();
ResultSet rs = st.rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int colcount = rsmd.getColumnCount();//取得全部列数
第2个回答 2009-08-17
用元数据api,也在jdbc的包下面
===============================
视图如法炮制,java才不管你视不视图,视图不也是要返回结果集的吗?