資源簡介
該小項目使用hibernate和spring及IO流實現對Excel文檔的讀寫,希望對大家有幫助!
代碼片段和文件信息
package?main;
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.IOException;
import?jxl.Cell;
import?jxl.Sheet;
import?jxl.Workbook;
import?jxl.read.biff.BiffException;
import?org.springframework.context.ApplicationContext;
import?org.springframework.context.support.AbstractApplicationContext;
import?org.springframework.context.support.ClassPathxmlApplicationContext;
import?net.cstp.hibernate.pojo.Users;
import?net.cstp.service.UserService;
import?net.cstp.serviceimpl.UserServiceImpl;
/**
?*?測試類
?*?@author?xujiwei
?*?@version?1.0
?*/
public?class?Main?{
//
public?static?void?main(String[]?args)?throws?BiffException?IOException?{
AbstractApplicationContext?context=new?ClassPathxmlApplicationContext(new?String[]{“applicationContext.xml““applicationContext_db.xml“});
UserService?userServiceImpl=(UserService)context.getBean(“userServiceImpl“);
FileInputStream?is?=?null;
Workbook?wb?=?null;
//String?phone=“139012471601“;
//設置從第幾行開始讀取,此處根據實際表格設定
??int?ROW_HEAD_COUNT?=0;
??try?{
??//File?file=new?File(“G://奧萊調查問卷信息收集3月16-3月18.xls“);
??is?=?new?FileInputStream(new?File(“G://測試.xls“));
???wb?=?Workbook.getWorkbook(is);
???//獲取工作項
???String[]?sheetNames?=?wb.getSheetNames();
???/*
????*?獲取所要操作的工作項,在此項目中使用“聯系信息”工作項
????*/
???Sheet?rs?=?wb.getSheet(sheetNames[2]);
???//獲取行數
???int?rowCount?=?rs.getRows();
???//此處設置錄入的最大行數
???if(rowCount>5000){
???System.out.println(“記錄大于5000無法導入“);;
???}
???for(int?row?=?ROW_HEAD_COUNT;?row? ???try?{
//從第一欄開始讀取數據
Cell[]?rowData?=?rs.getRow(row);
//姓名
String?username?=?rowData[0].getContents();
//手機號碼
String?phone?=?rowData[1].getContents();
//email
String?email?=?rowData[2].getContents();
//部門
String?dept?=?rowData[3].getContents();
//性別
String?sex?=?rowData[4].getContents();
//rank
String?rank?=?rowData[5].getContents();
//組裝生成用戶對象
Users?user?=?new?Users();
user.setUsername(username);
user.setPhone(phone);
user.setEmail(email);
user.setProf(dept);
user.setSex(sex);
user.setRank(rank);
System.out.println(user.toString());
//判斷數據庫中是否存在該用戶
boolean?flag?=?userServiceImpl.queryUser(user);
System.out.println(flag+“----------------------------------------------------------------------“);
if(flag){
System.out.println(“改用戶已經存在,請勿重復插入!“);
?}else{
//將數據插入數據庫中
userServiceImpl.insertService(user);
}
/**
?*?附:查詢時,因為你用uuid做主鍵,所以按ID查詢不會存在重復數據
?*?如此這樣,查詢是只能是按條件查詢剔除重復數據
?*?例如:Select?*?from?pcds_aolai_invest_userinfo?where?username?=?user.getUserName()?and?phone?=?user.getPhone?and?email?=?user.getEmail;
?*
?*
?*?另一種思路:
?*? 用戶的手機號碼和郵箱如果是必填字段,可以考慮使用此兩個字
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-04-12?23:37??writeexcel\
?????文件????????1970??2012-04-12?23:37??writeexcel\.classpath
?????目錄???????????0??2012-04-12?23:37??writeexcel\.myeclipse\
?????文件?????????303??2012-04-15?01:00??writeexcel\.myme
?????文件????????1012??2012-04-12?23:37??writeexcel\.project
?????目錄???????????0??2012-04-12?23:37??writeexcel\.settings\
?????文件?????????180??2012-04-12?23:37??writeexcel\.settings\org.eclipse.core.resources.prefs
?????文件?????????629??2012-04-15?01:12??writeexcel\ReadMe.txt
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\
?????文件?????????764??2012-04-12?23:37??writeexcel\src\applicationContext.xm
?????文件????????2639??2012-04-12?23:42??writeexcel\src\applicationContext_db.xm
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\main\
?????文件????????4088??2012-04-15?01:07??writeexcel\src\main\Main.java
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\dao\
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\daoimpl\
?????文件????????2849??2012-04-15?01:08??writeexcel\src\net\cstp\daoimpl\UserDaoImpl.java
?????文件?????????373??2012-04-15?01:08??writeexcel\src\net\cstp\dao\UserDao.java
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\hibernate\
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\hibernate\pojo\
?????文件????????1056??2012-04-12?23:37??writeexcel\src\net\cstp\hibernate\pojo\hibernate.user.xm
?????文件?????????768??2012-04-15?01:09??writeexcel\src\net\cstp\hibernate\pojo\Text.java
?????文件????????1270??2012-04-15?01:10??writeexcel\src\net\cstp\hibernate\pojo\Users.java
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\service\
?????目錄???????????0??2012-04-12?23:37??writeexcel\src\net\cstp\serviceimpl\
?????文件????????1594??2012-04-15?01:11??writeexcel\src\net\cstp\serviceimpl\UserServiceImpl.java
?????文件?????????450??2012-04-15?01:10??writeexcel\src\net\cstp\service\UserService.java
?????目錄???????????0??2012-04-12?23:37??writeexcel\WebRoot\
?????文件?????????834??2012-04-12?23:37??writeexcel\WebRoot\index.jsp
?????目錄???????????0??2012-04-12?23:37??writeexcel\WebRoot\me
............此處省略46個文件信息
- 上一篇:臺達PLC編程
- 下一篇:元件庫 axure(原型設計常用)
評論
共有 條評論