JAVA开发利用POI实现Excel与word文档的读写操作(word篇)

JAVA开发利用POI实现word文档表格的读写操作(2)

  1. 导入POM文件依赖
<dependency>    
	<groupId>org.apache.poi</groupId>  
	<artifactId>poi</artifactId>   
	<version>3.17</version>
</dependency>
<dependency>   
	<groupId>org.apache.poi</groupId>  
	<artifactId>poi-ooxml</artifactId>  
	<version>3.17</version>
</dependency>
<dependency>  
	<groupId>org.apache.poi</groupId> 
	<artifactId>ooxml-schemas</artifactId> 
	<version>1.1</version>
</dependency>
  1. POI写操作
package com.ss.poi.word;

import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.springframework.stereotype.Service;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

@Service
public class WriteDoc {

    public void exportDoc(){
        //创建Word对象
        XWPFDocument xwpfDocument = new XWPFDocument ();
        //创建一个段落对象
        XWPFParagraph titleParagraph = xwpfDocument.createParagraph ();
        //创建文本对象
        XWPFRun titleParagraphRun = titleParagraph.createRun ();
        titleParagraphRun.setBold (true);
        titleParagraphRun.setText ("这是一个POI操作Word的测试");
        titleParagraphRun.setColor ("FF0000");
        titleParagraphRun.setText ("红色的字?");
        String fileName = "POI操作Word.doc";
        try {
            OutputStream outputStream = new FileOutputStream ("D:\\L\\" +fileName);
            //执行写出到本地
            xwpfDocument.write (outputStream);
            xwpfDocument.close ();
        } catch (FileNotFoundException e) {
            e.printStackTrace ();
        } catch (IOException e) {
            e.printStackTrace ();
        }
    }
}
  1. POI读操作
package com.ss.poi.word;

import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.springframework.stereotype.Service;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;

@Service
public class ReadDoc {
    public void importDoc(){
        String fileName = "POI操作Word.doc";
        try {
            InputStream inputStream = new FileInputStream ("D:\\L\\" +fileName);
            XWPFDocument xwpfDocument = new XWPFDocument (inputStream);
            List<XWPFParagraph> paragraphs = xwpfDocument.getParagraphs ();
            for (XWPFParagraph paras:paragraphs){
                System.out.println (paras.getText ());
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace ();
        } catch (IOException e) {
            e.printStackTrace ();
        }
    }
}

  1. 实体
package com.ss.poi.pojo;

import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Data
@Entity
@Table(name = "user")
public class User {
    @Id
    @Column(name = "user_id")
    private Integer userId;
    private String via;
    @Column(name = "user_name")
    private String userName;
    @Column(name = "user_password")
    private String userPassword;
    private String phone;
    private String address;
    @Column(name = "user_email")
    private String userEmail;
    private String balance;
    @Column(name = "pay_pwd")
    private String payPwd;
}
  1. 数据库表
    JAVA开发利用POI实现Excel与word文档的读写操作(word篇)_第1张图片
  2. Controller层接口
package com.ss.poi.controller;

import com.ss.poi.word.ReadDoc;
import com.ss.poi.word.WriteDoc;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class WordController {
    @Autowired
    private ReadDoc readDoc;
    @Autowired
    private WriteDoc writeDoc;

//    @RequestMapping("/writeWord")
    @GetMapping("/writeWord")
    public String writeWord(){
        writeDoc.exportDoc ();
        return "成功";
    }

    @GetMapping("/readWord")
    public String readWord(){
        readDoc.importDoc ();
        return "成功";
    }
}

  1. 测试及结果
    JAVA开发利用POI实现Excel与word文档的读写操作(word篇)_第2张图片
    JAVA开发利用POI实现Excel与word文档的读写操作(word篇)_第3张图片
    8.可能会出现的异常
    IOException、FileNotFoundException。
    注意文件保存路径的位置。关于POI操作Excel文档的案例请看上一篇文章。

你可能感兴趣的:(SpringBoot,poi)