06-8-14
Java
读取
excel
工作簿数据存入
oracle
的原理:
读取工作簿,
-
〉
java
语句处理得到
sheet-
〉
java
函数处理得到
sheet
中所有行的数据
-
〉依次把各行数据存入
DB
中;
1.DAO
类:虚基类
Ø
构造函数中实现与
oracle
的连接;
Ø
定义了一个抽象函数
excute_insert();
(把一行数据的各个字段
insert into oracle
)
2. ContentHandle
类:虚基类
Ø
构造函数中实现读取工作簿;
Ø
定义了三个抽象函数
HandleOneSheet(),StoreToDB()
与
ExecuteHandle();
3. FSCLContentHandle.java
:实现类
Ø
包含三个类:
FSCLContentHandle
类,
FSCLDAO()
类和
FSCLDO()
类;
Ø
FSCLDAO()
类:
private static
类型,继承
DAO
类
,通过内置
FSCLDO()
类的对象实现
.DAO
类的抽象函数
excute_insert()
;
Ø
FSCLDO()
类:
private static
类型,实际上是一个
javabean
,就是一系列的
get
和
set
函数;用于接收从
excel
中读取得到的一行数据中各列的值,并在
excute_insert()
函数中把各个值依次传给
insert
语句;
Ø
FSCLContentHandle
类:
public static
类型
,
继承
ContentHandle
类
;(
注:当一个
.java
文件中有多个类时,只能有一个
public
类,文件名与
public
类的名称相同。
)
;
这里实现了
ContentHandle
类的三个抽象函数
HandleOneSheet(),StoreToDB()
与
ExecuteHandle();
Ø
HandleOneSheet()
函数:
public list HandleOneSheet(Sheet sheet),
内置
FSCLDO()
类的对象
;
传入的是一个工作表,把工作表的每一行各列的值依次读取出来通过
FSCLDO()
类的对象的
set
方法一一赋值给
FSCLDO()
类的各个成员属性;最后函数的返回值为该工作表的所有行和列的值,为
list
类型;
Ø
StoreToDB()
函数
:
public void StoreToDB(list Dolist),
内置
FSCLDAO()
类的对象
;
传入的是
list
类型数据,通过
FSCLDAO()
类的对象的
excute_insert()
函数,把数据存入
DB
;
Ø
ExecuteHandle()
函数:获得工作簿,
java
语句处理得到
sheet
,调用
HandleOneSheet()
函数得到
list
类型数据(工作表的所有行和列的值),调用
StoreToDB()
函数把数据存入
DB
;
4.
为每个工作簿在
oracle
中建一个表;
OK
!