watermark

Springboot集成Swagger2

我们两清 提交于 2020-04-14 13:31:21
【推荐阅读】微服务还能火多久?>>> Swagger2简介 1.随项目自动生成强大RESTful API文档,减少工作量 2.API文档与代码整合在一起,便于同步更新API说明 3.页面测试功能来调试每个RESTful API springboot集成Swagger2步骤 1. 新建一个Springboot项目 2. 导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> 3. 编写控制器 @RestController public class Mycontroller {

Springboot实现QQ邮箱的发送

蹲街弑〆低调 提交于 2020-04-14 13:29:36
【推荐阅读】微服务还能火多久?>>> 准备工作 开启PO3/SMTP服务 打开qq邮箱>账户 记住这串授权码 会用到 实现步骤 创建一个Springboot项目 勾选web依赖 导入QQ邮件所需依赖 <!--qq邮件发送所需依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 配置application.properties #配置邮件消息 spring.mail.host=smtp.qq.com #发送邮件者信箱 spring.mail.username=xxxxxxxxx@qq.com #PO3/SMTP服务时邮箱的授权码 spring.mail.password=xxxxxxxxxxxxxxxx spring.mail.default-encoding=UTF-8 spring.mail.port=465 spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory spring.mail.properties.mail.debug=true 编写controller

玩安卓必须要掌握的性能优化之内存优化

两盒软妹~` 提交于 2020-04-14 13:26:30
【推荐阅读】微服务还能火多久?>>> 前言 这是我写的性能优化的第三篇文章,下面是另外两篇文章: 玩安卓必须要掌握的性能优化之内存泄漏 玩安卓必须要掌握的性能优化之APK极限压缩 正文 本篇文章准备详细说一下编码中需要注意的地方,养成良好的编码习惯。 第一点 数据类型 尽量不要使用比需求更占空间的基本数据类型,比如能用 int 就不使用 long,能用 float 就不使用 double,可以减少内存的开销,虽然几乎对程序产生不了太大影响,但是还是要尽量避免。 还有就是自动装箱尽量少用。 第二点 循环 循环尽量使用增强for循环(for each),少用迭代器(iterator) 第三点 数据结构与算法 这一点是最重要的,但也是最难的,其实也不难,关键看能不能坚持下来。每天看一道算法题,半年基本上就能提升非常大的一截。数组、链表、树、栈、图。。。。 还有一点是咱们经常使用的HashMap,写的时候非常自然,直接就写出来了,但是占用内存较大,Android官方为安卓开发者提供了SparseArray(key为整数),当数据量在千级以下可以使用,它的性能虽然不如HashMap但节约内存;千级以上还是使用我们熟悉的HashMap吧。 第四点 枚举优化 曾几何时,因为安卓官方二点几的一句话(图在下方),几乎所有的安卓性能优化中都会有这么一句,但我想说的是,随着硬件的提升

微信小程序 谈谈在大学初次写项目的体验

被刻印的时光 ゝ 提交于 2020-04-14 13:24:55
【推荐阅读】微服务还能火多久?>>> 已经近三周没写博客了,最近一直在忙着写一个项目,趁现在项目所用的服务器申请还在审核备案,写一篇博客,谈谈我在大学第一次写正规付费项目的体验哈哈。 一:写项目的前提 1.有良好的java基础 一般来说,写项目都是在大三才开始的,大一大二都是在打基础,那些基础课程,比如专业课 《C语言程序设计》、《C++程序设计》、《JAVA程序设计》、《数据结构》、《网页制作技术》、《数据库基础》、《移动应用开发》(Android开发),甚至是《办公自动化》;公共课比如《高等数学》、《离散数学》、《线性代数》...... 不说别的,写项目最最常用的《JAVA程序设计》、《数据库基础》总要会把,Java要理解类和对象、继承、多态、封装等等, 如果没有这些基础,相信没有老师愿意给你写项目的机会 ;数据库是99.9%的项目必备的模块,可以说,一个项目没有连数据库,根本就不叫项目,对数据库的基本sql语句,触发器,存储过程、游标总要会的吧? 2.熟悉前端的html+css+JavaScript基础 写项目前后端都要会,现在流行前后端分离,但是在大学里老师接的项目,以及我们未来工作时写的项目,难道真的会让我们只单独写前端,或者只单独写后端吗?我想,在广大中小公司,恐怕没人敢保证,而 html+css+JavaScript正式前端界公认的基础知识,无论是Ext

如何让你瞬间拥有百万粉丝 前端F12的那些装X小技巧

感情迁移 提交于 2020-04-14 13:22:58
【推荐阅读】微服务还能火多久?>>> 如何让你瞬间拥有百万粉丝 前端F12的那些装X小技巧 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为: 亓官劼的博客 , 亓官劼的博客2 。 本篇文章就来教你如何瞬间突破百万粉丝,细数前端那些装X的小技巧 开始之前,我们先丢张效果图出来,给大家先预览下效果。 下面我们就进入正题了,我们如何来实现这样一的效果吧。 首先这个图的数据呢是假的啦,这里我们只是修改了前端的数据,不可以刷新的。这里我们修改了数据,并且添加了我们需要的各种大神的图标~很多小伙伴们都会修改数值,但是不知道如何去添加这样的一个图片,这篇文章将带你来实现我们这样的一个效果图,带你在装X的路上越走越远! 修改数值   修改数值很多小伙伴都会啦,这里大多数浏览器我们按F12即可到我们的网页检查器界面,也是我们浏览器前端的一个调试页面。页面为: Safari浏览器的网页检查器的打开方式为: 再打开网页检查器之后,我们需要定位到我们需要修改的数据的位置,这里一个一个找当然是不存在的啦,博主太懒了!那我们怎么定位呢?我们网页检查器中有一个十字准星,有的浏览器是一个小箭头,点击一下,然后我们就进入到了选择元素的模式。 点击之后,我们再用鼠标点击我们需要修改的数据,即可跳转到我们html代码中的位置啦!  

【并发编程】 --- Reentrantlock源码解析2:公平锁加锁过程超详细解析

谁说胖子不能爱 提交于 2020-04-14 13:22:40
【推荐阅读】微服务还能火多久?>>> 文章目录 1 前情回顾 --- 同步方法交替执行时Reentrantlock公平锁的逻辑 2 线程t1抢到锁并且没释放的情况 2.1 线程t2、t3、t4......入队 --- addWaiter(Node.EXCLUSIVE), arg)方法 2.2 线程 t2、t3、t4...入队后 ---》自旋 + park 2.2.1 前置知识 --- Node数据结构介绍 2.2.2 线程 t2、t3、t4...入队后 ---》自旋 + park的具体流程 3 Reentrantlock公平锁加锁过程总结 源码地址: https://github.com/nieandsun/concurrent-study.git 1 前情回顾 — 同步方法交替执行时Reentrantlock公平锁的逻辑 前面一篇文章《 【并发编程】 — Reentrantlock源码解析1:同步方法交替执行的处理逻辑 》讲过无论是synchronized还是Lock锁, 让某块代码变为同步的本质 就是: 当一个线程执行该方法后,其他线程无法进入该方法,对应于Reentrantlock来说就是让其他线程的lock()方法无法正常返回。 那篇文章里讲过在方法交替执行时,Reentrantlock公平锁的主要逻辑如下,这里就不再过多叙述。 2 线程t1抢到锁并且没释放的情况 2.1

Spring-Cloud-Netflix-系统架构

风格不统一 提交于 2020-04-14 13:19:54
【推荐阅读】微服务还能火多久?>>> 目录 系统架构 概述 集中式架构 概述 特点 垂直拆分 概述 特点 系统架构分类 微服务 微服务的特点: 分布式服务: 微服务和分布式的区别: 微服务要面临的问题: springClould是什么 远程调用方式: RPC: Http: 模拟微服务: 使用nginx实现集群搭建 系统架构 概述 随着互联网的发展,网站应用的规模不断扩大。需求的激增,带来的是技术上的压力。 系统架构也因此也不断的演进、升级、迭代。 从单一应用,到垂直拆分,到分布式服务,到SOA,以及现在火热的微服务架构 集中式架构 概述 当网站流量很小时,只需一个应用 将所有功能都部署在一起,以减少部署节点和成本 从头到尾就一个工程,部署的时候 , 只需要打成一个war包 特点 代码耦合,开发维护困难 无法针对不同模块进行针对性优化 无法水平扩展 单点容错率低,并发能力差 垂直拆分 概述 当访问量逐渐增大,单一应用无法满足需求,此时为了应对更高的并发和业务需求,我们根据业务功能对系统进行拆分 特点 系统拆分实现了流量分担,解决了并发问题 可以针对不同模块进行优化 方便水平扩展,负载均衡,容错率提高 系统间相互独立,会有很多重复开发工作,影响开发效率 系统架构分类 微服务 微服务就是把原本臃肿的一个项目的所有模块拆分开来并做到互相没有关联,甚至可以不使用同一个数据库 微服务的特点:

Spring-Cloud-Netflix-系统架构

落爺英雄遲暮 提交于 2020-04-14 12:14:47
【推荐阅读】微服务还能火多久?>>> 目录 系统架构 概述 集中式架构 概述 特点 垂直拆分 概述 特点 系统架构分类 微服务 微服务的特点: 分布式服务: 微服务和分布式的区别: 微服务要面临的问题: springClould是什么 远程调用方式: RPC: Http: 模拟微服务: 使用nginx实现集群搭建 系统架构 概述 随着互联网的发展,网站应用的规模不断扩大。需求的激增,带来的是技术上的压力。 系统架构也因此也不断的演进、升级、迭代。 从单一应用,到垂直拆分,到分布式服务,到SOA,以及现在火热的微服务架构 集中式架构 概述 当网站流量很小时,只需一个应用 将所有功能都部署在一起,以减少部署节点和成本 从头到尾就一个工程,部署的时候 , 只需要打成一个war包 特点 代码耦合,开发维护困难 无法针对不同模块进行针对性优化 无法水平扩展 单点容错率低,并发能力差 垂直拆分 概述 当访问量逐渐增大,单一应用无法满足需求,此时为了应对更高的并发和业务需求,我们根据业务功能对系统进行拆分 特点 系统拆分实现了流量分担,解决了并发问题 可以针对不同模块进行优化 方便水平扩展,负载均衡,容错率提高 系统间相互独立,会有很多重复开发工作,影响开发效率 系统架构分类 微服务 微服务就是把原本臃肿的一个项目的所有模块拆分开来并做到互相没有关联,甚至可以不使用同一个数据库 微服务的特点:

大数据分析BI工具有哪些,该怎么选择呢?

橙三吉。 提交于 2020-04-14 11:23:07
【推荐阅读】微服务还能火多久?>>> 随着大数据技术与物联网、云计算、人工智能等新技术的相互融合***,多技术融合的新应用正在不断涌现,大数据已广泛应用于各个领域。我国大数据产业发展快速增长,产业规模不断扩大,产业链条加速完善,企业实力不断增强。围绕大数据智能应用、用户行为画像、可视化分析等创新服务模式的公司正在快速崛起,涌现出一批像思迈特软件、帆软、神策数据以及东软等一批优秀企业。 1、大数据BI产业链结构分析 大数据BI产业链结构总体上由数据源、数据获取、数据处理、数据分析以及数据展现五个方面构成。其中数据源由企业内部数据和外部数据构成,企业的内部数据通常与具体业务紧密相关,且多数来自我们可以掌控的软件系统,如CRM、ERP或者HR系统。ETL负责将数据源中的数据抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库中,成为联机分析处理、数据挖掘的基础。最后通过数据展现工具对数据进行可视化分析,满足各种应用需求。 2、企业用户对大数据BI产品功能需求强度分析 多数企业对大数据BI平台数据权限管控、探索式自主分析以及快速搭建业务数据模型等功能有着强烈需求,这几种功能被选择的比例高达90%以上; OLPA多维分析,包括上卷、下钻、旋转、切片、联动、跳转等分析功能也是企业用户选择的一大需求,有88%的企业选择该功能; 另外,大数据处理性能、自主数据处理技术

解决jenkins无法正常安装一些插件

不羁岁月 提交于 2020-04-14 10:55:52
【推荐阅读】微服务还能火多久?>>> jenkins安装时会让你选择一些常用的插件而一些插件在安装的过程中由于缺少其他插件的依赖 所以会安装不成功。不要怕,找个所需要的插件直接去jenkins的插件库去搜索,手动下载出来。然后在手动上传,然后在重新去下载所需要的插件 即可。 1:复制依赖的插件 2:在插件库找到该插件 点击进入 3:点击下载自己所需要的版本 来源: oschina 链接: https://my.oschina.net/u/4417586/blog/3234091