做公号很久了,听到粉丝问的最多的问题就是:有没有新的完整的项目,因为现在很多流传的项目都太老了,实战意义不是很强。很多程序员每项技术单独拿出来有可能很厉害,例如:springcloud、springboot、redis、nginx、mysql、rabbitMq等,但是普遍缺乏将所有的这些技术整合到一起,从前端到后端,从开发到部署上线,从每个知识点到整体的设计。本次分享不是分享项目而是教你如何开发一个项目细节流程。
项目介绍
项目技术栈
基于springBoot2.x、springCloud采用前后端分离的架构;
利用FastDFS作为分布式文件存储系统,Canal实现数据同步,监控数据变化;
Elasticsearch+IK+Kibana实现商品搜索功能;
Spring Security Oauth2 JWT实现微服务统一认证和资源授权;
利用RabbitMq实现异步解耦;
Seata实现分布式事务等,从而打造一个高可用的分布式电商系统。
技术架构
项目截图
资料介绍
项目源码
项目教程文档(500页)
Java最全面试题库」;
在下面公众号后台回复关键字「mall」
回复「mall」即可获取上面所有资料
就在前两天,阿里发布了最新的《阿里巴巴Java开发手册》嵩山版!它结合作者的开发经验和架构历程,提炼阿里巴巴集团技术团队的集体编程经验和软件设计智慧,浓缩成为立体的编程规范和最佳实践。
主要更新
这次《嵩山版》手册新增的最主要内容是:首次发布前后端开发的 14条规约,包括:
1、【强制】前后端交互的 API,需要明确协议、域名、路径、请求方法、请求内容、状态码、响 应体。
2、【强制】前后端数据列表相关的接口返回,如果为空,则返回空数组
[]
或空集合{}
。3、【强制】服务端发生错误时,返回给前端的响应信息必须包含
HTTP
状态码,errorCode
、errorMessage
、用户提示信息四个部分。4、【强制】在前后端交互的
JSON
格式数据中,所有的key
必须为小写字母开始的lowerCamelCase
风格,符合英文表达习惯,且表意完整。5、【强制】
errorMessage
是前后端错误追踪机制的体现,可以在前端输出到type="hidden"
文字类控件中,或者用户端的日志中,帮助我们快速地定位出问题。6、【强制】对于需要使用超大整数的场景,服务端一律使用
String
字符串类型返回,禁止使用Long
类型。7、【强制】
HTTP
请求通过URL
传递参数时,不能超过2048
字节。8、【强制】
HTTP
请求通过body
传递内容时,必须控制长度,超出最大长度后,后端解析会出 错。9、【强制】在翻页场景中,用户输入参数的小于
1
,则前端返回第一页参数给后端;后端发现用 户输入的参数大于总页数,直接返回最后一页。10、【强制】服务器内部重定向必须使用
forward
;外部重定向地址必须使用URL
统一代理模块 生成,否则会因线上采用HTTPS
协议而导致浏览器提示“不安全”,并且还会带来URL
维护不一致的问题。11、【推荐】服务器返回信息必须被标记是否可以缓存,如果缓存,客户端可能会重用之前的请求 结果。
12、【推荐】服务端返回的数据,使用
JSON
格式而非XML
。13、【推荐】前后端的时间格式统一为
"yyyy-MM-dd HH:mm:ss"
,统一为GMT
。14、【参考】在接口路径中不要加入版本号,版本控制在
HTTP
头信息中体现,有利于向前兼容。
的确,这也是平时开发中,前、后端开发人员容易发生扯皮的交界点,这次《嵩山版》手册进行了规约,还是很香的!
Java进阶架构师
在Java进阶架构师后台回复关键词:阿里
热门跟贴