基于webman实现的服务层框架-webman-biz-framework
简介
webman的基础上扩展的一个服务层框架,基于分层体系结构的代码模式.
如果觉得有用,可以帮我在webman-biz-framework点个小星星哟,也希望大家交流
分层体系结构的代码模式
什么是分层体系??为什么要用它?
我想上面的问题或许是看到这篇随笔的朋友想问的,下面我向大家发表下我个人的看法。
什么是分层体系?
代码架构模式上,mvc模式是编程历史长河中浓墨重彩的一种模式了,几乎每个后端程序员都是用过它。而我们的分层体系其实就是在原来的三层结构上建立的四层结构。可以看到我下面的代码编写说明写到的调用顺序。我们多的这一层叫:服务层(service层)。
为什么要用它?
说到为什么要用它,那就必须要知道它主要解决了什么问题。service层是我们业务逻辑的集中体现,它承接了上层(可以是控制器、resource、command等)的数据,然后在此进行业务逻辑编写,最后传递给下层(数据代理层)。最后一句话挽总:核心 就是 代码解耦,如果哪天你发现你用的某个框架不好了,你只需要换掉service的上层(比如controller),你的核心业务是可以一并快速迁移
送大家一篇文章DAO层和Service层的究极理解--这波我在大气层
教程
安装
git clone https://github.com/jiechengyang/webman-biz-framework
使用
- 新建数据表(以article表为例)
- 用工具生成表并复制好生成表的sql语句
- 配置系统参数
cp .env.example .env
#env里面主要配置的是数据库
生成迁移脚本
bin/phpmig generate article_table
#参考已有的migrate的脚本替换当前需要的sql语句
生成代码模板,快速crud
php console make:biz Article
# 如果需要自定义表名的可以:php console make:biz Article article2
# 代码调用顺序:资源层(command ,controller,reset resource)->服务层(service层)->数据层(Dao层)
基于webman实现的服务层框架-webman-biz-framework的更多相关文章
- 一篇文章带你掌握主流服务层框架——SpringMVC
一篇文章带你掌握主流服务层框架--SpringMVC 在之前的文章中我们已经学习了Spring的基本内容,SpringMVC隶属于Spring的一部分内容 但由于SpringMVC完全针对于服务层使用 ...
- 基于.NET平台常用的框架整理(转)
自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的 学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到, ...
- 【转】基于.NET平台常用的框架整理
自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累 了一些开源的组件,就目前想到的先整理于此,如果再想到, ...
- 基于.NET平台常用的框架整理
自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到,就 ...
- 基于Ruby的Watir-WebDriver自动化测试框架
基于Ruby的watir-webdriver自动化测试方案与实施(五) 基于Ruby的watir-webdriver自动化测试方案与实施(四) 基于Ruby的watir-webdriver自动 ...
- 基于thrift的微服务框架
前一阵开源过一个基于spring-boot的rest微服务框架,今天再来一篇基于thrift的微服务加框,thrift是啥就不多了,大家自行百度或参考我之前介绍thrift的文章, thrift不仅支 ...
- 艺萌文件上传下载及自动更新系统(基于networkComms开源TCP通信框架)
1.艺萌文件上传下载及自动更新系统,基于Winform技术,采用CS架构,开发工具为vs2010,.net2.0版本(可以很容易升级为3.5和4.0版本)开发语言c#. 本系统主要帮助客户学习基于TC ...
- 基于.NET平台常用的框架整理【转】
转:http://www.cnblogs.com/hgmyz/p/5313983.html 自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产 ...
- 【转】发布一个基于NGUI编写的UI框架
发布一个基于NGUI编写的UI框架 1.加载,显示,隐藏,关闭页面,根据标示获得相应界面实例 2.提供界面显示隐藏动画接口 3.单独界面层级,Collider,背景管理 4.根据存储的导航信息完成界面 ...
- 基于.NET的微软ORM框架视频教程(Entity Framework技术)
基于.NET的微软ORM框架视频教程(Entity Framework技术) 第一讲 ORM映射 第二讲 初识EntifyFramework框架 第三讲 LINQ表达式查询 第四讲 LINQ方法查询 ...
随机推荐
- 【转载】 一次生产环境的NOHTTPRESPONSEEXCEPTION异常的排查记录
https://www.freesion.com/article/41531004212/ 环境: jdk1.8+tomcat8+httpclient4.5.2 主要现象: 项目偶发出现org.apa ...
- Nlog基本使用
引入get包:NLog.Extensions.Logging 添加一个nlog.cofig文件 并设置属性,始终复制或较新则复制 <?xml version="1.0" en ...
- 常见的运行窗口命令和命令提示符(DOS)命令
常见的运行窗口命令和命令提示符(DOS)命令 常见的运行窗口命令 Win + R 打开运行窗口 基础应用程序启动命令 calc:启动计算器. notepad:打开记事本. mspaint:启动画图工具 ...
- ElasticSearch接口
DSL语法 DSL为ES过滤数据时的语法,可用于查询.删除等操作 基本构成 默认分页查询,size默认为10.ES查询默认最大文档数量限制为10000,可通过 index.max_result_win ...
- R语言画图常用参数
plot(x,xlab = "degree",ylab = "number of nodes",main = "mRNA degree distrib ...
- MYSQL查询:指定数值A表中B表没有对应数值
MYSQL查询:指定数值A表中B表没有对应数值 在A表根据指定的arrange列的33743439, 33734907,33563462, 33563939等数值查询数据,连接B表,最后查询的结果只返 ...
- Solution Set -「AGC 007~009」C~F
目录 「AGC 007C」Pushing Balls 「AGC 007D」Shik and Game 「AGC 007E」Shik and Travel ^ 「AGC 007F」Shik and Co ...
- ffmpeg简易播放器(1)--了解视频格式
视频帧 对于一份视频,实质上是多张图片高速播放形成的.每一张图片即为该视频的一帧.而每秒钟播放的图片张数便为所谓的帧率(Frame Rate/Frame Per Second).常见的帧率有24fps ...
- 使用Ollama
推荐 Ollama 本地运行大模型(LLM)完全指南 Ollama中文学习 应用 查看可支持的模型:https://ollama.com/library 查看运行中的模型 ollama ps 停止模型 ...
- arthas进行java应用不停服务情况下的class文件热部署更新
我们在工作的过程中会遇到java应用已经部署或升级投入使用,发现某个单元文件有bug需要修正,但是客户的应用目前不能停止,而且不能因为一个非致命的bug来进行整个平台的一次升级.我们需要进行单文件的更 ...