Spring 历史 说起 Spring Boot 我们不得不先了解一下 Spring 这个企业,不仅因为 Spring Boot 来源于 Spirng 大家族,而且 Spring Boot 的诞生和 Sping 框架的发展息息相关。 时间回到2002年,当时正是 Java EE 和 EJB 大行其道的时候,很多知名公司都是采用此技术方案进行项目开发。这时候有一个美国的小伙子认为 EJB 太过臃肿,并不是所有的项目都需要使用 EJB 这种大型框架,应该会有一种更好的方案来解决这个问题。 为了证明他的想法是正确的,于2…

2019年10月12日 0条评论 420点热度 0人点赞 阅读全文

背景 数据库中有一张叫后宫佳丽的表,每天都有几百万新的小姐姐插到表中,光阴荏苒,夜以继日,日久生情,时间长了,表中就有了几十亿的小姐姐数据,看到几十亿的小姐姐,每到晚上,我可愁死了,这么多小姐姐,我翻张牌呢? 办法当然是精兵简政,删除那些age>18的,给年轻的小姐姐们留位置... 于是我在数据库中添加了一个定时执行的小程序,每到周日,就自动运行如下的脚本 delete from '后宫佳丽' where age>18 一开始还自我感觉良好,后面我就发现不对了,每到周日,这个脚本一执行就是一整天,运行的…

2019年10月09日 0条评论 479点热度 0人点赞 阅读全文

本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景,因此不会涉及具体如何使用组件等细节。 要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对的是单体应用,即将所有功能都打包成在一个独立单元的应用程序。从单体应用到微服务并不是一蹴而就的,这是一个逐渐演变的过程。本文将以一个网上超市应用为例来说明这一过程。 最初的需求 几年前,小明和小皮一起创业做网上超市。小明负责程序开发,小皮负责其他事宜。当时互联网还不发达,网上超市还是蓝海。只要…

2019年10月09日 0条评论 511点热度 0人点赞 阅读全文

1、背景 说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人开发代码都没有注意到的地方,反正功能也能用,至于放哪无所谓呗。这样往往造成后面代码无法复用,层级关系混乱,对后续代码的维护非常麻烦。 的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。 但是在真正的团…

2019年10月08日 0条评论 537点热度 0人点赞 阅读全文

相信很多人都会有这样的疑问吧,看各种框架的代码看着感(根)觉(本)特(看)别(不)溜(懂),而自己写出来的代码怎么看怎么不顺眼,为什么呢? 规范!!!规范!!!规范!!! 是的,一切都是规范问题,如果你看各种框架代码看得多了你会发现,他们好像大都是一个套路,一个说不上来的套路,看起来就很舒服,就是因为他们都有自己的一套规范,而且很多规范其实都是JCP制定或者JCP认可的规范,那么如何规范的写代码呢?下面介绍几个入门级的技巧。 一、善用@Override注解。@Override应该是java代码里最常见的一个注解了,…

2019年08月21日 0条评论 803点热度 0人点赞 阅读全文

小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了。 随着央视诗词大会的热播,小史开始对诗词感兴趣,最喜欢的就是飞花令的环节。 但是由于小史很久没有背过诗词了,飞一个字很难说出一句,很多之前很熟悉的诗句也想不起来。 倒排索引 吕老师:但是我让你说出带“前”字的诗句,由于没有索引,你只能遍历脑海中所有诗词,当你的脑海中诗词量大的时候,就很难在短时间内得到结果了。 索引量爆炸 搜索引擎原理 Elasticsearch 简介 吕老师:但是 Lucene 还是一个库,必须…

2019年08月15日 0条评论 793点热度 0人点赞 阅读全文

大纲 一、前言: 先来观察这两张图,第一张访问域名http://www.12306.cn,谷歌浏览器提示不安全链接,第二张是https://kyfw.12306.cn/otn/regist/init,浏览器显示安全,为什么会这样子呢?2017年1月发布的Chrome 56浏览器开始把收集密码或信用卡数据的HTTP页面标记为“不安全”,若用户使用2017年10月推出的Chrome 62,带有输入数据的HTTP页面和所有以无痕模式浏览的HTTP页面都会被标记为“不安全”,此外,苹果公司强制所有iOS App在2017年…

2019年08月15日 0条评论 740点热度 0人点赞 阅读全文

1.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。 地址:https://gith…

2019年07月25日 0条评论 790点热度 0人点赞 阅读全文

转载自:https://docs.microsoft.com/zh-cn/visualstudio/mac/building-and-cleaning-projects-and-solutions?view=vsmac-2019 本文为Mac版,Windows版:在 Visual Studio 中生成和清理项目和解决方案 Windows版 生成、重新生成或清理整个解决方案 生成、重新生成或清理整个解决方案: 在 Solution Pad 中选择“解决方案”节点: 在菜单栏中选择“生成菜单”,然后选择以下选项之一: …

2019年06月26日 0条评论 769点热度 0人点赞 阅读全文

转载自:https://docs.microsoft.com/zh-cn/visualstudio/ide/building-and-cleaning-projects-and-solutions-in-visual-studio?view=vs-2017 本文为Windows版,Mac版:在 Visual Studio 中生成和清理项目和解决方案 Mac版 备注: 你的 Visual Studio 版本中的 UI 可能与此主题中描述的有所不同,具体取决于现用的设置。 若要更改设置,例如“常规”或“Visual C…

2019年06月26日 0条评论 745点热度 0人点赞 阅读全文