版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微服务开发手册1 开发说明所有服务均基J' spring boot框架开发。Spring boot内嵌了 tomcat服务器,无需生 成war包,并简化了maven 配置,能够让开发者快速入手 spring 的开发。服务的接口定义需严格符合restful规范。rest规范参考第2节rest api接口规范所有服务都需要在注册服务上注册,否则不能被其他服务所调用。同时平台也能够实时监测服务的状态,能够及时预警及调度资源。 所有服务的配置信息统一保存于gitlab上,并通过配置服务获取配置。 对数据库的操作统一采用MyBatis框架。MyBotis是个支持普通SQL查询,存储过程和高级映射
2、的优秀持久层框架。Spring boot也提供了 mybatis的集成方案,可以很快捷地整合mybatis到项目中。 包名约定:所有包均以服务名为父包名,如,后面再跟具体模块名称作为子包名。所有项目基于来开发。项目的管理与构建采用maven,代码统一托管于gitlab仓库。2. rest api 接口规范spring boot接口设计需符合restful 风格。在RESTful架构中,每个网址代表一种资 源(resource ), 所以网址中不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。而客户端要执行某种类型的操作,需要根据http的操作协议来决定。HTTP提供了常用的几种操
3、作,如下表:动作说明GET(SELECT从服务器取出资源(一项或多项)POST( CREATE在服务器新建一个资源。PUT(UPDATE在服务器更新资源(客户端提供改变后的完整资 源)。PATCH( UPDATE在服务器更新资源(客户端提供改变的属性)。DELETE( DELETE从服务器删除资源。对数据库的增删改查操作,应该严格遵守上面定义的五种HTTP动作。对于更新动作,参数通过requestbody来传递,格式为jsono服务端返回数据格式也均为jsono服务端返回数据对象约定:public class Unifylnfo private int code;roperties</i
4、 nclude><in clude>*/*xml</i nclude></i ncludes><filteri ng>false</filteri ng></resource></resources><plugi ns><plug in><groupld><artifactld>spri ngrboot-mdve n-plugi n</artifactld><con figurati on><fork>true</f
5、ork></c on figurati on></plugi n><plug in><groupld></groupld><artifactld>dockermave n-plugi n</artifactld><version><con figurati on><imageName><dockerDirectory>src/ma in/docker</dockerDirectory><pushlmage>true</pushl
6、mage><resources><resource>targetPath>/</targetPath><directory>$</resource></resources></con figurati on></plugi n></plug ins>在src/main/下建立docker目录,并新建Dockerfile ,内容女口 F:FROM java:8VOLUME /tmpADDEXPOSE 8080CMD java -jardocker当程序经过测试并提交到 gitl
7、ab后,jenkins将口动构建并扌J包成docker仓库。同时jenkins会通知远程服务下载该镜像并重新运行。3.集成 mybatis所有数据库操作采用Mybatis来管理。集成Mybatis关键配置如下:添加依赖<dependency ><groupld ></ artifactld ><i nclude>$<dependency >vgroupld >vartifactld >mybatis_spri ngboot"starter"testvversion ></ dependenc
8、y ><!以mysql数据库为例一><dependency >vgroupld >mysql </ groupId >vartifactld>mysql-c onn ectorjava</ artifactld >vversion ></ dependency >(托管于gitldb上,由配置服务统一管理)主要配置如下: 二classpath:&characterE ncod in g=utf-8镜像发布到远程资源的配置结构如下图:其中内容:v! DOCTYPEconfigurationPUBLIC &
9、quot;一 ropertiesv/ include >vinclude >*/*x v/ include >v/ includes > vfiltering >false v/ filtering</ resource ></ resources > vplugins >vplugin ><groupId >vartifactld >spr in g-boot-mave nplugi nv/artifactld ><con figurati on >vfork >true </
10、fork ></ con figurati on ></ plugin ><plugin ><groupId ></groupld ><artifactld >dockermave nTlugi n</ artifactld ><version ><configuration<imageName>vdockerDirectory >src/ma in /docker </ dockerDirectory >vpushlmage >true </ pushimage >vresources >vresource >vtargetPath >/ </ targetPath ><include >$vdirectory >
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年合肥市蜀山区笔架街道社区卫生服务中心劳务派遣(导医岗)招聘5名考试参考题库及答案详解
- 2026四川攀枝花市西区玉泉街道办事处服务类非全日制托底岗位招募8人笔试备考题库及答案详解
- 2026端午节校长国旗下讲话:粽叶凝初心少年担使命
- 2026延安市黄陵县中心卫生院院长选拔笔试备考题库及答案详解
- 2026北京科技大学顺德创新学院与广东瀚秋智能装备股份有限公司联合招收博士后招聘2人笔试参考题库及答案详解
- 2026广西职业师范学院第二批公开招聘校聘专任教师10人考试参考题库及答案详解
- 复印设备制造工岗前纪律考核试卷含答案
- 2026西藏阿里地区噶尔县住房和城乡建设局招专职聘用制消防工程师1人考试参考题库及答案详解
- 旅游团队领队安全生产能力测试考核试卷含答案
- 2026陆军第九五三医院(重庆新桥医院日喀则分院)社会招聘2人考试参考题库及答案详解
- 2026年广东省汕头市龙湖区中考一模考试地理试题(含答案)
- 抗凝剂皮下注射技术临床实践指南
- 山西交控集团2026笔试真题
- 2025年四川省绵阳市地理生物会考真题试卷+解析及答案
- 施工工地围蔽施工方案(3篇)
- 2026年南开大学项目管理概论习题题库试题参考答案详解
- 2026届山东济南市历下区中考三模生物试题含解析
- 2026年河北省中考麒麟卷生物(六)及答案
- 山东省青岛市2024-2025学年高一年级下册7月期末学业水平检测 化学试题(原卷版)
- 《船舶防台风指南(试行)》
- 隧道二衬安全培训
评论
0/150
提交评论