以前在项目完成后都会按照要求写数据库设计文档,表少的时候还无所谓,当有上百张表的时候就不好写了。当然也有一些自动化软件可以帮我们实现这个功能,但是自定义的程度比较低。所以今天自己来实现这个功能,可以按照自己的喜好定义样式和模板,是不是很酷。
首先新建一个Word文档
然后另存为xml格式,用NotePad打开。
在xml中使用freemarker的标签将数据填充。不会freemarker的可以先自己研究一下。
<w:body>
<wx:sect>
//循环遍历所有table
<#list tables as table>
<w:p wsp:rsidR="0017374B" wsp:rsidRPr="00481323" wsp:rsidRDefault="00AD2DC7">
<w:pPr>
<w:rPr>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00481323">
<w:rPr>
<wx:font wx:val="宋体"/>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>表名</w:t>
</w:r>
<w:r wsp:rsidRPr="00481323">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>:</w:t>
</w:r>
<w:r wsp:rsidRPr="00481323">
<w:rPr>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>${table.tableName} </w:t>
</w:r>
<w:r wsp:rsidRPr="00481323">
<w:rPr>
<wx:font wx:val="宋体"/>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>注释</w:t>
</w:r>
<w:r wsp:rsidRPr="00481323">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>:</w:t>
</w:r>
<w:r wsp:rsidR="005A39AB">
<w:rPr>
<w:b/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
<w:t>${table.tableComment} </w:t>
</w:r>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space=