日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Java代碼實(shí)現(xiàn)Excel另存為數(shù)據(jù)庫存儲(chǔ)(java另存excel數(shù)據(jù)庫)

隨著數(shù)據(jù)量的增加,關(guān)系型數(shù)據(jù)庫已經(jīng)成為了很多企業(yè)或個(gè)人存儲(chǔ)數(shù)據(jù)的首選,因?yàn)閿?shù)據(jù)基于關(guān)系型數(shù)據(jù)庫存儲(chǔ)的方式方便了數(shù)據(jù)檢索、過濾等操作。然而,很多數(shù)據(jù)源并不是基于數(shù)據(jù)庫存儲(chǔ),比如Excel表格,作為一種最基礎(chǔ)的數(shù)據(jù)處理工具,Excel表格承載了很多數(shù)據(jù),但Excel表格如何存儲(chǔ)到數(shù)據(jù)庫中,是許多開發(fā)者都遇到的問題。下面介紹的是通過的方法。

創(chuàng)新互聯(lián)公司專注于網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點(diǎn)出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對待客戶,用專業(yè)的服務(wù)創(chuàng)造價(jià)值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。

一、準(zhǔn)備工作

1. Excel表格數(shù)據(jù)的預(yù)處理

我們需要先將Excel表格數(shù)據(jù)進(jìn)行預(yù)處理,也就是將Excel表格數(shù)據(jù)轉(zhuǎn)化為適合數(shù)據(jù)庫存儲(chǔ)的形式。對于Excel表格,我們可以使用Apache POI來讀取Excel表格。由于這里只是介紹如何將Excel表格存儲(chǔ)到數(shù)據(jù)庫中,因此,本文將不涉及Apache POI的使用。

2. 數(shù)據(jù)庫環(huán)境的配置

在開始存儲(chǔ)Excel表格數(shù)據(jù)之前,我們需要先進(jìn)行數(shù)據(jù)庫的環(huán)境配置。這里以MySQL數(shù)據(jù)庫為例,在MySQL軟件中新建一個(gè)數(shù)據(jù)庫,并創(chuàng)建一個(gè)名為“excel”的表格,用于存儲(chǔ)Excel表格中的數(shù)據(jù)。表格的設(shè)計(jì)如下:

CREATE TABLE `excel` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(255) DEFAULT NULL COMMENT ‘name’,

`age` int(11) DEFAULT NULL COMMENT ‘a(chǎn)ge’,

`address` varchar(255) DEFAULT NULL COMMENT ‘a(chǎn)ddress’,

`salary` double DEFAULT NULL COMMENT ‘salary’,

`birthday` datetime DEFAULT CURRENT_TIMESTAMP COMMENT ‘birthday’,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

二、代碼實(shí)現(xiàn)

在Java代碼中,我們可以通過JDBC連接數(shù)據(jù)庫,將Excel表格中的數(shù)據(jù)存入到MySQL數(shù)據(jù)庫中。下面,我們來看一下Java代碼的實(shí)現(xiàn)過程:

1. 創(chuàng)建JDBC連接對象

通過以下代碼來創(chuàng)建一個(gè)JDBC連接對象:

Connection conn = null;

try {

// 加載驅(qū)動(dòng)程序

Class.forName(“com.mysql.jdbc.Driver”);

// 連接數(shù)據(jù)庫

conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/test”, “root”, “123456”);

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

通過以上代碼,我們成功創(chuàng)建一個(gè)JDBC連接對象。

2. 執(zhí)行的SQL語句

在實(shí)現(xiàn)代碼過程中,我們需要將Excel表格中的數(shù)據(jù)讀取出來,然后將數(shù)據(jù)存入MySQL數(shù)據(jù)庫中。這里,我們需要構(gòu)造一個(gè)SQL語句,用于將數(shù)據(jù)存入MySQL表格中。如下所示:

INSERT INTO excel (name, age, address, salary, birthday) VALUES (?, ?, ?, ?, ?)

