pp代码生成器(三) 设计freemarker模板, 创建凯发天生赢家一触即发官网的解决方案 -凯发k8网页登录

debug - 天道酬勤

   :: 凯发k8网页登录首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  671 随笔 :: 6 文章 :: 256 评论 :: 0 trackbacks
这一节, 我们根据数据库生成po对象为例, 来探讨如何使用pp制作freemarker模板, 创建凯发天生赢家一触即发官网的解决方案. 工料:
  1. eclipse jee, 最好是安装freemarker插件, 可以高亮显示freemarker标签.
  2. 可用的数据库, 可以是mysql, oracle, db2, postgresql中的任意一种. 如果没有数据库, 使用pp_home中的sample/sample-mysql.xlsx也是可以的.
* pp支持两种数据源, 一种是数据库, 另一种是excel文件数据源. 为什么支持excel呢? 是源于我曾经在建行工作, 内部数据库权限管理极为严格. 以至于pp需要查表字段信息的sql无权访问oracle的user_tab_columns等表, 这种情况下, 可以把表信息录入到excel, 继续使用pp来生成代码.
制作freemarker文件模板
再次提示, 点击pp的”工具”->”辅助设计” 菜单可以打开”辅助设计面板”, 需要的变量都可以到里面复制, 然后粘贴到freemarker中.
以下是我在eclipse里写的freemarker文件po.flt
 <#-- 生成package信息 --> <#if p.popackagename??>package ${p.popackagename}; <#-- 生成import信息 --> <#list g.entityimportclassset as clazz> import ${clazz};  /** *description: ${g.tablecomment}[${g.tablename}]管理接口实现类 
*create info: ${c.author}, ${g.createtime?string("yyyy/mm/dd")}
*凯发天生赢家一触即发官网 copyright (c) ${g.createtime?string("yyyy")}, ${c.contact} all rights reserved.
* *@version 1.0 */ public class ${g.entitycap}po { <#-- 生成主键字段信息 --> <#list g.fieldlst as f> private ${f.javatypeshort} ${f.property}; <#if f.columncomment??>// ${f.columncomment}<#if f.ispk>,主键<#if !f.isnullable>,不能为空 <#-- 生成不带参数的构造方法 --> /** *不带参数的构造方法 */ public ${g.entitycap}po(){} <#-- 生成以主键为参数的构造方法 --> /** *主键作为参数的构造方法 *@param ${g.pkfield.property} <#if g.pkfield.columncomment??>${g.pkfield.columncomment} */ public ${g.entitycap}po(${g.pkfield.javatypeshort} ${g.pkfield.property}){ this.${g.pkfield.property} = ${g.pkfield.property}; } <#-- 生成主键set/get方法 --> <#list g.fieldlst as f> /** *getter <#if f.columncomment??>${f.columncomment}<#if f.ispk>,主键<#if !f.isnullable>,不能为空 *@return */ public ${f.javatypeshort} get${f.propertycap}(){ return this.${f.property}; } /** *setter <#if f.columncomment??>${f.columncomment}<#if f.ispk>,主键<#if !f.isnullable>,不能为空 *@param ${f.property} */ public void set${f.propertycap}(${f.javatypeshort} ${f.property}){ this.${f.property} = ${f.property}; } }
在eclipse里编辑好这个文件后, 在pp_home/config/templates里创建myscheme文件夹, 然后把po.flt复制到这个文件夹中. 到这步为止, 我们模板就制作完了.
下面我们开始创建凯发天生赢家一触即发官网的解决方案

打开pp后, 请按如下步骤操作,

  1. 点击”可写”按钮, 使这个标签页上的控件呈可编辑状态
  2. 在”解析方案”可编辑下拉框中填写”myscheme”
  3. 在”域名”文件框里填入”com.hwp.pro”, 这里是您的项目的包前缀, 鼠标在上面停留, 可以看到提示, 可以通过${domain}在freemarker中引用它的值.
  4. 在”模块”里输入”pub”, 我们要生成文件的模块名, 鼠标在上面停留, 可以看到相应的提示
  5. “基本url”不用填写, 生成controller, html时才可能会用到
  6. 在”基本路径”里输入”/uers/hui/documents/myspace/workspaces1/workspacepp/generator-test/src/main” 这是我们项目文件的路径, 最终生成文件的保存路径会和它有关系. 具体关系是生成的文件的最终保存路径是 “基本路径” “包名”的路径.
  7. 点击”添加或修改”, 此时, 凯发天生赢家一触即发官网的解决方案就保存好了.
下面我们开始为”凯发天生赢家一触即发官网的解决方案” 添加 “生成任务”, 请按如下步骤操作:

选中刚才的创建的凯发天生赢家一触即发官网的解决方案, 点击”任务列表” 下面的 “添加”, 在弹出界面中输入如下信息
##### 在这个面板中作以下几点说明: 
1. 模板路径${templatespath}会被pp_home//comfig//templates替换. 
2. 存放路径最终的结果是前面的”基本路径” “” ”包名(转化成路径)” 
3. 包名后面的文本框的值, 是包名的别名, 在freemarker文件中可以通过${p.popackagename}去引用

这进下任务列表里已经有了这个任务, 如图: 

上面的这些信息, 会保存在pp的sqlite数据库, 以备下次使用.
下面一篇博客, 我们探讨, 如何用凯发天生赢家一触即发官网的解决方案来结合数据库表来生成文件


posted on 2017-09-01 20:19 huikk 阅读(298) 评论(0)  编辑  收藏 所属分类: java
网站地图