自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 OKHttp连接池

OKHttp连接池OkHttp单例模式连接池配置,有效防止线程阻塞public class OKHttpClientUtil { private volatile static OkHttpClient client = null; public static OkHttpClient getOkHttpClirnt(){ if (client==null){...

2020-01-11 16:49:27 718

原创 快速排序之三门快排

快速排序之三门快排/** * @author : fzz */public class MergeData { private Integer[] arr; public MergeData(int n) { arr = new Integer[n]; for (int i = 0; i < n; i++) { ...

2020-01-11 16:39:20 206

原创 项目部署

Linux服务部署准备工作:项目jar包Linux jdk包;可取官网下载 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlXshell,Xftp部署:在/home目录下创建文件夹:mkdir /home/java /home/jar通过Xftp分别...

2019-12-12 15:16:36 192

原创 Redis数据源配置

Redis数据源配置mop文件<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>单数据源配置yml文件sp...

2019-12-04 16:23:34 574

原创 mysql数据原配置

mysql数据原配置mop文件<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version><...

2019-11-29 17:46:24 149

原创 Controller获取ip

Controller获取ippublic class BaseController { protected ThreadLocal<HttpServletRequest> requestThreadLocal = new ThreadLocal(); protected ThreadLocal<HttpServletResponse> responseTh...

2019-11-29 17:43:36 3625

原创 CAS 和 AQS

CAS & AQS一、CAS​ CAS(compareAndSwapInt):参数三个,一个当前内存值V、旧的预期值A、即将更新的值B;当前仅当预期值A和内存值V相同时,将内存只修改为B并返回true,否则什么都不做,返回false二、AQS 原理概览AQS核心思想是,如果被请求的共享资源空闲,则将当前请求资源的线程设置为有效的工作线程,并且将共享资源设置为锁定状态。...

2019-11-20 21:43:03 264

原创 WebSocket

WebSocket轮询:客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接。优点:后端程序编写比较容易。缺点:请求中有大半是无用,浪费带宽和服务器资源。实例:适于小型应用。长轮询(coment):客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求。优点:...

2019-11-02 09:03:31 185

原创 jvm内存模型

jvm内存模型JVM内存模型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w2nPwdXe-1572354858515)(D:\学习笔记\图片\JVM\jvm内存模型\jvm内存模型.jpeg)]Java虚拟机运行时数据区堆存放对象的实例,数组等线程共享,空间最大,JVM虚拟机启动时创建堆上内存可完成实例分配,当无法扩展时,抛出OutOfMemeo...

2019-10-29 21:15:02 235

原创 jvm垃圾回收

jvm垃圾回收垃圾收集器Serial(新生代,老年代)收集器是一个单线程收集器(不是只能使用一个CPU);在进行垃圾收集时,必须暂停其他所有的工作线程,直到收集结束新生代采用复制算法,stop-the-world老年代采用标记-整理算法,stop-the-world简单高效,client模式下默认的新生代收集器[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(i...

2019-10-29 21:13:46 116

原创 线程间的通信

线程间的通信常用的 wait()、notify()、notifyAll();在一个线程里面,唤醒其他拥有同样的锁的线程/** * 使用wait(),notify(),notifyAll()时,代码块必须上锁 * @author : fzz*/public class Communicate { private static Object lock = new Object();...

2019-10-17 22:10:29 116

原创 synchronized、volatile

synchronized & volatile内置锁:​ 每个java对象都可以用做一个实现的同步锁,这些锁称为内置锁。线程进入同步代码块(方法)时,会自动获取该锁;退出时,会自动释放该锁。获取所得唯一方法就是进入同步代码块(方法)。互斥锁:​ 内置锁是一个互斥锁,一个线程获取该锁,其他线程就会等待、或者阻塞。synchronized​ ...

2019-10-17 19:26:18 107

原创 线程与线程池

多线程,Executor线程池创建线程的三种方式继承Thread类/** * @author : fzz */public class MyThread extends Thread { @Override public void run() { System.out.println(Thread.currentThread().getName());...

2019-10-15 17:11:04 157

原创 http跨域

请求跨域一、为什么会发生跨域:浏览器限制跨域(协议,服务器ip,端口不一样)XHR(XMLHTTPRequest)请求像图片<img src=“url”/> 发送的请求type为json,就不是xhr请求,所以不会发生跨域问题一般type为xhr会发生跨域请求问题二、解决思路:浏览器限制:chrome.exe启动是加入参数:–disable-...

2019-09-30 17:30:17 913

原创 thymeleaf全局变量定义

thymeleaf全局变量定义1、 重写configureViewResolvers方法/** * @author : fzz */@Componentpublic class WebMvcConfigurerAdapter implements WebMvcConfigurer { @Resource(name="thymeleafViewResolver") pr...

2019-08-30 14:55:40 5774 2

原创 tymeleaf模板404,500页面跳转

thymeleaf模板404,500页面跳转1、 导入pom文件<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>&l...

2019-08-30 14:32:22 661

原创 thymeleaf自定义标签

thymeleaf自定义标签1、 导入pom文件<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>2、 ...

2019-08-29 10:15:55 608 1

原创 HashMap

HashMap[外链图片转存失败(img-pSwSBXN2-1566911789280)(D:\学习笔记\图片\JDK\Util\HashMap.png)]线程是否安全: HashMap 是非线程安全的效率: 因为线程安全的问题,HashMap 要比 HashTable 效率高一点。对Null key 和Null value的支持: HashMap 中,null 可以作为键,这样的键只有...

2019-08-27 21:18:21 156

原创 Spring注解

常用注解1、@SpringBootApplication这是 Spring Boot 最最最核心的注解,用在 Spring Boot 主类上,标识这是一个 Spring Boot 应用,用来启动 Spring Boot。这个注解就是 @SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan 这三个注解的组合,也可以用这三个...

2019-08-23 15:56:54 164

原创 Linux网络连接

Linux网络连接将虚拟机设置网络连接模式为桥接安装完成后设置网卡:vi /etc/sysconfig/network-scripts/ifcfg-eth0进行网络设置:示例:VICE=eth0HWADDR=00:0C:29:13:ab:1dTYPE=EthernetUUID=82ae23bd-9abb-490f-9cc5-606111d9744aONBOOT=yesNM_...

2019-08-22 20:11:21 334

原创 Linux MySQL安装

Linux MySQL安装1、这里我将Mysql安装在/usr/local/mysql目录里面,也可以安装在其他地方; mkdir /usr/local/mysql2、下载MySQL压缩包Yum Install wget wget <http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.11-Linux-glibc2.5-&...

2019-08-22 20:08:28 248 1

原创 自定义线程安全缓存

自定义线程安全缓存话不多说,直接上代码package lockDemo;import java.util.HashMap;import java.util.concurrent.locks.ReentrantReadWriteLock;/** * @author : fzz */public class MapCache { private static volatil...

2019-08-22 17:13:30 284

原创 List

ListArrayList,LinkedList,Vector之间的特点和区别(ArrayList,LinkedList,Vector都是List实现类; List是有序可以重复的集合)数组和集合的区别:​ 1、 长度区别:​ 1) 数组长度固定​ 2) 集合长度可变​ 2、数据类型​ 1)数组可以是基本类型,也可以是引用类型​ 2) 集合只能是引用类型(会自动封装成引...

2019-08-01 15:08:52 84

原创 LinkedList

LinkedList众所周知,LinkedList是基与双向链表实现的,在日常开发中;ArrayList多用于查询(如果是在末尾增加,删除它的效率还是高于LinkedList)LinkedList多用于增删LinkedList源码解读// 默认大小transient int size = 0;// 头结点transient Node<E> first;// 尾节点...

2019-08-01 10:44:33 84

原创 ArrayList

ArrayListArrayList是我们用的最多的集合之一;ArrayList源码解读// 初始化默认值,为10 这里要注意,一般java初始化值都是2的次方数,这里比较特殊private static final int DEFAULT_CAPACITY = 10;// 指定ArrayList数组容量为0时,返回该数组// 由此可见,ArrayList底层是基于数组...

2019-07-31 20:10:31 101

原创 java类加载

java类加载机制一. java类加载过程​ java类加载一共经历7个过程1. 加载​ 加载是类加载的第一过程,这个阶段完成三件事通过类的全路径获取该类的二进制流。将该二进制流中的静态存储结构转化为方法运行时数据结构。在内存中生成该类的Class对象,作为该类的数据访问入口。2. 验证​ 验证确保Class文件的字节流中的信息正确,以及不会危害到虚拟机;主要有四种验证。...

2019-07-24 16:45:35 170

原创 Swagger应用

swagger简单配置Swagger 是一款RESTFUL接口的、基于YAML、JSON语言的文档在线自动生成、代码自动生成的工具。1. 简单的提供接口Swagger配置(SpringBoot)SpringBoot主启动类添加Swagger注解@EnableSwagger2Doc@SpringBootApplicationpublic class ApiMobileApplicat...

2019-07-23 16:36:00 259

原创 Enum

反射获取Enum对象Enum是什么:enum是计算机编程语言中的一种数据类型。枚举类型:在实际问题中,有些变量的取值被限定在一个有限的范围内。Enum特性枚举类是一种特殊类,它和普通类一样可以使用构造器、定义成员变量和方法可以实现一个或多个接口,但枚举类不能继承其他类(枚举类,编译后会自动继承Enum并用final修饰,无法继承其他类).// 定义public enu...

2019-07-23 15:49:45 141

原创 Spring AOP应用

Spring AOP应用统一异常处理声明异常处理类异常必须抛出/** * 统一异常处理 **///指定异常处理的包,@ControllerAdvice(basePackages ="com.niufx.web.controller")public class ExceptionControllerAdvice { //返回异常为json字符串 @R...

2019-07-23 10:53:39 201

原创 Git基本操作

Git基本操作1、克隆git clone [url]2、拉取代码(不推荐)git pull2‘、拉取代码git fetch //获取最新代码、可能存在冲突git stash //本地代码暂存(存在冲突是缓存本地代码)git rebase //fetch获取的最新代码合并git stash pop //合并最新代码,解决冲突3、提交代码git add [文件名...

2019-07-19 10:24:17 190

原创 ELK日志处理

ELK日志处理前提:采用ELK组件ElasticSearch​ 一个基于 JSON 的分布式的搜索和分析引擎,作为 ELK 的核心,它集中存储数据,用来搜索、分析、存储日志。它是分布式的,可以横向扩容,可以自动发现,索引自动分片Logstash​ 一个动态数据收集管道,支持以 TCP/UDP/HTTP 多种方式收集数据(也可以接受 Beats 传输来的数据),并对数据做进一步丰富或提取字...

2019-07-18 14:42:00 207

原创 @Async

@Async 作用:异步处理(多线程处理)注意:1、SpringBoot 启动类加@EnableAsync​ 2、异步方法加@Async注解原理:​ CGLib动态代理​ CGLIB是通过继承实现代理,也就是生成一个类继承被代理类;所以当你的方法不能被继承时,该方法就不能被动态代理**(像final,private,protected这个比较特殊)**​ 实现一个业务...

2019-07-17 20:51:25 1126

原创 java 事务异常处理

java 事务异常处理问题称述​ 一次在开发过程中,我需要用到事务;由于工程架构规则导致不能按照常用的事务处理方式。Controller层代码示例 @RequestMapping(value = "/api/abc",metabchod=RequestMethod.POST) public @ResponseBody ReturnModel postabc(@RequestBody Po...

2019-06-15 16:15:52 2986

空空如也

空空如也

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

TA关注的人

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