WebLogic教程
来源:百度文库 编辑:神马文学网 时间:2024/07/04 21:27:44
WebLogic教程
:在WebLogic Server中集成Apache Poi
--Apache Jakarta POI项目提供了访问和生成Excel文档的组件
Apache Jakarta POI项目提供了用于访问和生成Excel文档的组件。POI HSSF API用于生成Excel Workbook以及将Excel电子表格添加到workbook。Excel电子表格由行和单元格组成。电子表格的页面布局和字体也使用POI HSSF API进行设置。
通常要求将数据库表呈现在Excel电子表格中。同样,开发人员的需求也可以保存到数据库表中的Excel电子表格中。Apache POI HSSF项目旨在提供一个创建Excel电子表格的API。使用POI HSSF项目生成的Excel电子表格中的数据可以是XML文档中的静态数据,或者是从一个数据库中动态检索到的数据。此外,Excel文档也可以被转换为XML文档或者保存在数据库中。在本教程中,我们将讨论在WebLogic Server中从一个MySQL数据库表创建Excel电子表格的步骤,随后将该Excel电子表格保存在一个数据库表中。
初步设置
org.apache.poi.hssf.usermodel包提供POI HSSF项目的实现。要生成或解析Excel电子表格,需要在类路径中设置org.apache.poi.hssf.usermodel包类。下载Apache POI库poi-bin-2.5.1-final-20040804.zip文件,将该zip文件解压缩所到一个安装目录(http://jakarta.apache.org/poi/)。安装WebLogic Server 8.1。下载MySQL数据库(www.mysql.com)。解压缩MySQL zip文件mysql-4.0.25-win32.zip到一个目录下。安装MySQL数据库。下载MySQL Connector/J JDBC驱动程序(www.mysql.com/products/connector/j/)。解压缩MySQL zip文件mysql-connector-java-3.1.10.zip到一个目录下。添加MySQL JDBC驱动程序jar文件mysql-connector-java-3.1.10-bin.jar到\samples\domains\examples\startExamplesServer脚本CLASSPATH变量。
使用下面的DOS命令登录到MySQL数据库:
>mysql
使用下面的命令访问示例数据库测试:
mysql>use test
在MySQL数据库中创建一个示例数据库表,将在此生成Excel电子表格。清单1展示了创建示例表Catalog的SQL脚本。
清单1:Catalog.sql
CREATE TABLE Catalog(CatlogId VARCHAR(25)PRIMARY KEY, Journal VARCHAR(25), Section VARCHAR(25),Edition VARCHAR(25), Title Varchar(125), Author Varchar(25));INSERT INTO Catalog VALUES('catalog1', 'dev2dev','WebLogic Platform 8.1','Oct 2004', 'BEA WebLogic Platform 8.1 SP3 Evaluation Guide','dev2dev');INSERT INTO Catalog VALUES('catalog2', 'dev2dev','WebLogic Server','Feb 2005', 'Application Architecture for Applications Built onBEA WebLogic Platform 8.1', 'Bob Hensle');INSERT INTO Catalog VALUES('catalog3', 'dev2dev','WebLogic Integration','March 2005', 'The BEA WebLogic Platform and Host Integration','Tom Bice');
接下来,我们将向WebLogic Server Classpath添加Apache POI .jar文件,并在WebLogic Server中创建一个JDBC数据源来检索用于Excel电子表格的数据。
添加poi-2.5.1-final-20040804.jar文件到\samples\domains\examples\startExamplesServer脚本中的CLASSPATH变量中。是安装WebLogicServices>JDBC>ConnectionServices>JDBC>DataSources节点,并选择Configure a new JDBCTxDataSource。在Configure the data source框中指定数据源名和JNDI名——例如,MySqlDS。在Connect to connection pool框中选择先前使用MySQL数据库配置的连接池。在Target the datasource框中选择examplesServer。这样就使用MySQL数据库配置了一个数据源。
使用Apache POI生成Excel文档
在这一节中,我们将从示例数据库表生成Excel电子表格。首先,创建一个生成Excel电子表格的JSP应用程序。
在JSP中,将从一个MySQL数据库表创建Excel电子表格。使用Apache POI HSSF API来生成Excel电子表格。Apache POI HSSF包中含有用于Excel电子表格的不同组件的类。表1列出了Apache POI HSSF包中一些常用的类:
首先,导入Apache POI HSSF包:
<%@ page import="org.apache.poi.hssf.usermodel.*, java.sql.*,java.io.*,javax.naming.InitialContext"%>创建一个Excel workbook:
HSSFWorkbook wb=new HSSFWorkbook();
接下来,创建一个Excel电子表格:
HSSFSheet sheet1=wb.createSheet("sheet1");
该电子表格的数据是从MySQL数据库表检索得到的。从数据库获得JDBC连接。JDBC连接是使用datasource JNDI MySqlDS获得的。
InitialContext initialContext = new InitialContext();javax.sql.DataSource ds = (javax.sql.DataSource)initialContext.lookup("MySqlDS");java.sql.Connection conn = ds.getConnection();
创建一个java.sql.Statement,并从示例表Catalog获得结果集:
Statement stmt=conn.createStatement();ResultSet resultSet=stmt.executeQuery("Select * from Catalog");
为Excel电子表格创建一个标题行。Excel电子表格中的行从“0”开始。
HSSFRow row=sheet1.createRow(0);
对应于表的列设置标题行单元格的值。行单元格也是从“0”开始。例如,行中第一个单元格的值被使用setCellValue方法设置为CatalogId。
row.createCell((short)0).setCellValue("CatalogId");
要向电子表格添加行,迭代结果集并为每个表格行添加一行。从ResultSet检索列值,并在行单元格中设置这些值。
for (int i=1;resultSet.next(); i++){row=sheet1.createRow(i);row.createCell((short)0).setCellValue(resultSet.getString(1));row.createCell((short)1).setCellValue(resultSet.getString(2));row.createCell((short)2).setCellValue(resultSet.getString(3));row.createCell((short)3).setCellValue(resultSet.getString(4));row.createCell((short)4).setCellValue(resultSet.getString(5));}
创建一个FileOutputStream来将Excel电子表格输出到XLS文件。每个XLS文件表示一个Excel电子表格:
FileOutputStream output=new文件OutputStream(new文件("c:/excel/catalog.xls"));
将Excel电子表格输出到XLS文件:
wb.write(output);
在“参考资料”部分有用于生成Excel电子表格的ExcelWebLogic.jsp JSP。
要在WebLogic Server中运行ExcelWebLogic.jsp JSP,复制该JSP到\samples\server\examples\build\mainWebApp目录。使用URL http://localhost:7001/ExcelWebLogic.jsp运行该JSP。
生成的Excel电子表格可以在Excel (http://office.microsoft.com/en-us/FX010858001033.aspx)或Excel Viewer工具tool (http://office.microsoft.com/en-us/assistance/HA011620741033.aspx)中打开。
将Excel文档保存在数据库表中
本节我们将使用Apache POI API将一个Excel电子表格保存在MySQL数据库表中。要保存的示例Excel文档是catalog.xls,即,前一节所生成的电子表格。该Excel电子表格被保存在MySQL表Catalog中。使用MySQL命令删除前一节中用于生成Excel文档的Catalog表:
MySQL>DROP table Catalog;
开发一个JSP应用程序来将示例Excel文档保存在MySQL数据库中。在JSP应用程序中导入Apache POI包org.apache.poi.poifs.filesystem和org.apache.poi.hssf.usermodel。org.apache.poi.poifs.filesystem包中包含创建Excel workbook的类,而org.apache.poi.hssf.usermodel包中包含表示Excel workbook、电子表格、电子表格行和行单元格的类。
<%@ page import="org.apache.poi.poifs.filesystem.*,org.apache.poi.hssf.usermodel.*, java.sql.*,java.io.*,javax.naming.InitialContext"%>
像前一节一样,从MySQL datasource获得JDBC连接:
InitialContext initialContext = new InitialContext();javax.sql.DataSource ds = (javax.sql.DataSource)initialContext.lookup("MySqlDS");java.sql.Connection conn = ds.getConnection();
从JDBC连接创建java.sql.Statement:
Statement stmt=conn.createStatement();
创建一个MySQL表来保存Excel电子表格:
String createTable="CREATE TABLE Catalog(CatalogId VARCHAR(25) PRIMARY KEY,JournalVARCHAR(25),Section VARCHAR(25),Edition VARCHAR(25),Title Varchar(125),Author Varchar(25))"; stmt.execute(createTable);
创建一个POIFSFileSystem来读取Excel文档:
File catalogExcel=new File("C:/ExcelWebLogic/catalog.xls");FileInputStream inputStream=new FileInputStream(catalogExcel);POIFSFileSystem fileSystem=new POIFSFileSystem(inputStream);
从POIFSFileSystem获得一个HSSF workbook:
HSSFWorkbook wb=new HSSFWorkbook(fileSystem);
从Excel workbook获得一个Excel电子表格:
HSSFSheet sheet1=wb.getSheet("sheet1");
使用row iterator迭代电子表格中的行:
java.util.Iterator rowIterator=sheet1.rowIterator();HSSFRow row=(HSSFRow)rowIterator.next();
对于每一行,迭代行单元格的值。例如,CatalogId行单元格值是使用以下代码检索的:
String catalogId=row.getCell((short)0).getStringCellValue();
对于Excel电子表格中的每一行,添加一个表格行:
String exceltable="INSERT INTO Catalog VALUES("+"\'"+catalogId+"'"+","+"\'"+journal+"\'"+","+"\'"+section+"\'"+","+"\'"+edition+"\'"+","+"\'"+title+"'"+","+"\'"+author+"\'"+")";stmt.execute(exceltable);
复制POIWebLogic.jsp到\samples\server\examples\build\mainWebApp目录。使用URL http://localhost:7001/POIWebLogic.jsp运行JSP。这样就从Excel电子表格生成一个MySQL数据库表。在“参考资料”部分有用于从Excel电子表格生成数据库表的POIWebLogic.jsp。
结束语
在本教程中,我们从一个MySQL数据库表生成了一个Excel电子表格,随后将该电子表格保存在一个数据库表中。WebLogic Server提供了一个数据源以及运行JSP应用程序的J2EE应用服务器,从而方便了从数据库表到Excel电子表格以及从电子表格到数据库表的转换。
原文出处:http://wldj.sys-con.com/read/185302.htm
![](http://dev2dev.bea.com.cn/images/_.gif)
作者简介
Ajay Vohra是Compuware 公司的一名高级软件工程师。
Deepak Vohra 是一名NuBean顾问兼web开发人员。他拥有Sun Certified Java 1.4 Programmer和Sun Certified Web Component Developer for J2EE证书。
:在WebLogic Server中集成Apache Poi
--Apache Jakarta POI项目提供了访问和生成Excel文档的组件
Apache Jakarta POI项目提供了用于访问和生成Excel文档的组件。POI HSSF API用于生成Excel Workbook以及将Excel电子表格添加到workbook。Excel电子表格由行和单元格组成。电子表格的页面布局和字体也使用POI HSSF API进行设置。
通常要求将数据库表呈现在Excel电子表格中。同样,开发人员的需求也可以保存到数据库表中的Excel电子表格中。Apache POI HSSF项目旨在提供一个创建Excel电子表格的API。使用POI HSSF项目生成的Excel电子表格中的数据可以是XML文档中的静态数据,或者是从一个数据库中动态检索到的数据。此外,Excel文档也可以被转换为XML文档或者保存在数据库中。在本教程中,我们将讨论在WebLogic Server中从一个MySQL数据库表创建Excel电子表格的步骤,随后将该Excel电子表格保存在一个数据库表中。
初步设置
org.apache.poi.hssf.usermodel包提供POI HSSF项目的实现。要生成或解析Excel电子表格,需要在类路径中设置org.apache.poi.hssf.usermodel包类。下载Apache POI库poi-bin-2.5.1-final-20040804.zip文件,将该zip文件解压缩所到一个安装目录(http://jakarta.apache.org/poi/)。安装WebLogic Server 8.1。下载MySQL数据库(www.mysql.com)。解压缩MySQL zip文件mysql-4.0.25-win32.zip到一个目录下。安装MySQL数据库。下载MySQL Connector/J JDBC驱动程序(www.mysql.com/products/connector/j/)。解压缩MySQL zip文件mysql-connector-java-3.1.10.zip到一个目录下。添加MySQL JDBC驱动程序jar文件mysql-connector-java-3.1.10-bin.jar到
使用下面的DOS命令登录到MySQL数据库:
>mysql
使用下面的命令访问示例数据库测试:
mysql>use test
在MySQL数据库中创建一个示例数据库表,将在此生成Excel电子表格。清单1展示了创建示例表Catalog的SQL脚本。
清单1:Catalog.sql
CREATE TABLE Catalog(CatlogId VARCHAR(25)PRIMARY KEY, Journal VARCHAR(25), Section VARCHAR(25),Edition VARCHAR(25), Title Varchar(125), Author Varchar(25));INSERT INTO Catalog VALUES('catalog1', 'dev2dev','WebLogic Platform 8.1','Oct 2004', 'BEA WebLogic Platform 8.1 SP3 Evaluation Guide','dev2dev');INSERT INTO Catalog VALUES('catalog2', 'dev2dev','WebLogic Server','Feb 2005', 'Application Architecture for Applications Built onBEA WebLogic Platform 8.1', 'Bob Hensle');INSERT INTO Catalog VALUES('catalog3', 'dev2dev','WebLogic Integration','March 2005', 'The BEA WebLogic Platform and Host Integration','Tom Bice');
接下来,我们将向WebLogic Server Classpath添加Apache POI .jar文件,并在WebLogic Server中创建一个JDBC数据源来检索用于Excel电子表格的数据。
添加poi-2.5.1-final-20040804.jar文件到
使用Apache POI生成Excel文档
在这一节中,我们将从示例数据库表生成Excel电子表格。首先,创建一个生成Excel电子表格的JSP应用程序。
在JSP中,将从一个MySQL数据库表创建Excel电子表格。使用Apache POI HSSF API来生成Excel电子表格。Apache POI HSSF包中含有用于Excel电子表格的不同组件的类。表1列出了Apache POI HSSF包中一些常用的类:
首先,导入Apache POI HSSF包:
<%@ page import="org.apache.poi.hssf.usermodel.*, java.sql.*,java.io.*,javax.naming.InitialContext"%>创建一个Excel workbook:
HSSFWorkbook wb=new HSSFWorkbook();
接下来,创建一个Excel电子表格:
HSSFSheet sheet1=wb.createSheet("sheet1");
该电子表格的数据是从MySQL数据库表检索得到的。从数据库获得JDBC连接。JDBC连接是使用datasource JNDI MySqlDS获得的。
InitialContext initialContext = new InitialContext();javax.sql.DataSource ds = (javax.sql.DataSource)initialContext.lookup("MySqlDS");java.sql.Connection conn = ds.getConnection();
创建一个java.sql.Statement,并从示例表Catalog获得结果集:
Statement stmt=conn.createStatement();ResultSet resultSet=stmt.executeQuery("Select * from Catalog");
为Excel电子表格创建一个标题行。Excel电子表格中的行从“0”开始。
HSSFRow row=sheet1.createRow(0);
对应于表的列设置标题行单元格的值。行单元格也是从“0”开始。例如,行中第一个单元格的值被使用setCellValue方法设置为CatalogId。
row.createCell((short)0).setCellValue("CatalogId");
要向电子表格添加行,迭代结果集并为每个表格行添加一行。从ResultSet检索列值,并在行单元格中设置这些值。
for (int i=1;resultSet.next(); i++){row=sheet1.createRow(i);row.createCell((short)0).setCellValue(resultSet.getString(1));row.createCell((short)1).setCellValue(resultSet.getString(2));row.createCell((short)2).setCellValue(resultSet.getString(3));row.createCell((short)3).setCellValue(resultSet.getString(4));row.createCell((short)4).setCellValue(resultSet.getString(5));}
创建一个FileOutputStream来将Excel电子表格输出到XLS文件。每个XLS文件表示一个Excel电子表格:
FileOutputStream output=new文件OutputStream(new文件("c:/excel/catalog.xls"));
将Excel电子表格输出到XLS文件:
wb.write(output);
在“参考资料”部分有用于生成Excel电子表格的ExcelWebLogic.jsp JSP。
要在WebLogic Server中运行ExcelWebLogic.jsp JSP,复制该JSP到
生成的Excel电子表格可以在Excel (http://office.microsoft.com/en-us/FX010858001033.aspx)或Excel Viewer工具tool (http://office.microsoft.com/en-us/assistance/HA011620741033.aspx)中打开。
将Excel文档保存在数据库表中
本节我们将使用Apache POI API将一个Excel电子表格保存在MySQL数据库表中。要保存的示例Excel文档是catalog.xls,即,前一节所生成的电子表格。该Excel电子表格被保存在MySQL表Catalog中。使用MySQL命令删除前一节中用于生成Excel文档的Catalog表:
MySQL>DROP table Catalog;
开发一个JSP应用程序来将示例Excel文档保存在MySQL数据库中。在JSP应用程序中导入Apache POI包org.apache.poi.poifs.filesystem和org.apache.poi.hssf.usermodel。org.apache.poi.poifs.filesystem包中包含创建Excel workbook的类,而org.apache.poi.hssf.usermodel包中包含表示Excel workbook、电子表格、电子表格行和行单元格的类。
<%@ page import="org.apache.poi.poifs.filesystem.*,org.apache.poi.hssf.usermodel.*, java.sql.*,java.io.*,javax.naming.InitialContext"%>
像前一节一样,从MySQL datasource获得JDBC连接:
InitialContext initialContext = new InitialContext();javax.sql.DataSource ds = (javax.sql.DataSource)initialContext.lookup("MySqlDS");java.sql.Connection conn = ds.getConnection();
从JDBC连接创建java.sql.Statement:
Statement stmt=conn.createStatement();
创建一个MySQL表来保存Excel电子表格:
String createTable="CREATE TABLE Catalog(CatalogId VARCHAR(25) PRIMARY KEY,JournalVARCHAR(25),Section VARCHAR(25),Edition VARCHAR(25),Title Varchar(125),Author Varchar(25))"; stmt.execute(createTable);
创建一个POIFSFileSystem来读取Excel文档:
File catalogExcel=new File("C:/ExcelWebLogic/catalog.xls");FileInputStream inputStream=new FileInputStream(catalogExcel);POIFSFileSystem fileSystem=new POIFSFileSystem(inputStream);
从POIFSFileSystem获得一个HSSF workbook:
HSSFWorkbook wb=new HSSFWorkbook(fileSystem);
从Excel workbook获得一个Excel电子表格:
HSSFSheet sheet1=wb.getSheet("sheet1");
使用row iterator迭代电子表格中的行:
java.util.Iterator rowIterator=sheet1.rowIterator();HSSFRow row=(HSSFRow)rowIterator.next();
对于每一行,迭代行单元格的值。例如,CatalogId行单元格值是使用以下代码检索的:
String catalogId=row.getCell((short)0).getStringCellValue();
对于Excel电子表格中的每一行,添加一个表格行:
String exceltable="INSERT INTO Catalog VALUES("+"\'"+catalogId+"'"+","+"\'"+journal+"\'"+","+"\'"+section+"\'"+","+"\'"+edition+"\'"+","+"\'"+title+"'"+","+"\'"+author+"\'"+")";stmt.execute(exceltable);
复制POIWebLogic.jsp到
结束语
在本教程中,我们从一个MySQL数据库表生成了一个Excel电子表格,随后将该电子表格保存在一个数据库表中。WebLogic Server提供了一个数据源以及运行JSP应用程序的J2EE应用服务器,从而方便了从数据库表到Excel电子表格以及从电子表格到数据库表的转换。
原文出处:http://wldj.sys-con.com/read/185302.htm
![](http://dev2dev.bea.com.cn/images/_.gif)
作者简介
Ajay Vohra是Compuware 公司的一名高级软件工程师。
Deepak Vohra 是一名NuBean顾问兼web开发人员。他拥有Sun Certified Java 1.4 Programmer和Sun Certified Web Component Developer for J2EE证书。
WebLogic教程
weblogic portal
weblogic是什么?
weblogic优化
weblogic 概述
weblogic portal 8.1
配置WebLogic Tuxedo Connector
Weblogic Portal Reference
weblogic中安全
Weblogic EJB 学习笔记
【Weblogic Security In Action】
weblogic的JDNI连接
WebLogic 8安装配置
weblogic系统调试所得
Myeclipse配置weblogic
weblogic portal 8.1
WebLogic 8安装配置
配置WebLogic Tuxedo Connector
How WebLogic Portal Uses the WebLogic Server Security Framework
体验WebLogic Server 8.1 SP4新增功能之WebLogic Single1
WebLogic Portal 8.1 中的 URL
Weblogic自动启动的问题!
Weblogic在MyEclipse的配置
Monitoring the WebLogic Tuxedo Connector