- 博客(23)
- 收藏
- 关注
原创 设计模式--行为模式--责任链
责任链模式责任链类图如图所示责任链示例//处理器接口public interface Handler { String handle(String request);}//处理器基类public abstract class BaseHandler implements Handler{ private Handler next; @Override public String handle(String request) { re
2021-12-05 23:04:46 100
原创 JVM-GC-1-基本概念
JAVA无用对象自动回收参考文章《深入理解Java虚拟机》如何理解OOPMAPGC定义自动回收无用对象的内存空间GC实质解决的问题无用:如何判断某个对象是无用的回收:回收无用内存对象的具体算法自动:什么时候触发GC1.判断某个对象无用的方法引用计数法每个对象身上每多一个指针reference,则引用数目+1。某个对象身上的reference数目为0了则说明可以被回收了引用计数法缺点循环引用问题//A,B,C都有属性a//方法栈中执行如下A.a= BB.a= C
2021-11-28 18:04:12 455
原创 【真正的JAVA内存模型---翻译自Java语言规范】
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-11-24 00:49:48 303
原创 maven-pom.xml解析-build篇
构建配置build 元素build元素存在于project或profile标签下0.基础build<build> <defaultGoal>install</defaultGoal> <directory>${basedir}/target</directory> <finalName>${artifact...
2020-02-28 01:15:54 403
原创 maven-pom.xml解析-基础知识篇
maven重要命令:mvn help:effective-pommvn dependency:treemaven中配置pom.xml概览<project xmlns = “ http://maven.apache.org/POM/4.0.0” xmlns:xsi = “ http://www.w3.org/2001/XMLSchema-instance” xsi:sche...
2020-02-26 00:32:48 301
原创 Mybatis-XML映射文件-2
参数最简单的参数绑定<select id="selectUsers" resultType="User"> select id, username, password from users where id = #{id}</select>这个ID参数可以用任何的原始类型或简单数据类型(比如 Integer 和 String)来代替,因为没有相关ID属...
2019-11-26 00:24:36 211
原创 Mybatis-XML映射文件
查询语句是 MyBatis 中最常用的元素之一,光能把数据存到数据库中价值并不大,只有还能重新取出来才有用,多数应用也都是查询比修改要频繁。对每个插入、更新或删除操作,通常间隔多个查询操作。这是 MyBatis 的基本原则之一,也是将焦点和努力放在查询和结果映射的原因。简单查询的 select 元素是非常简单的。比如:MappedStatementXML映射文件每一个SQL对应一个org.a...
2019-11-23 18:50:46 228
原创 Optional-API
背景Optional出现的背景:Java引用中非常容易出现空指针异常,Java8通过将Null所在的变量封装一层,内部仍然利用null来判断是否为空指针,对外屏蔽空指针使用。源码分析Optional封装特点引用对象。public final class Optional<T> { /** * Common instance for {@code empty(...
2019-11-11 22:52:33 192
原创 Java字符串
字符串String不可变性重载+与StringBuilder无意识递归Java中正则表达式String不可变性String不可变性:指的是字符串对象调用的方法,看起来会改变字符串内容都是返回一个新对象。 String message ="i am not mutable"; String s = message.toUpperCase(); ...
2019-11-09 18:07:40 101
原创 Java-ForkJoinPool详解
ForkJoinPool介绍今天慢慢猪和大家分享JDK1.7中出现的ForkJoinPool类。我们将从三个维度介绍ForkJoinPool。首先介绍ForkJoinPool出现的背景与思想,其次介绍ForkJoinPool使用方法以及性能比较,最后通过手写一个ForkJoinPool来展示其原理。ForkJoinPool背景想想如下场景,给定一个长度为10万的int型的数组,你需要计算出...
2019-11-08 22:45:21 1408
原创 java8-流的操作
流是什么流的定义:从支持数据操作处理的源生成的元素序列。元素序列:流也提供接口,可以访问元素的有序排列,这一点与集合类似。流来源于源:流需要使用一个能够提供数据的源,如集合,数组或输入/输出资源。数据处理操作:允许进行filter,map、reduce、find、match流的特点:流水线:流操作返回的仍然是流内部迭代:流的迭代与集合外部迭代,流的迭代是在背后执行...
2019-10-27 22:37:44 222
原创 Java8-lambda表达式
Lambda表达式1. 表达式的语法(parameters) -> exression(parameters) -> {statement}2. lambda使用地方行为参数化函数中将某个特定的操作行为进行参数化使用函数是接口来传递行为执行一个任务传递lambda函数描述符函数式接口的抽象方法的签名基本上就是Lambda表达式的签名。这种抽象方法...
2019-10-23 23:53:42 583
原创 日志体系-Logback配置
参考Logback配置Logback配置加载类路径下寻找寻找顺序为:logback-test.xml->logback.groovy->logback.xml->Configer的实现类->使用默认的BasicConfiguratorBasicConfigurator的等同xml配置<configuration> <appender...
2019-10-19 13:48:09 346
原创 日志体系-logback
参考logback介绍背景logback来源于log4j,有着更好的性能与更好的速度,包含了很多独特的特性logback包含3个部分logback-core:核心部分,是否两个部分的基础logback-classic:log4j的改进优化logback-access:与tomcat等servlet服务器继承提供远程访问logback基本使用package chapters...
2019-10-19 09:28:37 247
原创 日志体系-发展历程
简述Java日志体系JAVA日志体系发展LOG4J:JDK中没有日志概念,仅有System.err与System.out两大流。所以Gülcü与2001年发布了LOG4J,成为apach顶级项目。创造出地logger,appender,level概念影响至今。2..JUL:sun在jdk1.4中借鉴了LOG4J提出了JUL,但是性能,易用性都不如果LOG4J,在JDK1.5中得到了修复。...
2019-10-17 22:30:40 445
原创 PL/SQL-01
文章目录正则表达式搜索REGEXP_LIKE基本字符匹配执行OR匹配执行多个匹配匹配范围正则表达式搜索REGEXP_LIKE基本字符匹配REGEXP_LIKE(prod_name,‘1000’):表达的字面基本字符匹配 xx1000xx就一定能够满足REGEXP_LIKE(prod_name,’.000’);表达的匹配任意单个字符,即允许匹配任意个000的字符REGEXP_LIKE ...
2019-10-13 23:11:10 110
原创 JAVA线程池原理-1
https://www.cnblogs.com/dolphin0520/p/3932921.html 线程池原理https://blog.51cto.com/10594544/2176728 Java并发之线程池ThreadPoolExecutor源码分析学习为什么使用线程池javadoc中的原文Thread pools address two different problems...
2019-07-26 17:04:39 242 1
原创 SpringBoot--Demo运行01
0基础SpringBoot快速入门构建Maven项目Spring官网()给出了一个快速构建SpringBoot项目基本构成的网站(网址:https://start.spring.io/)。能够在这里配置好你需要的自定义模块,然后将项目下载下来。接下来将详细了解SpringBoot项目的构成 访问快速构建地址输入group与artifact框自定义项目名称输入你依赖的启动包,...
2018-08-19 16:04:59 211
原创 软引用,虚引用,弱引用
引用软引用软引用用于构建敏感数据的缓存,弱引用与软引用的区别仅是当前引用失效的时机不同,如果弱引用仅在GC即将OOM的时候虚引用与软引用的区别:不会影响GC,但是需要强制使用ReferenceQueue,从而在回首的时候会是该引用进入队列中,是程序员知道该对象已经被回收package com.demo;import java.lang.ref.Reference;i...
2018-07-25 18:50:30 111
原创 ThreadLocal详解
ThreadLocalThreadlocal作用概述1.多个线程拥有属于自己线程的变量,举例来说便是与线程绑定的变量Threadlocal的源码探究逐行研究ThreadLocalMap static class Entry extends WeakReference<ThreadLocal<?>> { /**...
2018-06-22 07:27:33 164
原创 linux总结
第一周总结linux 创建目录:mkdir:mkdir -p 如果有父目录,则不新建,没有新建 -v 显示过程touch file.sh vi file.sh 编辑页面linux 允许sh文件. file.sh 2 source file.sh 3 bash file.shlinux 用户删除userdel -g groupname -u uid username
2016-08-13 12:08:27 603
转载 双击C/C++的debug下*.exe一闪而过的解决方案(初学者适用版)
http://blog.chinaunix.net/uid-20680966-id-1896489.html转自帅的不敢出门这个问题困扰了我一段时间,网上看了些东西,最后算是差不多知道了。但回头来看我认为那些写的并不是很清楚,让一个刚学习C,C++的人来说可能不是很易接受。所以自己就整理了这么一篇。Windows 环境下,直接双击C 或 C++(简称
2016-03-30 22:33:38 2754
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人