自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿姆斯特哩的博客

掉在水里你不会淹死,呆在水里你才会淹死,你只有游,不停的往前游。失败并不可怕,害怕失败才真正可怕

  • 博客(368)
  • 资源 (4)
  • 收藏
  • 关注

原创 MST索引

并发编程面试题(2020最新版)https://thinkwon.blog.csdn.net/article/details/104863992MySQL数据库面试题(2020最新版)https://thinkwon.blog.csdn.net/article/details/104778621Redis面试题(2020最新版)https://thinkwon.blog.csdn.net/article/details/103522351...

2020-11-02 15:45:14 113

原创 Android 技术积累 索引篇

Android基础:源码源码,你不要睡着啦。Android源码分析—带你认识不一样的AsyncTaskAndroid事件传递机制Android Context完全解析 转郭神名作并简略总结Handler Looper MessageQueue 深度总结Android 我的第一个 NDK 程序 (AndroidStudio)Android HandlerThread 完全...

2019-11-21 17:28:58 157

原创 前端 技术积累 索引篇

VUE基础JS装逼利器Vue 自定义组件 (父子组件 数据传递)CSS 弹性布局vue-cli 配置 proxyTable pathRewritevue.js中ref及$refs的使用及讲解VUE问题及解决方案vue 传递数组后端java接收问题(qs和json)...

2019-11-14 17:03:01 174

原创 Java 技术积累 索引篇

Java基础:问题解决方案:Spring+SpringMVC+Mybatis整合开发思路及配置详解https://blog.csdn.net/yanmiao0715/article/details/82502694IDEA端口占用:java.rmi.server.ExportException: Port already in use: 1099https://blog....

2019-07-30 11:39:20 230

原创 AS 编译问题解决方案汇总 (陆续添加总结...)

1.遇到“无法加载主类 org.gradle.wrapper.GradleWrapperMain”怎么解决?解决:copy android/gradle/wrapper/gradle-wrapper.jar  from other projects to the same location in ur [x\gradle\wrapper\]2.Win7 x64 Android Studio...

2018-03-29 12:43:30 1324

转载 Springboot出现found character ‘@‘ that cannot start any token. (Do not use @ for indentation)

springboot @解析异常

2022-07-11 10:01:51 890

转载 三幅图弄懂EventBus核心原理

作者:Hanking链接:https://juejin.im/post/5e981905518825085d6d0164前言好多分析EventBus的文章,喜欢上来就贴源码,我看了好多次总是迷迷糊糊的,这次花时间彻底整理一下EventBus,发现EventBus核心其实就是三幅图,这三幅图涉及的是三个HashMap表,弄懂这三幅图那么EventBus就懂了。1、第一幅图(订阅者和订阅事件)先看一段在activity中注册和反注册EventBus的代码。onStart{ EventB

2021-11-12 14:49:03 419

转载 HTTP协议8连问

添加链接描述

2021-11-10 18:09:13 222

转载 字节Android岗面试:Handler中有Loop死循环,为什么没有阻塞主线程,原理是什么

链接

2021-11-08 14:45:05 228

转载 Glide 4.X 优化分析

使用添加依赖implementation ‘com.github.bumptech.glide:glide:4.12.0’annotationProcessor ‘com.github.bumptech.glide:compiler:4.12.0’基础使用加载图片Glide.with(this).load(imgUrl).into(imageView1)取消加载Glide.with(this).clear(imageView1)实际上,当 Glide.with() 中传入的 Acti

2021-10-29 17:17:36 113

原创 Retrofit 原理总结

一、Retrofit简介Retrofit是现下Android端开发非常流行的一款网络请求框架,它通过动态代理的方式将Java接口翻译成网络请求,通过OkHttp发送请求,并且其具备强大的可扩展性,支持各种数据格式的转换以及RxJava。说到这里,我们来分析一下网络请求框架的本质,网络请求框架是一套提供给开发者使用的用于网络请求的API接口,我们知道,Android网络请求一般是基于Http协议的,而Http协议属于应用层的协议,具体的数据传输需要依赖传输层的TCP协议,Android系统提供了Socket

2021-10-26 09:58:04 968

转载 Kotlin中 !!. 跟 ?. 的区别跟用法

