creator

项目介绍

creator是一款为php框架odp的脚手架工具,主要用于生成dao层,dataService层,pageService层,controller层,action层,避免重复性劳动和提高工作效率

软件架构

软件架构说明

使用说明

(ps:配置已支持当前项目组文件路径,放置在app同级目录即可)

1.创建app

php creator build app app_name –c namespace

栗 : php creator create action Action_MessageList -n message

2.创建dao

php creator create dao dao_name -p [mod | mul]

栗 : php creator create action Action_MessageList -n message

3.创建dataservice

php creator create ds dataservice

栗 : php creator create ds Service_Data_Message

4.创建pageservice

php creator create ps pageservice

栗 :php creator create ps Service_Page_Message

5.创建controller

php creator create controller c_name

栗 : php creator create controller Controller_Message

6.创建action

php creator create action a_name -n middle_name

栗 : php creator create action Action_MessageList -n message

7.创建所有

php creator create all name

栗 : php creator create all Message

安装教程

将creator文件夹放置于odp项目的根目录下

配置连接数据库参数,根据注释设置数据库连接参数,注意不要随意更改DB_NAME

vim ./creator/Creator/Conf/Conf.php

$conf = array(

//pdo数据库配置文件

'PDO' => [

'DB_TYPE' => 'mysql', //数据库类型

'DB_HOST' => '127.0.0.1', //服务器地址

'DB_PORT' => '3306', //端口

'DB_USER' => 'root', //用户名

'DB_PWD' => '123456root', //密码

'DB_NAME' => DB_NAME, //数据库名称

'DB_CHARSET' => 'utf8', //数据库编码

],

//基础配置

'FRAME' => FRAME, //框架

//文件注释

'NOTE' => [

'AUTHOR' => 'chenzhiwen', //文件头作者

],

);

修改适合你的odp参数

可修改的部分(以dao为例):

分表操作参数 -p

生成文件路径

默认继承的父类

默认的DB_NAME

默认的DB

默认的日志文件存储

默认的取模分表分母数

默认的分表类型

默认的JSON类型CLOUMN_COMMENT标识符

vim ./creator/Creator/Conf/OdpConf/Conf.php

return array(

//odp的模板类型

'TEMPLATES' => [

'dao' => 'dao.tmpl',

'dataservice' => 'dataservice.tmpl',

'pageservice' => 'pageservice.tmpl',

'controller' => 'controller.tmpl',

'action' => 'action.tmpl',

],

'DB' => [

'PREFIX' => 'tbl',

],

//odp文件路径分割

'DS' => '_',

//dao层相关配置

'DAO' => [

'BASE_CONFIG' => [

//分表

'partion' => [

'MUL' => '-pl',//固定大小分表

'MOD' => '-pd',//取模分表

],

],

'DOCUMENT_PATH' => '../desktc/models/', //基础路径

'PARENT_CLASS' => 'Hk_Common_BaseDao', //父类

'DB_NAME' => 'flipped/zyb_flipped', //DB_NAME

'DB' => 'Hk_Service_Db::getDB( $this->_dbName )', //DB

'LOG_FILE' => 'Hkzb_Util_FuDao::DBLOG_FUDAO', //日志文件

'TYPE_JSON' => 'Hk_Service_Db::TYPE_JSON', //JSON

'TYPE_JSON_FLAG' => 'json', //JSON标示符

'TYPES_MAP' => [

'bigint' => 'Hk_Service_Db::TYPE_INT',

'blob' => 'Hk_Service_Db::TYPE_INT',

'char' => 'Hk_Service_Db::TYPE_STR',

'date' => 'Hk_Service_Db::TYPE_STR',

'datetime' => 'Hk_Service_Db::TYPE_STR',

'int' => 'Hk_Service_Db::TYPE_INT',

'longblob' => 'Hk_Service_Db::TYPE_INT',

'mediumblob' => 'Hk_Service_Db::TYPE_INT',

'smallint' => 'Hk_Service_Db::TYPE_INT',

'text' => 'Hk_Service_Db::TYPE_STR',

'time' => 'Hk_Service_Db::TYPE_STR',

'timestamp' => 'Hk_Service_Db::TYPE_STR',

'tinyint' => 'Hk_Service_Db::TYPE_INT',

'varchar' => 'Hk_Service_Db::TYPE_STR',

],

'FILE_NAME_TEMP'=> [

'Fz' => 'phplib',

],

'PARTION' => [

//取模分表

'MOD' => [

'PARTION_NUM' => '20',

'PARTION_TYPE' => 'self::TYPE_TABLE_PARTION_MOD',

],

//固定大小分表

'MUL' => [

'PARTION_NUM' => '3000',

'PARTION_TYPE' => 'self::TYPE_TABLE_PARTION_MUL',

],

],

],

//dataservice层相关配置

'DATASERVICE' => [

'DOCUMENT_PATH'=> '../desktc/models/',//ROOT_PATH . 'Fz' . DS

'PARENT_CLASS' => '', //父类

],

//pageservice层相关配置

'PAGESERVICE' => [

'DOCUMENT_PATH'=> '../desktc/models/',//ROOT_PATH . 'Fz' . DS

'PARENT_CLASS' => '', //父类

],

//构建模块

'MODULE' => [

'DOCUMENT_PATH' => '../',

'BASE_CONFIG' => [

'NAMESPACE' => '-c'

],

],

//all

'ALL' => [

'DOCUMENT_PATH' => [

'ACTION' => '../desktc/',

'CONTROLLER' => '../desktc/',

'DAO' => '../desktc/models/dao/', //../phplib/dao/

'DATASERVICE' => '../desktc/models/service/data/', //../phplib/ds/

'PAGESERVICE' => '../desktc/models/service/page/',

]

],

//controller

'CONTROLLER' => [

'DOCUMENT_PATH' => '../desktc/',

'PARENT_CLASS' => 'Ap_Controller_Abstract', //父类

],

//action

'ACTION' => [

'DOCUMENT_PATH' => '../desktc/',

'PARENT_CLASS' => 'DeskTc_Action_Base', //父类

'BASE_CONFIG' => [

'MIDDLE_NAME' => '-n',

],

],

);

