//建立数据库连接类
import javasqlConnection;
import javasqlDriverManager;
import javasqlSQLException;
public class Utilities {
public static Connection getConnection() {
Connection con = null;
try {
ClassforNam("oraclejdbcdriverOracleDriver");
con = DriverManagergetConnection ("jdbc:mysql://localhost:8080/auction", "scott", "tiger");//这里是数据库连接主机的地址数据库端口库名,帐户密码
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
return con;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
然后通过这个连接来提取数据库中的数据 实现业务流程
package auctiondaoimpl;
import javasqlConnection;
import javasqlPreparedStatement;
import javasqlResultSet;
import javasqlSQLException;
import javautilArrayList;
import javautilList;
import auctiondaoAuctionUserDao;
import auctionexceptionAuctionException;
import auctionmodelAuctionUser;
import auctionUtilitiesUtilities;
public class AuctionUserDaoJDBCImpl {
public void delete(AuctionUser user) {
Connection con = null;
PreparedStatement ps = null;
try {
con = UtilitiesgetConnection();
consetAutoCommit(false);
ps = conprepareStatement("delete from auction_user where user_id=");
pssetInt(1, usergetId());
psexecute();
concommit();
} catch (Exception e) {
eprintStackTrace();
try {
conrollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1printStackTrace();
}
} finally {
if(ps != null) {
try {
psclose();
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
if(con != null) {
try {
conclose();
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
}
}
}
如果需要将数据库中的文件导入到电子表格,我也没做过,我引用一下别人的东西。如下
创建Excel 文档
示例1将演示如何利用Jakarta POI API 创建Excel 文档。
示例1程序如下:
import orgapachepoihssfusermodelHSSFWorkbook;
import orgapachepoihssfusermodelHSSFSheet;
import orgapachepoihssfusermodelHSSFRow;
import orgapachepoihssfusermodelHSSFCell;
import javaioFileOutputStream;
public class CreateXL {
/ Excel 文件要存放的位置,假定在D盘JTest目录下/
public static String outputFile="D:/JTest/ gongyexls";
public static void main(String argv[]){
try{
// 创建新的Excel 工作簿
HSSFWorkbook workbook = new HSSFWorkbook();
// 在Excel工作簿中建一工作表,其名为缺省值
// 如要新建一名为"效益指标"的工作表,其语句为:
// HSSFSheet sheet = workbookcreateSheet("效益指标");
HSSFSheet sheet = workbookcreateSheet();
// 在索引0的位置创建行(最顶端的行)
HSSFRow row = sheetcreateRow((short)0);
//在索引0的位置创建单元格(左上端)
HSSFCell cell = rowcreateCell((short) 0);
// 定义单元格为字符串类型
cellsetCellType(HSSFCellCELL_TYPE_STRING);
// 在单元格中输入一些内容
cellsetCellValue("增加值");
// 新建一输出文件流
FileOutputStream fOut = new FileOutputStream(outputFile);
// 把相应的Excel 工作簿存盘
workbookwrite(fOut);
fOutflush();
// *** 作结束,关闭文件
fOutclose();
Systemoutprintln("文件生成");
}catch(Exception e) {
Systemoutprintln("已运行 xlCreate() : " + e );
}
}
}
读取Excel文档中的数据
示例2将演示如何读取Excel文档中的数据。假定在D盘JTest目录下有一个文件名为gongyexls的Excel文件。
示例2程序如下:
import orgapachepoihssfusermodelHSSFWorkbook;
import orgapachepoihssfusermodelHSSFSheet;
import orgapachepoihssfusermodelHSSFRow;
import orgapachepoihssfusermodelHSSFCell;
import javaioFileInputStream;
public class ReadXL {
/ Excel文件的存放位置。注意是正斜线/
public static String fileToBeRead="D:/JTest/ gongyexls";
public static void main(String argv[]){
try{
// 创建对Excel工作簿文件的引用
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileToBeRead));
// 创建对工作表的引用。
// 本例是按名引用(让我们假定那张表有着缺省名"Sheet1")
HSSFSheet sheet = workbookgetSheet("Sheet1");
// 也可用getSheetAt(int index)按索引引用,
// 在Excel文档中,第一张工作表的缺省索引是0,
// 其语句为:HSSFSheet sheet = workbookgetSheetAt(0);
// 读取左上端单元
HSSFRow row = sheetgetRow(0);
HSSFCell cell = rowgetCell((short)0);
// 输出单元内容,cellgetStringCellValue()就是取所在单元的值
Systemoutprintln("左上端单元是: " + cellgetStringCellValue());
}catch(Exception e) {
Systemoutprintln("已运行xlRead() : " + e );
}
}
}
设置单元格格式
在这里,我们将只介绍一些和格式设置有关的语句,我们假定workbook就是对一个工作簿的引用。在Java中,第一步要做的就是创建和设置字体和单元格的格式,然后再应用这些格式:
1、创建字体,设置其为红色、粗体:
HSSFFont font = workbookcreateFont();
fontsetColor(HSSFFontCOLOR_RED);
fontsetBoldweight(HSSFFontBOLDWEIGHT_BOLD);
2、创建格式
HSSFCellStyle cellStyle= workbookcreateCellStyle();
cellStylesetFont(font);
3、应用格式
HSSFCell cell = rowcreateCell((short) 0);
cellsetCellStyle(cellStyle);
cellsetCellType(HSSFCellCELL_TYPE_STRING);
cellsetCellValue("标题 ");
看来lz并没有认真看api文档啊,在接口connection中有一个getmetadata()函数,其返回值是接口databasemetadata,里面有各种数据库的配置信息,如是否支持空、最大连接数、用户可以调用的所有存储过程等,其中包括getschemas()-获取所有模式,gettables(),获取所有的表,根据输入的不同参数可以获取所有表或者其中某个模式的表,还包括表的注射等信息,getcolumns()则是获取表的具体字段,这些函数大多是以resultset的形式返回,和一般的jdbc使用差不多,lz慢慢研究研究吧
使用JDBC连接数据库 ,然后,得到某数据库中所有的表的记录总数:
SELECT SUM(table_rows) FROM information_schematables WHERE table_schema='test';
因为我没有转载DB2 所以没有办法帮你写出具体的sql语句,也不能测试我oracle 为例吧
1不管java 连接那个数据库都是一样的
ClassforName(dir);
String url = "";//数据库名,用户名和密码
Connection conn = DriverManagergetConnection(url);
Statement stat = conncreateStatement();
// 执行你想要执行的sql语句下面是查询,修改和删除有点不一样
ResultSet rs = statexecuteQuery(sql);
你可以通过select table_name from user_tables; 这个sql语句查询才出数据库里面所有的表
再通过 select from ALL_TAB_COLS A where lower(ATable_Name) = '表名' 查询出某一个表的相关信息这样是有点繁琐,不过不失为一种解决方法
2 读取数据就更容易了
直接执行select 就可以了
3 帮刚刚读出来的表结构组装成建表语句 create 一下就可以了
4关于数据类型我也不是很清楚,你可以在网上查一查db2有哪些数据类型然后在建表的时候做一下儿转换就可以了
5你说的也就是把刚刚查询出来的数据插入到数据库中insert 就可以了
其实java *** 作数据库很简单的不同于c查询出来后,做适当的组装处理就可以得到你想要的结果
希望对你有帮助
获得某表所有列的信息:
String sql = select from tname;//tname为某一表名
Connection conn = ;
Statement st = conncreateStatement();
ResultSet rs = strs = stexecuteQuery(sql);
ResultSetMetaData rsmd = rsgetMetaData();
int colcount = rsmdgetColumnCount();//取得全部列数
for(int i=0;i<colcount;i++){
String colname = rsmdgetColumnName(i);//取得全部列名
}
以上为某表字段具体查询,如果是查询表的信息,如在mysql服务器上那样的查询结果的话,可以用一下代码:
ResultSetexecuteQuery("show tables")可以的到所有的表信息。
ResultSetexecuteQuery("describe tname")可以得到表的字段信息。//tname为表名
ps :同样适用于jsp。
以上就是关于JAVA语句实现提取数据库中的数据全部的内容,包括:JAVA语句实现提取数据库中的数据、java如何获取数据库中所有表名、如何用Java实现获得MySQL数据库中所有表的记录总数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)