其中,?是占位符,用于接收Excel表格中的數(shù)據(jù)。

3. 處理Excel表格數(shù)據(jù)

通過以上兩步,我們成功建立了JDBC連接對象,并準(zhǔn)備好了SQL語句。接下來,我們需要將Excel表格中的數(shù)據(jù)讀取出來,并將數(shù)據(jù)插入到MySQL數(shù)據(jù)庫中。這個(gè)過程中需要使用到Apache POI的相關(guān)API,我們來看一下代碼實(shí)現(xiàn):

InputStream in = new FileInputStream(new File(“data.xlsx”));//讀取Excel表格

Workbook wb = WorkbookFactory.create(in);//Excel工作簿

Sheet sheet = wb.getSheetAt(0);//獲取表格

Row row = null;//行

for (int i = 1; i

row = sheet.getRow(i);

String name = row.getCell(0).getStringCellValue();//獲取之一個(gè)單元格的值

int age = (int) row.getCell(1).getNumericCellValue();//獲取第二個(gè)單元格的值

String address = row.getCell(2).getStringCellValue();//獲取第三個(gè)單元格的值

double salary = row.getCell(3).getNumericCellValue();//獲取第四個(gè)單元格的值

Date birthday = row.getCell(4).getDateCellValue();//獲取第五個(gè)單元格的值

//插入數(shù)據(jù)到mysql表格中

String sql = “INSERT INTO excel (name, age, address, salary, birthday) VALUES (?, ?, ?, ?, ?)”;

PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setString(1, name);

pstmt.setInt(2, age);

pstmt.setString(3, address);

pstmt.setDouble(4, salary);

pstmt.setDate(5, new java.sql.Date(birthday.getTime()));

pstmt.executeUpdate();

}

以上代碼實(shí)現(xiàn)的功能是將Excel表格中的數(shù)據(jù)讀取出來,然后將數(shù)據(jù)存入到MySQL數(shù)據(jù)庫中,達(dá)到了Excel另存為數(shù)據(jù)庫存儲(chǔ)的目的。

三、

本文介紹了如何通過的方法,并且詳細(xì)介紹了Java代碼實(shí)現(xiàn)過程。相信讀者們在學(xué)習(xí)了此篇文章之后,就可以將Excel表格中的數(shù)據(jù)存入到MySQL數(shù)據(jù)庫中,為數(shù)據(jù)處理提供更多的選擇。

相關(guān)問題拓展閱讀:

  • 怎么用java將一個(gè)excel里面數(shù)據(jù)讀出并寫入另一個(gè)excel?
  • java 怎么把 excel文件導(dǎo)入到數(shù)據(jù)庫

怎么用java將一個(gè)excel里面數(shù)據(jù)讀出并寫入另一個(gè)excel?

需要對Excel中的數(shù)據(jù)進(jìn)行讀取操作。

java 怎么把 excel文件導(dǎo)入到數(shù)據(jù)庫

import java.io.*;

import java.text.SimpleDateFormat;

import java.util.*;

import java.sql.*;

import java.util.Date;

import java.util.HashMap;

import java.util.Map;

import jxl.*;

