摘要:
通常,我们在写java程序的时候,似乎很少关注内存分配和垃圾回收的问题。因为,这部分工作,JVM已经帮我们自动实现了。
这样看起来,好像很美好,但是任何事情都有两面性。虽然JVM会自动的进行垃圾回收,但是,如果遇到有些问题,JVM自己也处理不了呢?
因此,我们需要了解一下JVM垃圾回收是怎样运作的,这样才能在... 阅读原文
2020-02-17 14:06:04 阅读(2334) 评论(0)
摘要:
并发编程之无锁
6.2 CAS与volatile
源码之LongAdder
6.8 Unsafe
6.2 CAS与volatile
其中的关键是compareAndSet,它的简称就是CAS(也有Compare And Swap的说法),它必须是原子操作。注意其实CAS的底层是lock... 阅读原文
2020-02-17 12:46:12 阅读(2403) 评论(0)
摘要:
Hystrix的一些概念
Hystrix是一个容错框架,可以有效停止服务依赖出故障造成的级联故障。
和eureka、ribbon、feign一样,也是Netflix家的开源框架,已被SpringCloud集成。
线程隔离
将每个请求都包装为一个线程,放到线程池中,对这些请求的处理(线程)互不干扰,... 阅读原文
2020-02-17 12:43:01 阅读(2333) 评论(0)
摘要:
一. 集成
pom.xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.12&l... 阅读原文
2020-02-17 11:15:02 阅读(2394) 评论(0)
摘要:
1.将该设置写在pom.xml中
<build>
<resources>
<resource>
<directory>src/main/resources</directory&g... 阅读原文
2020-02-17 09:35:35 阅读(2394) 评论(0)
摘要:
1.全局异常处理:
@ControllerAdvice处理全局数据,一般搭配@ExceptionHandler,@ModelAttribute以及@InitBinder使用。
@ControllerAdvice
public class CustomExceptionHandler {
@Exc... 阅读原文
2020-02-17 08:49:03 阅读(2350) 评论(0)
摘要:
文件上传:
Java中文件上传一共涉及到两个组件,CommonsMultipartResolver和StandardServletMultipartResolver,其中CommonsMultipartResolver使用commons-fileupload来处理multipart请求,StandardS... 阅读原文
2020-02-17 08:12:02 阅读(2393) 评论(0)
摘要:
面向对象
封装
一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法
封装的优点
良好的封装能够减少耦合
类内部的结构可以自由修改
可以对成员变量进行更精确的控制
隐藏信息,实现细节
实现方式:属性私有+setter()/getter()
继承
子类继承父类的特征和行为,继承是面向对象的... 阅读原文
2020-02-17 08:00:02 阅读(2718) 评论(0)
摘要:
1.默认策略:
静态资源的位置一共5个,开发者可以将静态资源放到其中任意一个,分别是:
"classpath:/META-INF/resources/",
"classpath:/resources/",
"classpath:/static/",
"classpath:/public/",
"/"。
这... 阅读原文
2020-02-17 06:00:14 阅读(2374) 评论(0)
摘要:
转载:https://blog.csdn.net/qq_38132901/article/details/91039537
1. object.toString()方法
这种方法要注意的是object不能为null,否则会报NullPointException,一般别用这种方法。
2.String.va... 阅读原文
2020-02-17 00:41:02 阅读(2462) 评论(0)