在Kotlin中!!跟?都是用于判断空参数异常的?.意思是这个参数可以为空,并且程序继续运行下去!!.的意思是这个参数如果为空,就抛出异常下面给大家举个简单的例子,在JAVA中判断一个参数非空是这样写的:NullClass nullClass = null; if (nullClass!=null) { ullClass.nullFun(); }将这段代码转换成Kotlin之后呢val nullClass: NullClass? = null nullClass

2021-08-20 10:45:20 131

原创 JAVA 锁相关

CAS 无锁优化 自旋 (Compare and set)cas(V,Expected,NewValue)if(V=E)V=Newotherwise try again or failABA问题-加version-A 1.0-B 2.0-C 3.0-cas(version)

2021-07-09 10:12:47 80

转载 CDN的作用与基本过程

简介CDN,Content Distribute Network,可以直译成内容分发网络,CDN解决的是如何将数据快速可靠从源站传递到用户的问题。用户获取数据时,不需要直接从源站获取,通过CDN对于数据的分发,用户可以从一个较优的服务器获取数据,从而达到快速访问,并减少源站负载压力的目的。动机为什么不进行数据的直接交付,即让用户直接从源站获取数据呢?我们常说的互联网实际上由两层组成,一层是以TCP/IP为核心的网络层即Internet(因特网),另一层则是以万维网WWW为代表的应用层。数据从服务器

2021-07-01 16:55:05 94

转载 数据库压力大解决思路

业务应用数据库压力解决方案引言一、原因分析二、在代码层面消化数据库压力创建索引转移压力三、给数据库请个保姆——中间件RedisMQ四、忍法——数据库分身术分布式架构主从读写分离架构五、总结注意:原创文章,转载请注明出处。引言数据库炸了,加CPU加内存?或许还有更合适的方法,例如优化代码逻辑、合理利用中间件、横向扩展数据库配置。之前在做业务应用系统压力测试项目的时候,发现性能不达标的应用,问题大多出在数据库上,服务器的资源才用了30%不到,数据库资源已经跑满的情况比比皆是。

2021-05-31 17:54:13 452

转载 消息队列应用

二、消息队列应用场景以下介绍消息队列在实际应用中常用的使用场景。异步处理,应用解耦,流量削锋和消息通讯四个场景2.1异步处理场景说明:用户注册后,需要发注册邮件和注册短信。传统的做法有两种 1.串行的方式;2.并行方式(1)串行方式:将注册信息写入数据库成功后,发送注册邮件,再发送注册短信。以上三个任务全部完成后,返回给客户端(2)并行方式:将注册信息写入数据库成功后,发送注册邮件的同时,发送注册短信。以上三个任务完成后,返回给客户端。与串行的差别是,并行的方式可以提高处理的时间.

2021-05-31 17:51:30 373

转载 Redission分布式锁原理

https://blog.csdn.net/a772304419/article/details/105647110

2021-05-31 17:49:41 137

转载 jvm内存模型以及各个分区

1. JVM 内存模型Java虚拟机内存的各个区域包括:程序计数器 Java虚拟机栈 本地方法栈 Java堆 方法区2. 程序计数器什么是程序计数器呢? 程序计数器是一块较小的内存空间,它可以是当前程序所执行的字节码的行号指示器。 注意:如果线程正在执行的是java的方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是Native方法,这个计数器值则为空(Undefined)。 程序计数器的作用 字节码解释器工作时,就是通过改变这个.

2021-05-31 14:13:06 578

转载 慢Sql排查

https://blog.csdn.net/qq_21040559/article/details/107381444使用第三方工具进行检测,比如阿里的druid数据库连接池,加入相关配置之后可以从面板更直观的监控sql的性能,更方便我们对问题的排查。 记录MySQL慢查询 MySQL慢查询就是在日志中记录运行比较慢的SQL语句,这个功能是需要开启才能使用的。 开启方法 通过修改/etc/my.cnf,添加配置 优点:全局生效 缺点:需要重启Mysql 通过SQL命令set glo

2021-05-25 16:49:32 180

转载 mysql 主从复制、读写分离、分库分表

思维导图微信公众号已开启:【java技术爱好者】,还没关注的记得关注哦~文章已收录到我的Github精选,欢迎Star:https://github.com/yehongzhi/learningSummary前言在很多项目,特别是互联网项目,在使用MySQL时都会采用主从复制、读写分离的架构。为什么要采用主从复制读写分离的架构?如何实现?有什么缺点?让我们带着这些问题开始这段学习之旅吧!为什么使用主从复制、读写分离主从复制、读写分离一般是一起使用的。目的很简单,就是为了提

