1、Spring应用开发常见包命名规范

  • controller:控制器
  • service:服务-接口
  • impl:服务-实现
  • integration
  • sao:调用其他模块的,把feign的调用放到这个下面
  • web:供前端调用
  • remote:调用外部接口(其他模块提供的接口)
  • api:各模块间的调用(对外的接口)
  • openapi:对外的接口
  • dao:持久层/mybatis接口
  • entity:数据库实体
  • mapper:持久层/mybatis实现
  • vo:前端页面到controller的参数对象
  • dto:调用接口传递使用(入参/出参)
  • bo:在service层使用
  • po:mapper数据库操作入参
  • common:公共组件
  • config:配置类
  • utils:工具类
  • constant:常量
  • pojo命名:统一都是首字母大写

    比如:PoDetailVO,PoDetailDTO,PoDetailBO

常用:

  Bo : 前端请求/外部请求参数(入参),controller层
  Po:service层

包目录结构示例:

1、提供给前端或者外部接口调用都是Controller。

2、remote包:@FeignClient 注解web接口映射(与外部接口Controller方法签名保持一致)

  eg:@FeignClient(value = "ps",configuration = PSClientFallBlockFactory.class)

  value是eruka上的服务名

  --->接口相互调用,参数保持一致。

3、提供web接口的服务,一般将对外web接口写在controller api包中

  --->eg:/ums/src/main/java/com/ppc/ibc/ums/pcf/controller/api/ApiUserInfoController.java

Spring应用开发常见规范的更多相关文章

  1. spring aop开发常见错误

    1. Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreExcepti ...

  2. 使用 Spring HATEOAS 开发 REST 服务--转

    原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-SpringHATEOAS/index.html?ca=drs-&utm_source ...

  3. 使用 Spring HATEOAS 开发 REST 服务

    使用 Spring HATEOAS 开发 REST 服务 学习博客:https://www.ibm.com/developerworks/cn/java/j-lo-SpringHATEOAS/ htt ...

  4. Java避坑宝典《Java业务开发常见错误100例》上线了

    写这个专栏的缘起 之前我写过一篇博客:<朱晔的互联网架构实践心得S2E2:写业务代码最容易掉的10种坑>,引起的关注还是挺多的.后来和极客时间的编辑一拍即合决定以这个为题写一个专栏.其实所 ...

  5. Android开发代码规范(转)

    Android开发代码规范 1.命名基本原则    在面向对象编程中,对于类,对象,方法,变量等方面的命名是非常有技巧的.比如,大小写的区分,使用不同字母开头等等.但究其本,追其源,在为一个资源其名称 ...

  6. java开发命名规范(转载)

    java开发命名规范 使用前注意事项: 1.  由于Java面向对象编程的特性, 在命名时应尽量选择名词 2.  驼峰命名法(Camel-Case): 当变量名或函式名是由一个或多个单字连结在一起,而 ...

  7. Spring Boot——开发新一代Spring应用

    Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系.随着Spring 3.0的发布,Spring IO团队逐渐开 ...

  8. iOS扩展——Objective-C开发编程规范

    最近准备开始系统学习一个完整项目的开发流程和思路,在此之前,我们需要对iOS的开发变成规范进行更系统和详尽的学习,随意对编程规范进行了整理和学习.本文内容主要转载自:Objective-C-Codin ...

  9. Spring MVC + Spring + Mybitis开发Java Web程序基础

    Spring MVC + Spring + Mybitis是除了SSH外的另外一种常见的web框架组合. Java web开发和普通的Java应用程序开发是不太一样的,下面是一个Java web开发在 ...

随机推荐

  1. 自已的sql server练习小记

    print getdate(); print datediff(year,'1987-09-13',getdate()) select * from CallRecords select top 5 ...

  2. GCD - Extreme (II) UVA - 11426 数学

    Given the value of N , you will have to nd the value of G . The de nition of G is given below: G = i ...

  3. edX MITx: 6.00.1x Introduction to Computer Science and Programming Using Python 课程 Week 1: Python Basics Problem Set 1 Problem 3

    Assume s is a string of lower case characters. Write a program that prints the longest substring of  ...

  4. bzoj3252 攻略 dfs序+线段树

    题目传送门 题目大意:给出一棵树,1为根节点,每个节点都有权值,每个叶子节点都是一个游戏的结局,选择k个游戏结局,使得权值总和最大,同一个节点不会被重复计算. 思路:这道题最关键的是要想到一个性质,就 ...

  5. [转] 用Python建立最简单的web服务器

    [From] http://www.cnblogs.com/xuxn/archive/2011/02/14/build-simple-web-server-with-python.html 利用Pyt ...

  6. ndoejs创建多重文件夹

    function mkdir(filepath){ var path=require("path") if(!fs.existsSync(path.dirname(filepath ...

  7. PIE SDK矢量数据空间索引的创建

    1. 功能简介 空间索引的使用便于数据的查询:所以在创建矢量数据的时候创建空间索引,下面对矢量数据如何创建空间索引进行功能介绍. 2. 功能实现说明 2.1. 实现思路及原理说明 第一步 创建矢量要素 ...

  8. gulp优化hexo方法

    gulp通过对站点使用的静态资源进行压缩,来优化网站的访问速度. 首先安装gulp以及所需要的模块: npm install gulp -g npm install gulp-htmlclean gu ...

  9. 让 framset 框架中的页面全屏显示

    <script type="text/javascript"> window.onload=function(){ if(window.parent!=window){ ...

  10. 3、java内存模型特点

    java内存模型是围绕着在并发过程中如何处理原子性,可见性跟有序性这三个问题来建立的.先看一下这三个特性: 1.原子性 由java内存模型来直接保证的原子性变量操作就是上文2中提到的8种基本操作,我们 ...