public class SimUpdate {

private String fileName;

public ZfzSimUpdate(String fileName){

this.fileName = fileName;

}

static Map tNames;

static{

tNames = new HashMap();

}

/**

* 用于產(chǎn)生 數(shù)據(jù)庫的 ID 值,組成 總共 17 位數(shù).

* 根據(jù)不同的表名,可保證同一秒內(nèi)產(chǎn)生的 ID 號(hào)不重復(fù)

*/

private static String getDtime() {

String rid;

Date nd = new Date();

SimpleDateFormat sdf = new SimpleDateFormat(“yyyyMMddHHmmss”);

rid = sdf.format(nd);

return rid;

}

public String getSeqNumber(String tableName) {

if(tableName == null || “”.equals(tableName))

tableName = “彎亮GENERY”;

Integer it;

// noinspection SynchronizeOnNonFinalField

synchronized(tNames){

it = (Integer)tNames.get(tableName);

if(it == null){

it = new Integer(100);

tNames.put(tableName, it);

}else{

if(it.intValue() > 998)

it = new Integer(100);

else

it = new Integer(1 + it.intValue());

tNames.put(tableName, it);

}

}

return getDtime() + String.valueOf(it);

}

private void updateDb(){

try{

Connection conn = DbPool.connectDB();

if(conn != null){

Statement stmt = conn.createStatement();

/**********************************************/

jxl.Workbook rwb = null;

try{

//構(gòu)建Workbook對象 只讀Workbook對象

//直接從本地文件創(chuàng)建Workbook

//從輸入流創(chuàng)建Workbook

InputStream is = new FileInputStream(fileName);

rwb = Workbook.getWorkbook(is);

//Sheet(術(shù)語首譽(yù):工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中

//Sheet的下標(biāo)是從0開始的

//獲取之一張Sheet表

Sheet rs = rwb.getSheet(0);

//獲取Sheet表中所包含的總列數(shù)

int rsColumns = rs.getColumns();

//獲取Sheet表中所包含的總行數(shù)

int rsRows = rs.getRows();

//獲取指這下單元格的對象引用

String simNumber = “”,termSeqId = “”;

//指定SIM卡號(hào)及序列號(hào)

for(int i=0;i 0){

System.out.println(“成功插入第”+i+”條數(shù)據(jù)”);

}

}

//System.out.println(“SIM卡號(hào):”+simNumber+”,序列號(hào):”+termSeqId);

}

//以下代碼為寫入新的EXCEL,這里不使用,所以注釋

/*

//利用已經(jīng)創(chuàng)建的Excel工作薄創(chuàng)建新的可寫入的Excel工作薄

jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(“

//讀取之一張工作表

jxl.write.WritableSheet ws = wwb.getSheet(0);

//獲取之一個(gè)單元格對象

jxl.write.WritableCell wc = ws.getWritableCell(0, 0);

//決斷單元格的類型,做出相應(yīng)的轉(zhuǎn)化

if (wc.getType() == CellType.LABEL) {

Label l = (Label) wc;

l.setString(“The value has been modified.”);

}

//寫入Excel對象

wwb.write();

wwb.close();

*/

}catch(Exception e){

e.printStackTrace();

}

finally{

//操作完成時(shí),關(guān)閉對象,翻譯占用的內(nèi)存空間

rwb.close();

}

/*********************************************/

}

}catch(Exception e){

e.printStackTrace();

}

}

public static void main(String args){

DbPool dbPool = new DbPool(“dbConn.cfg”);//連接數(shù)據(jù)庫

SimUpdate simUpdate = new SimUpdate(“zfz_sim.xls”);

simUpdate.updateDb();

}

}

java 另存excel數(shù)據(jù)庫的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于java 另存excel數(shù)據(jù)庫,Java代碼實(shí)現(xiàn)Excel另存為數(shù)據(jù)庫存儲(chǔ),怎么用java將一個(gè)excel里面數(shù)據(jù)讀出并寫入另一個(gè)excel?,java 怎么把 excel文件導(dǎo)入到數(shù)據(jù)庫的信息別忘了在本站進(jìn)行查找喔。

成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價(jià)格厚道的香港/美國云服務(wù)器和獨(dú)立服務(wù)器。創(chuàng)新互聯(lián)成都老牌IDC服務(wù)商,專注四川成都IDC機(jī)房服務(wù)器托管/機(jī)柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機(jī)房租用、服務(wù)器托管、機(jī)柜租賃、大帶寬租用,可選線路電信、移動(dòng)、聯(lián)通等。


當(dāng)前名稱:Java代碼實(shí)現(xiàn)Excel另存為數(shù)據(jù)庫存儲(chǔ)(java另存excel數(shù)據(jù)庫)
路徑分享:http://m.5511xx.com/article/coecegg.html