2021-05-25 10:46:55 326

转载 com.android.support版本冲突的解决办法

https://blog.csdn.net/code_dream_wq/article/details/109637133All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes当我们使用android studio添加一些第三方的依赖库时,很可能会提示上面这个错误。大致意思就是com.android.su

2021-05-17 10:40:25 224

转载 RabbitMQ实战教程(十) : 消息确认Ack

https://blog.csdn.net/qq_37653556/article/details/82860879

2021-05-14 14:08:21 88

转载 RabbitMQ和Kafka的比较,一比吓一跳!

导言作为一个有丰富经验的微服务系统架构师,经常有人问我,“应该选择RabbitMQ还是Kafka?”。基于某些原因, 许多开发者会把这两种技术当做等价的来看待。的确,在一些案例场景下选择RabbitMQ还是Kafka没什么差别,但是这两种技术在底层实现方面是有许多差异的。不同的场景需要不同的解决方案,选错一个方案能够严重的影响你对软件的设计,开发和维护的能力。这篇文章会先介绍一下基本的异步消息模式,然后再介绍一下RabbitMQ和Kafka以及他们的内部结构信息。第二部分(未完成)主要介绍这两种

2021-05-14 13:51:54 276

原创 ribbon的注解 @LoadBalanced 报错 No instances available for [IP]

