一.为什么选择SpringBoot Spring Boot是由Pivotal团队提供的全新框架,被很多业内资深人士认为是可能改变游戏规则的新项目.早期我们搭建一个SSH或者Spring Web应用,需要非常繁琐的步骤,比如配置web.xml,配置数据库连接,配置事务,配置日志,配置Tomcat,装配Bean,声明和配置切面等等等等,如果项目过大多人协作各种冗长啰嗦的配置让人烦不胜烦,这么多年下来,给人一种Java就是大型配置文件的感觉. SpringBoot的设计目的是用来简化新Spring应用…
本文主要读者 引言 REST是什么 统一接口 基于资源 通过表征来操作资源 自描述的信息 超媒体即应用状态引擎(HATEOAS) 无状态 可缓存 C-S架构 分层系统 按需编码(可选) REST快速提示 使用HTTP动词表示一些含义 合理的资源名 XML和JSON 创建适当粒度的资源 考虑连通性 定义 幂等性 安全 HTTP动词 GET PUT POST PUT和POST的创建比较 DELETE 资源命名 资源URI示例 资源命名的反例 复数 返回表征 资源通过链接的可发现性(HATEOAS续)…
原文:https://www.cnblogs.com/jaxu/p/7908111.html 译文作者:Jaxu 英文原文:https://files-cdn.cnblogs.com/files/jaxu/RESTful_Best_Practices_v1_2.pdf 本文主要读者 该最佳实践文档适用于对RESTful Web服务感兴趣的开发人员,该服务为跨多个服务的组件提供了较高的可靠性和一致性.按照本文的指导,可快速.广泛.公开地为内外部客户采用. 本文中的指导原则同样适用于工程师们,他们希…
看过很多RESTful相关的文章总结,参齐不齐,结合工作中的使用,非常有必要归纳一下关于RESTful架构方式了,RESTful只是一种架构方式的约束,给出一种约定的标准,完全严格遵守RESTful标准并不是很多,也没有必要.但是在实际运用中,有RESTful标准可以参考,是十分有必要的. 实际上在工作中对api接口规范.命名规则.返回值.授权验证等进行一定的约束,一般的项目api只要易测试.足够安全.风格一致可读性强.没有歧义调用方便我觉得已经足够了,接口是给开发人员看的,也不是给普通用户去调…
LBPL 这一个基于Asp.net. quartz.net 快速开发定时服务的插件化项目 由于在实际项目开发中需要做定时服务的操作,大体上可以理解为:需要动态化监控定时任务的调度系统. 为了实现快速开发.简单明了完成一个服务,不再繁琐的进行各种代码耦合度强的操作,设计了一个以暂时以quartz.net 为服务载体,插件化开发的模式. github地址:https://github.com/linbin524/LBPL 由于工作比较忙,暂时更新部分,后续会将相关的开发文档更新. 主要开发流程 1.…
不少关注我博客的朋友都知道我在2009年左右开发过一个名为Apworks的企业级应用程序开发框架,旨在为分布式企业系统软件开发提供面向领域驱动(DDD)的框架级别的解决方案,并对多种系统架构风格提供支持.这个框架的开发和维护我坚持了很久,一直到2015年,我都一直在不停地重构这个项目.目前这个项目在Github上也得到了将近260的推荐数,很多对技术感兴趣的朋友也一直与我保持着联系和交流,甚至还有爱好者自发组成了技术讨论群,专门讨论分享Apworks框架. 然而,随着软件开发技术和.NET的发展…
增强 SpringBoot 快速开发工具 项目地址:https://gitee.com/sanri/web-ui 优点:这是一个 web 通用配置的组件,即插即用,可用于新项目或私活.是对 SpringBoot 快速开发的一种补充,它内置了大量的配置来简化开发,遵循约定高于配置原则. 它解决的问题: 固定了输入输出格式 对于 Controller 中的返回不用关心包装类型,返回你所需要的类型就可以了,对于 insert 单表操作可以直接返回 void 如果项目中出现业务操作不符合或调用第三方出错…
Typescript 开发环境的最佳实践 0️⃣ git init(略) 1️⃣️️ 初始化:$ yarn add -D ts-node typescript 2️⃣ 生成 tsconfig.json:$ yarn tsc -init 3️⃣ 配置 TSLint:$ yarn add tslint -D 4️⃣ 生成 tslint.json:$ yarn tslint --init 5️⃣ 创建 src/index.ts:$ mkdir src && echo "console.…
可以通过http://start.spring.io/构建一个SpringBoot的脚手架项目 一.微服务 1.SpringBoot是一个可使用Java构建微服务的微框架. 2.微服务就是要倡导大家尽量将功能进行拆分,将服务粒度做小,使之可以独立承担对外服务的职责,沿着这个思路开发和交付的软件服务实体就叫做“微服务”. 3.微服务的好处 (1)独立,独立,还是独立.每一个微服务都是一个小王国,跳出了“大一统”(Monolith)王国的统治,开始从各个层面打造自己的独立能力,从而保障自己的小王国可…
一.概述 因为REST是一种架构风格而不是严格的标准,所以它可以灵活地实现.由于这种灵活性和结构自由度,对设计最佳实践也有很大的差异. API的方向是从应用程序开发人员的角度考虑设计选择. 幂等性 不要从字面意思来理解什么是幂等性,恰恰相反,这与某些功能紊乱的领域无关.下面是来自维基百科的解释: 在计算机科学中,术语幂等用于更全面地描述一个操作,一次或多次执行该操作产生的结果是一致的.根据应用的上下文,这可能有不同的含义.例如,在方法或者子例程调用具有副作用的情况下,意味着在第一调用之后被修改的…