Freemarker代码生成器原理说明
一、Freemarker基本原理:
FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>
模板文件存放在Web服务器上,当有人来访问这个页面,FreeMarker就会介入执行,然后动态转换模板,用最新的数据内容替换模板中${...}的部分,之后将结果发送到访问者的Web浏览器中。访问者的Web浏览器就会接收到例如第一个HTML示例那样的内容(也就是没有FreeMarker指令的HTML代码),访问者也不会察觉到服务器端使用的FreeMarker。(存储在Web服务器端的模板文件是不会被修改的;替换也仅仅出现在Web服务器的响应中。)
二、代码生成器配置使用
SVN地址: https://xx/code-generator
代码目录结构如下:
主要有三个地方修改的。
1、config.properties 修改基本信息
2、修改数据连接信息
3、修改代码模板文件,可以根据自己需要修改模板代码,也可以重新定义自己的模板,也可以使用默认模板。
4、运行程序生成代码
按已经配置结构生成java代码和mybatis xml
存在不足:
1、外键关联表没有处理好关系。
2、持久层只能支持mybatis。