参与贡献

Fork 本项目

新建 Feat_xxx 分支

提交代码

新建 Pull Request

码云特技

使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md

GVP 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目

odp 加固 mysql_creator是一款为php框架odp的脚手架工具相关推荐

  1. odp 加固 mysql 代码_将数组绑定到 ODP.NET 数据库命令

    在阅读此方法文档后,您应能够: 使用 ODP.NET 调用数据库存储过程 使用 ODP.NET 的数组绑定功能 前提假设读者熟悉 Visual Studio.NET,还了解 ODP.NET 和数据库的 ...

  2. 易开发是一款帮助开发人员快速开发的工具,功能包括界面分析,页面信息,加固脱壳,支持 Android9.0

    DeveloperHelper 项目地址:WrBug/DeveloperHelper  简介:?易开发是一款帮助开发人员快速开发的工具,功能包括界面分析,页面信息,加固脱壳,支持 Android9.0 ...

  3. odp 加固 mysql_C#使用ODP.NET连接oracle数据库

    ODP.NET:Oracle Data Provider for .NET 分为三种: ODP.NET, Managed Driver 不需要安装oracle客户端 ODP.NET,Unmanaged ...

  4. Python培训教程分享:10款超好用的Python开发工具

    学会Python技术后,我们在参加工作的时候如果能有辅助工具的话,那么会很大程度的提高我们的工作效率,那么Python都有哪些好用的开发工具呢?下面小编就为大家详细的介绍一下10款超好用的Python ...

  5. 10款无需编程的App DIY开发工具

    10款无需编程的App DIY开发工具 你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App  DIY开发工具.DIY开发工具不仅节省了开发时 ...

  6. linux的dns查询工具,一款超强的统计DNS查询的工具--DNSTOP

    一款超强的统计DNS查询的工具--DNSTOP 在维护DNS服务器时,偶们希望知道到底是哪些用户在使用偶们的DNS服务器,同时也希望能对DNS查询做一个统计.一般情况下,偶们可以使用 tcpdump ...

  7. 学python用什么软件开发-5款Python程序员高频使用开发工具推荐

    很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,我就把Python程序员使用 ...

  8. 移动測试技术保护源码!解码全球首款移动端白盒測试工具ThreadingTest (文章转自己主动点科技)...

    作者 智晓锋 - 2014/07/14 自从斯诺登曝光美监听丑闻事件之后,我国政府就将信息安全问题上升到了国家安全的高度.基于此.国内的一家创业公司推出了智能型Android真机白盒測试以及开发辅助类 ...

  9. php 框架 路由解析,来!狂撸一款PHP现代化框架 (路由的设计)

    前言 上一篇的标题改了一下,以一.二.三为章节对读者来说是种困扰,现在的标题是依照项目进度来编写的.上篇文章地址为 https://segmentfault.com/a/11... 这一系列文章并不准 ...

最新文章

  1. ceil--朝正无穷大方向取整
  2. 用友服务器系统版本低,客户端版本低于服务器端,请升级后再登录
  3. 迈向现代化的 .Net 配置指北
  4. C# 学习之路--百度网盘爬虫设计与实现(一)
  5. 智慧交通day02-车流量检测实现03:辅助功能(交并比and候选框的表现形式)
  6. react jest测试_如何设置Jest和Enzyme来测试React Native应用
  7. 【matlab】:matlab中不断的出现计算过程怎么办
  8. IDEA远程调试Java代码
  9. 启动tomcat8时出现springfox.documentation.spi.service.contexts.OperationContext.headers()Ljava/util/Set;错误
  10. 如何向公众号添加的H5页面的链接(已解决)
  11. 昆明市计算机专业职称评定,云南省专业技术人员评聘专业技术职务实施计算机职称考试的通知...
  12. 【整理】童鞋尺码大全--方便查找对照
  13. SBX(Simulated binary crossover)模拟二进制交叉算子和DE(differential evolution)差分进化算子...
  14. 3D-SLAM自搭平台 主动阿克曼 + RS16 + LPMS_IMU LEGO_LOAM 建图
  15. Dynamic OCT 和 Dynamic ODT 详细说明
  16. 基于Halcon的MLP(多层感知神经网络)分类器分类操作实例
  17. MFC中CString转为char*;char*转为CString
  18. 使用open live writer客户端写博客(亲测有效)
  19. java中流转pdf_Java中的PDX到PDF转换器
  20. Java程序员跳槽涨薪面试心得

热门文章

  1. Android平台实现Unity3D下RTMP推送
  2. Mysql 5.7 的‘虚拟列’是做什么?
  3. MySQL-locate()函数
  4. 开发 数组里面的字典_Redis字典结构与rehash解读
  5. python代码html显示数据_通过AJAX success方法以html格式显示数据
  6. python random函数_Python随机函数random使用详解
  7. c++将小写转换为大写函数_必须掌握的基础函数组合应用技巧,提高效率,准时下班...
  8. mysql5.7主从全备恢复_Mysql5.7—运维常用备份方式(超全)
  9. JVM005_synchronized、同步指令、管程、MESA
  10. pb11 打印 自定义纸张_pb自定义纸张(连续走纸)