word可以直接导⼊mysql嘛_如何把word⽂档导⼊到数据库中
mysql帮助文档——javaPOI
在经过朋友的指导下,在处理⽂档的⽅式上有所不同。
我的数据库使⽤的是SQL server,这篇博客将不介绍如何将数据存储进数据库中,只进⾏java POI处理⽂档数据的介绍,在处理完数据后,如果想要存储进不同的数据库的话,只需要更改数据的连接池以及存储代码即可。
1 importjava.io.File;
2 importjava.io.FileInputStream;
3 importjava.util.HashMap;
4 importjava.util.List;
5 importjava.util.Map;6
7 importorg.apache.poi.xwpf.usermodel.XWPFDocument;8 importorg.apache.poi.xwpf.usermodel.XWP
FParagraph;9
10 importBean.Article;11 importDao.IDao;12 importDao.UserDaoImpl;13
14 public classWordToSql {15
16 public staticString pian;17 public staticString zhang;18
19 public static void readAndWriter(String fileName)throwsException {20 File file = newFile(fileName);21 try{22 FileInputStream fis = newFileInputStream(file);23 XWPFDocument xdoc = newXWPFDocument(fis);24 Listparas
=Paragraphs();25 Article article = newArticle();26 IDao userDao = newUserDaoImpl();27 boolean isFirst = true;28 for(XWPFParagraph p:paras) { //遍历段落
29 String level =p.getStyleID();30 System.out.println(level);31 if(level==null)continue;32 if(level.equals("12030")) { //篇的字号是⼩三:15
33 pian =p.getParagraphText();34 article.setPian(pian);35 }else if(level.equals("2201812")) { //章的字号是四号:14
36 if(!isFirst) {37 userDao.add(article);38 isFirst = true;39 }40 zhang =p.getParagraphText();41 article.setZhang(zhang);42 }else if(level.equals("3132020")) { //每个热词的字号是13
43 if(isFirst)isFirst = false;44 elseuserDao.add(article);45 String title =p.getParagraphText();46 article.setTitle(title);47 article.setContent(null);48 }else if(level.equals("41")) { //段落的字号是⼩五:9
49 String content =p.getParagraphText();50 Content()!=null)content =Content()+content;51
article.setContent(content);52 }53 }54 fis.close();55 }catch(Exception e) {56
System.out.println("WordToSql:"+e.getMessage());57 }58 }59
60 }
在这⼀部分代码中,有⼀部分⽅法是POI的jar包⾃带的⽅法,如getParagraphs()和getStyleID()⽅法。
在博主推荐的那篇博客中,处理数据的⽅式也是根据字号进⾏,不过在博主使⽤后发现数据库中并没有导⼊数据,最后发现错误的原因是由于字号错误,于是在使⽤getStyleID()⽅法后,我将字号输出,最后发现这四种不同的字号。
isFirst的true和false将控制调⽤存储函数的时间点,可在仔细看过代码后,进⾏理解。
以下是存储函数的代码:
1 importjava.sql.Connection;
2 importjava.sql.PreparedStatement;3
4 importBean.Article;
5 importUtil.DBUtil;6
7 public class UserDaoImpl implementsIDao{8
9 public voidadd(Article article) {10 Connection con =Connection();11 PreparedStatement pre = null;12 String sql = "insert into data(pian,zhang,title,context) values(?,?,?,?)";13 try{14 pre =con.prepareStatement(sql);15
pre.setString(Pian());16 pre.setString(Zhang());17 pre.setString(Title());18
pre.setString(Content());uteUpdate();20 System.out.println("添加成功!");21 }catch(Exception e) {22 System.out.Message());23 }finally{24 DBUtil.close(pre);25 DBUtil.close(con);26 }27 }28
29 }
以上就是全部内容,如果并不能理解博主的⽅法,可以看⼀看博主推荐的博客。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。