使用RestTemplate类调用其他系统的url的时候,加上ribbon的注解@LoadBalanced上这个注解之后访问,就报错了。java.lang.IllegalStateException: No instances available for localhost at org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.execute(RibbonLoadBalancerClient.java:89) ~[s

2021-04-21 16:42:45 943

转载 Redis的持久化机制

Redis的持久化机制破执​宜信 研发工程师60 人赞同了该文章Redis 的数据全部在内存里,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证 Redis 的数据不会因为故障而丢失,这种机制就是 Redis 的持久化机制。Redis 的持久化机制有两种,第一种是RDB快照,第二种是 AOF 日志。快照是一次全量备份,AOF 日志是连续的增量备份。快照是内存数据的二进制序列化形式,在存储上非常紧凑,而 AOF 日志记录的是内存数据修改的指令记录文本。1、RDB快照

2021-04-16 11:14:39 105

原创 nginx keeplived相关

nginx中的root与alias的差别https://blog.csdn.net/asahinokawa/article/details/87702491搭建Keepalived双机热备https://blog.csdn.net/zhouchuan152/article/details/94976214Nginx高可用、高并发:Nginx+Keepalived部署https://blog.csdn.net/qq_35457078/article/details/84879338.

2021-04-02 14:42:59 61

原创 Android MutableLiveData

https://blog.csdn.net/feather_wch/article/details/88648559我们在《ViewModel的基本使用》这篇文章中提到了,ViewModel的主要作用是存放页面所需要的各种数据,而当这些数据发生变化时,我们采用接口的方式实现对页面的通知。这样做是可行的,但如果要观察的数据很多,则需要定义大量的接口,代码显得冗余。为此,Android为我们提供了LiveData组件,帮助我们完成ViewModel与页面组件之间的通信。所以,LiveData通常是被放在Vi

2021-04-01 13:51:09 872

转载 使用 patch-package 修改第三方模块

使用patch-package修改第三方模块,及时解决第三方依赖包的 bug安装 123456 # npmnpm install patch-package --save-dev# yarnyarn add --dev patch-package postinstall-postinstall 创建补丁直接在项目根目录下的node_modules文件夹中找到要修改依赖包的相关文件,然后回到根目录执行 123...

2021-03-30 13:53:18 1787

转载 SpringBoot 如何实现AOP的权限控制

https://blog.csdn.net/ideaxx/article/details/89386855

2021-03-03 16:34:48 294 1

原创 SpringBoot项目修改内置tomcat版本

1.直接改starter<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion&

2021-01-21 09:41:07 421

转载 各个系统下ping IP+端口的方法

前言做开发的人员,可能都会遇到网络的一些问题。这时一般都需要测试指定的网络是否能正常访问。通常在windows系统下,在cmd里直接用命令ping指定的IP或者域名就可以快速的知道这个地址是否是可以访问通不通的。但是如果一个服务器上启动着好几个项目,通过指定不同的端口来区分。想要知道其中某个端口的系统是否可以访问通,一般的ping命令是解决不了这个问题的,因为不管在windows下还是linux下,ping命令只能跟IP地址或者域名,是不能加端口访问的。这时我们就可以借助一些工具,来帮助我们达成目的

2021-01-14 10:51:10 6240

原创 spingsecurity 相关文档

mall整合SpringSecurity和JWT实现认证和授权(一)http://spring security实现动态配置url权限的两种方法

2021-01-08 21:01:31 81

转载 使用Spring Security 限制URL访问

使用Spring Security 限制URL访问通常保护url方式有以下几种:允许每个人访问的url 基于角色保护url 基于多个角色保护url 基于IP地址保护url本文介绍如何通过spring security 实现这些功能。指定URL指定url最常用的方法是通过antMatcher,如果我们想保护下列url:url 访问限制 http://www.example.com/static 给所有人开放,如css, javascript http://www

2021-01-07 10:57:02 1309 1

原创 解决:SpringBoot 错误:Caused by: org.yaml.snakeyaml.scanner.ScannerException 最终解决方案

https://blog.csdn.net/jiangyu1013/article/details/82495866添加依赖<dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <version>1.25</version></dependency>

2020-12-11 16:49:34 2818

转载 springboot之pom配置profiles适用于不同开发环境(亲测可用)

pom.xml<profiles> <profile> <!-- 生产环境 --> <id>prod</id> <properties> <profileActive>prod</profileActive> </properties> </profile> <profile>

2020-12-09 16:58:14 1048

转载 MySQL索引-B+树(看完你就明白了)

http://www.liuzk.com/410.html引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 4 这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。索引在 MySQL 数据库中分三类:B+ 树索引 Hash 索引 全文索引我们今天要介绍的是工作开发中最常接触到的 InnoDB 存储引擎中的 B+ 树索引。要介绍 B+ 树

2020-11-04 09:33:42 197

原创 mybatis使用注解和xml方式插入数据后获取自增长的主键值

写SQL,但不要自己插入主键值 配置@Options(useGeneratedKeys=true, keyProperty="对象.属性")这个的作用是设置是否使用JDBC的getGenereatedKeys()方法获取主键并赋值到keyProperty设置的对象的属性中,说白了就是把自增长的主键值赋值给对象相应的属性在插入后,使用对象.主键属性的getXXId()方法 获取主键值示例:@Insert("INSERT INTO api(component, clientA

2020-10-27 14:58:37 450

转载 android 各种View截图总结

普通View截图image获取View截图 /** * 获取控件截图(黑色背景) * * @param view view * @return Bitmap */ public static Bitmap getViewBitmapNoBg(View view) { view.setDrawingCacheEnabled(true); view.buildDrawingCache(true);.

2020-09-21 15:10:54 2013

转载 Vue和ios、android交互通信

Vue和ios、android交互通信1)原生调用Vue方法Vue代码created() { //Vue的方法给原生调用,则需要把方法挂在Window下面 window.getDataFromNative = this.getDataFromNative;},methods: { getDataFromNative(params) { //params: 原生调用Vue时传值(params)给Vue console.log("得到原生传值结果:" + p

2020-08-27 14:39:13 840

转载 RabbitMQ相关

RabbitMQ-解耦、异步、削峰https://www.cnblogs.com/wffzk/p/13467105.html

2020-08-21 11:09:53 113

AndroidStudio 必用插件

codeGenerator drawableImport adbWifi Profix codeGenerater parecelableGenerator... 下载后即可本地安装。无法翻墙的你们不要太高兴哦!

2016-03-02

Android WiFi ADB (AS plugin)

zip直接在as plugin 中安装即可使用

2016-02-24

greenDao 示例 楼主洒泪奉献 android

内容包括 greenDao 这个秒杀其他ORM的开源大作 在AS中的配置 以及简单的增删改查 里面的ListView也是使用万能适配的 大家可以借鉴

2015-10-30

AndroidStudio jni 示例

查了很多资料 好多都能用 所以楼主写了一个 方便新手学习啊

2015-10-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除