- 浏览: 841642 次
- 性别:
最新评论
-
haiyangyiba:
感谢分享,写得挺好的,如果有模板文件参考就更好了
[简单]docx4j替换模板数据示例 -
cm0924:
跨列不支持wps啊 ,有没有解决办法?
[简单]poi创建word 2007表格示例(二) -
ITCCYC:
导出的word用不兼容WPS怎么解决?
[简单]poi导出简单word2007 -
lu438248129:
楼主 为啥我用你的代码,跨列的合并没问题,但是跨行的合并有问 ...
[简单]poi word2007表格单元格合并 -
h702109382:
很好的资源,谢谢
[简单]poi word2007表格单元格合并
文章列表
docx4j可以往文档中插入段落,使用起来和往List中插入元素一样,只要注意下下标位置就可以了,如第一次往下标5的地方插入段落后,模板中下标为8的变成了下标9。
举个例子,模板如下:
往模板中插入段落和表格
String inputfilepath = "e:/test_tmp/0904/test_p.docx";
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new java.io.File(inputfile ...
如果想实现不同页面大小不同,则需要插入分节符,如图:
代码中在想换页的段落上设置SectPr就可以了,例子如下:
@Test
public void testDocx4jSetPageSize() throws Exception {
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.createPackage();
MainDocumentPart mdp = wordMLPackage.getMainDocumentPart();
St ...
步骤一:把模板后缀名修改为zip解压
步骤二:打开word/document.xml
步骤三:把所有${不连续的修改为连续,如${1,}修改为${1}
步骤五:选中解压内容压缩为zip,修改后缀名为docx
下面举个实际例子:
如果数据是静态的
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new jav ...
[简单]docx4j样式使用
- 博客分类:
- docx4j
自定义样式或者使用word默认样式,如word中的
关键代码:
public P createParagraphOfStyle(String text, String styleId) {
PPr pPr;
pPr = Docx4j_Helper.createNewPPr();
P p = Docx4j_Helper.createParagraphOfText(text, null);
p.setPPr(pPr);
org.docx4j.wml.PPrBase.PStyle pStyle = Docx4j_ ...
docx4j可以将样式抽取出来放在styles.xml中公共使用,关键代码如下:
String pprStr = "<w:pPr xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:pBdr><w:top w:val=\"dashSmallGap\" w:color=\"00B050\" w:sz=\"12\" w:space=\"0\&qu ...
一个简单的例子,复杂用法见docx4j官网例子NumberingRestart.java。
要实现的效果:
步骤一:
将目标文件docx后缀名修改为.zip,解压后寻找numbering.xml文件
步骤二:
将numbering.xml文件内容贴到代码中
步骤三:
打开docx4j自带例子src\samples\docx4j\org\docx4j\samples\NumberingRestart.java,稍微修改下代码就可以了。
...
[简单]工作记录_多线程相关
- 博客分类:
- 工作记录
最近遇到多线程的问题,原来使用异步请求多个接口(n*3次请求) 方案一 使用多线程一次返回数据,最开始是使用5个线程,一个线程顺序请求3个接口,超时终止返回 缺点 测试发现必须3个接口全部成功才能取到数据,遇到部分接口失败数据拿不到 方案二 使用6个线程,2个线程请求同一个接口,每个线程处理n/2个数据,超时终止返回 缺点 测试发现,可能1个接口失败导致无法处理后面的数据
以上方案都已失败告终,测试发现多线程取数据效果比异步请求差,异步请求显示是成功一个显示一个,多线程方案可能由于单个接口失败导致数据不 ...
[简单]使用json path解析json
- 博客分类:
- java
最近在解析接口返回的json格式时候,遇到了一些较复杂的格式,就是符合条件的数据格式不固定,可能是Map,也可能是List,写代码的时候写了很多instanceof判断导致代码很复杂 json如下图,
其实只需要找出符合resources_code=04里面的remain_res,但是resources_info和sec_resources_info不固定(List,Map),这种情况下可以使用json path解析比较方便. 代码如下:
import com.jayway.jsonpath.Filter;
import ...
[简单]工作记录_接口返回405原因
- 博客分类:
- 工作记录
最近调接口时候一直报错,错误信息是:
responseCode:405
responseMsg:Method Not Allowed
接口请求方式Post.
在试过各种post请求方式以及替换多种模拟请求框架后终于发现了原因:
参数要拼接在url后提交才响应正确,如下:
String param = getParamStr(parameters, reqEncode);
if (urlString.contains("?")) {
urlString = urlS ...
[简单]mybatis判断数字类型
- 博客分类:
- Mybatis
昨天同事反馈mybatis保存不了int类型的属性,一直报错,错误信息如下:
Caused by: java.lang.NumberFormatException: For input string: "null"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
at java.lang.Double.parseDouble(Unknown ...
mysql数据库,id自增,配置如下:
<insert id="saveTestTb" useGeneratedKeys="true" keyProperty="id"
parameterType="TestTb">
insert into
db_ap_fgm_TestTb(id,traffic_type
<include refid="getTestTbField" />
)
values(#{id},# ...
工作中遇到需要合并相同用户的内容,数据如下:
代码如下:
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import org.a ...
[简单]代码片段_电梯数字排列
- 博客分类:
- java
今天看电梯数字排列是9 18 26这样呈倒N排列的,写了个类似的打印例子,如下:
import java.util.Arrays;
public class 电梯数字排列_S3_Test {
public static void main(String[] args) {
电梯数字排列_S3_Test t = new 电梯数字排列_S3_Test();
int totalFloorNum=13;
int colNum=5;
t.getLiftNum(totalFloorNum, colNum);
System.out.prin ...
[简单]代码片段_数据合并
- 博客分类:
- java
合并规则:删除家长phone为空的记录,若一个家长对应多个孩子,保留一条家长记录,家长id修改为phone,对应关系也要修改。
代码如下:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import or ...
[简单]推荐一个itext例子比较全的网站
- 博客分类:
- itext
最近发现一个itext例子比较全的网站,其中例子的代码是使用比较老的itext写的,也就是使用了com.lowagie.text.pdf.*这些包,经测试,大部分例子都可以兼容itext 5.5.5包,需替换为com.itextpdf.text.*.
然后稍加修改部分代码,如Color修改为BaseColor,就可以运行了,网站为:http://www.java2s.com/Code/Java/PDF-RTF/CatalogPDF-RTF.htm,如下图:
全文完。