标签:NSA

Java

使用@async注解实现异步调用

7

xubiao.zhuang 发布于 2019-07-15

异步调用对应的是同步调用,假设现在有三个无关任务等待执行,同步调用的方式是逐次等待,即第一个任务完成后再开始第二个任务….以此类推。 但是计算机可以并发执行,使用同步调用的耗时太长了,因此我们希望开三个县城去同时的处理这三个任务,这就需要使用@Async注解了。 如何...

阅读(11)评论(0)赞 (0)

Java

面试必备:Java线程池解析

18

puefu.he 发布于 2019-07-15

前言 掌握线程池是后端程序员的基本要求,相信大家求职面试过程中,几乎都会被问到有关于线程池的问题。我在网上搜集了几道经典的线程池面试题,并以此为切入点,谈谈我对线程池的理解。如果有哪里理解不正确,非常希望大家指出,接下来大家一起分析学习吧。 经典面试题 面试问题1:Java的线程...

阅读(8)评论(0)赞 (0)

Java

SpringBoot(二)配置文件

1

xiaoli.wang 发布于 2019-07-15

二、配置文件 1、配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的; •application.properties •application.yml 配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;...

阅读(13)评论(0)赞 (0)

Java

横向对比Jetpack、RxJava、Glide框架中对组件生命周期Lifecycle感知原理

2

zhuangli 发布于 2019-07-14

在App开发中出于减少内存泄露,合理释放资源,减少内存占用等目的,我们经常要在组件的生命周期回调函数中执行相应的代码比如像这样: class xxActivity extend Activity{ public void onStart(){ xxx.init() } publi...

阅读(15)评论(0)赞 (0)

Java

别在 Java 代码里乱打日志了,这才是正确的打日志姿势

Harries 发布于 2019-07-14

作者:lrwin 使用slf4j 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用: Logback框架 打日志的正确方式 什么时候应该打日志 当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问...

阅读(18)评论(0)赞 (0)

Java

MyBatis 核心配置综述之StatementHandler

4

dulong 发布于 2019-07-14

StatementHandler 是四大组件中最重要的一个对象,负责操作 Statement 对象与数据库进行交流,在工作时还会使用 ParameterHandler 和 ResultSetHandler 对参数进行映射,对结果进行实体类的绑定 MyBatis 四大组件之Stat...

阅读(19)评论(0)赞 (0)

Java

MyBatis一级缓存详解

11

songhua.gao 发布于 2019-07-13

什么是缓存 缓存就是内存中的一个对象,用于对数据库查询结果的保存,用于减少与数据库的交互次数从而降低数据库的压力,进而提高响应速度。 什么是MyBatis中的缓存 MyBatis 中的缓存就是说 MyBatis 在执行一次SQL查询或者SQL更新之后,这条SQL语句并不会消失,而...

阅读(24)评论(0)赞 (0)

Java

Java并发编程实战: AQS 源码 史上最详尽图解+逐行注释

8

hellas 发布于 2019-07-13

Java并发编程实战: AQS 源码 史上最详尽图解+逐行注释 引言: 学习一个java并发编程工具的时候,我们首先要抓住这三点: 状态 一般是一个state属性,它基本是整个工具的核心,通常整个工具都是在设置和修改状态,很多方法的操作都依赖于当前状态是什么。 由于状态是全局共享...

阅读(31)评论(0)赞 (0)

Java

使用 Arthas 在线排查问题,无需重启;动态跟踪Java代码;实时监控JVM状态

1

wenming.gapo 发布于 2019-07-13

Arthas(阿尔萨斯) 能为你做什么? Arthas  是Alibaba开源的Java诊断工具,深受开发者喜爱。 当你遇到以下类似问题而束手无策时, Arthas 可以帮助你解决: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代...

阅读(32)评论(0)赞 (0)

Spring

Spring 事务处理超级详细详解

4

xiaoli.wang 发布于 2019-07-12

事务是数据库逻辑上的一组操作,一个事务中的一组操作,要么都执行,要么都不执行。 复制代码 事务的四大特性(ACID) Atomicity原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事...

阅读(18)评论(0)赞 (0)

Java

ReentrantLock 实现原理笔记(一)

28

小丁 发布于 2019-07-11

exclusive : adj. (个人或集体) 专用的,专有的,独有的,独占的; 排外的; 不愿接收新成员(尤指较低社会阶层)的; 高档的; 豪华的; 高级的 reentrant : 可重入; 可重入的; 重入; 可再入的; 重进入 一切从 Thread 线程开始 独占线程 e...

阅读(22)评论(0)赞 (0)

Java

Netty内存池之PoolThreadCache详解

1

Harries 发布于 2019-07-11

PoolThreadCahche是Netty内存管理中能够实现高效内存申请和释放的一个重要原因,Netty会为每一个线程都维护一个PoolThreadCache对象,当进行内存申请时,首先会尝试从PoolThreadCache中申请,如果无法从中申请到,则会尝试从Netty的公共...

阅读(23)评论(0)赞 (0)

编程技术

从应用交付交付看云原生体系的构建

8

songhua.gao 发布于 2019-07-11

一、现阶段云原生体系的“暗面” 自从 Matt Stine 提出 Cloud Native(云原生),云原生的概念经历了多个版本的迭代,Google 主导成立的 CNCF(Cloud Native Computing Foundation 云原生计算基金会 )对云原生的...

阅读(31)评论(0)赞 (0)

Java

Mybatis进阶笔记03:架构概述与基本执行流程梳理

9

darida 发布于 2019-07-11

Mybatis的架构概述 结合源码结构Mybatis的基本执行流程 一、Mybatis的架构概述 Mybatis的架构概览如图所示: 第一层:SQLsession,直接对外暴露,也是我们最常用的组件: <?xml version="1.0" encodi...

阅读(26)评论(0)赞 (0)

Java

小白的 ReentrantLock 源码略谈

3

zhuangli 发布于 2019-07-11

ReentrantLock (简称RLock) 是Java的一种锁机制。从API上看,RLock提供了公平锁与非公平锁,并提供了当前锁状态监测的一些接口。其内部是由 FairSync 与 NonFairSync 来实现锁资源的抢占与释放。下面我们来学习下其源码。 从最直白的方法入...

阅读(23)评论(0)赞 (0)

Java

Java中如何停止线程

changyuan.xu 发布于 2019-07-11

停止线程在 Java 中不像 break 语句一样干脆,需要一些技巧性的处理。停止一个线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃正在做的操作。虽然这看上去很简单,但是必须要做好一定的防范措施,避免出现一些不可预知的问题。停止一个线程可以使用 Thread.stop...

阅读(23)评论(0)赞 (0)

Java

jsweet中英文文档,java代码转js代码

zhuangli 发布于 2019-07-11

这个工具可以将java代码转为js代码,从而可以使用java编写前端代码 如果排版看着费劲可以下载下方html,打开html后使用google翻译 JSweet语言规范 版本:2.x(快照) 作者:Renaud Pawlak 作者助理:Louis Grignon JSweet J...

阅读(64)评论(0)赞 (0)

Spring

深入理解SpringBoot核心原理(一)——–启动机制(starter机制)

4

puefu.he 发布于 2019-07-11

使用过springboot的同学应该已经知道,springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程。本文的目的就是一步步分析springboot的启动过程,这次主要是分析springboot特性自动装配。 那么首先带领大家回顾一下以往我们的...

阅读(24)评论(0)赞 (0)