- 博客(275)
- 资源 (6)
- 收藏
- 关注
原创 单例模式的7种写法
设计模式(Design pattern)一共有23种,而单例模式(Singleton Pattern)是 其中最简单的设计模式之一,这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。单例模式有很多种写法,下面我们介绍一些常见的7种写法。
2020-01-05 20:44:09 388
原创 RedisTemplate常用方法总结
很多公司都将redisTemplate进行了封装,封装成业务所需要的RedisUtil工具类方便进行调用,本篇文章总结了redisTemplate常用的一些工具类。Redis最为常用的数据类型:StringHashListSetzSetSorted setString...
2019-04-10 22:17:53 110490 6
原创 Java二维坐标动态曲线图绘制
将一串随机数输入到二维坐标轴中,不断刷新JPanel,实现动态显示的效果import java.awt.BasicStroke;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Rendering...
2016-11-18 21:21:36 22082 13
原创 Linux环境下mongoDB 4搭建(副本集模式)
本文主要介绍了Linux环境下mongoDB副本级方式搭建环境步骤创建主节点建立存放数据和日志的目录# 主节点mkdir -p /mongodb/replica_sets/rs_27017/logmkdir -p /mongodb/replica_sets/rs_27017/data/db或修改配置文件vim /mongodb/replica_sets/rs_27017/mongod.confsystemLog: #MongoDB发送所有日志输出的目标指定为文件.
2020-09-25 00:23:34 1050 1
原创 阿里云Linux环境下mongoDB 4搭建
本文主要记录了Linux环境下mongoDB 4搭建的搭建过程。环境Linux version 4.18.0-80.11.2.el8_0.x86_64(Red Hat 8.2.1-3)mongodb-org-server-4.0.5-1.el7.x86_64.rpmmongodb-org-shell-4.0.5-1.el7.x86_64.rpmmongodb-org-tools-4.0.5-1.el7.x86_64.rpmmongodb-org-mongos-4.0.5-1.el7.x86.
2020-08-29 10:46:53 656
原创 阿里云Linux环境下Redis哨兵模式搭建(一主两从三哨兵)
前言本文主要记录了阿里云Linux环境下Redis哨兵模式的搭建过程,记录搭建的一些过程,下次可以少走弯路,快速搭建。本文搭建的是一主两从三哨兵的模式,是通过一台阿里云服务器的不同的端口号来模拟不同机器上的搭建。环境Linux version 4.18.0-80.11.2.el8_0.x86_64(Red Hat 8.2.1-3)redis-5.0.7.tar.gz准备工作关于redis的单机下载、安装,请参考之前的博客:redis基础以及ubuntu16.04环境下搭建,比较简单,这里
2020-07-16 20:36:10 1472
原创 ThreadLocal的使用以及源码分析
文章目录ThreadLocal的基本使用常用方法例子线程之间的变量非独立线程之间的变量相互独立当多线程访问共享可变数据时,涉及到线程间同步的问题,并不是所有时候,都要用到共享数据,所以就需要线程封闭出场了。本文中的ThreadLocal就起到了线程封闭的作用。它提供了线程内的局部变量,不同线程之间不会相互干扰,这种变量在线程的生命周期内起作用,减少了同一个线程内多个函数或组件之间一些公共变量传递的复杂度。通俗的说ThreadLocal具备三个特性:线程并发: 在多线程并发的场景下使用传递数据:
2020-06-04 21:08:03 664
原创 Jvm类加载机制
文章目录概述类加载时机初始化不被初始化的例子概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制类加载机制采用懒加载的方式类加载时机初始化遇到new、getstatic、putstatic或invokestatic这4条字节码指令时,如果类没有进行过初始化,则需要先触发其初始化。生成这4条指令的最常见的Java代码场景是:使用new关键字实例化对象的时候、读取或者设置一个类的静态字段(被f
2020-05-24 21:16:54 427
原创 企业级私有镜像仓库Harbor的使用
文章目录前言Harbor基本介绍Harbor部署自签HTTPS证书Docker主机从Harbor上传下载镜像前言本文主要讲了企业级私有镜像仓库Harbor的使用,包括Harbor基本介绍、部署、自签HTTPS证书、Docker主机从Harbor上传下载镜像。Harbor基本介绍Harbor是VMware公司开源的企业级Docker Registry项目,项目地址:https://githu...
2020-02-10 00:04:14 454
原创 镜像仓库
文章目录搭建私有镜像仓库前言私有镜像仓库管理前言下载registry镜像并启动测试,查看镜像仓库中所有镜像Docker Hub公共镜像仓库使用搭建私有镜像仓库前言如果想让我们构建的本地镜像到其他机器上也能够同样运行,那么该如何操作呢?有以下两种方式可以操作:通过docker image save进行导出,下载下来然后拷贝到另外一台机器通过搭建私有仓库的形式,把镜像存放在仓库里,方便下次...
2020-02-08 12:00:26 562
原创 Dockerfile
文章目录前言Dockerfile指令Build镜像命令构建PHP网站镜像构建JAVA网站环境镜像前言本文主要讲解了docker中Dockerfile的一些用法,学习Dockerfile就可以根据项目中需要的东西来构建自己的镜像,去创建容器来做一些工作。Dockerfile指令指令描述举例FROM构建的新镜像是基于哪个基础镜像如:FROM centos:6(基础镜像...
2020-02-04 20:42:39 174
原创 镜像和容器的管理
文章目录镜像镜像与容器的联系存储驱动镜像简单说,Docker镜像是一个不仅包含Linux内核而且又精简的Linux操作系统,docker默认的镜像下载地址为:https://hub.docker.com/explore,默认是国外的地址,下载会很慢,建议配置国内的镜像仓库:vi /etc/docker/daemon.json{ "registry-mirrors":["https://r...
2020-01-16 23:07:42 309
原创 Ubuntu 16.04环境下Docker安装
文章目录Docker简介Docker简介ps -ef 就能列出你当前工作的一些进程yum install pstree: 装这个命令可以查看进程树
2020-01-14 21:54:55 242
原创 MongoDB简介
文章目录简介常见的非关系型数据库NoSQL优势NoSQL劣势MongoDB简介基本概念MongoDB和MySQL对比MongoDB数据类型简介NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。它和关系型数据库完全不同,NoSQL中没有关系型数据库中的表的概念,它的表叫做collection(集合),它是一种面向对象的数据库,是一类数据库。关系型数据库中的表都是...
2020-01-08 21:57:22 282
原创 reids的其他功能
慢查询是发生在第3阶段 客户端超时不一定是慢查询、但慢查询是客户端超时的一个可能因素 慢查询是一个先进先出的队列 而且这个队列是一个固定长度的,保存在内存中(当redis重启之后就会消失了
2020-01-01 23:06:29 654
原创 redis常用数据类型及API使用
文章目录0.通用命令一些简单通用命令数据结构和内部编码单线程架构1.字符串类型2.哈希类型3.列表类型4.集合类型5.有序集合类型0.通用命令一些简单通用命令主要包括keys、dbsize、exists key、del key[key …] 、expire key seconds、type keykeys(redis数据库中所有的键)遍历出所有的keydbsize(可以算出数据库的大...
2019-12-29 15:36:52 996
原创 Java高并发解决思路与手段
同时拥有两个或者多个线程,如果程序在单核处理器上运行,多个线程将交替的换入或者换出内存,这些线程是同时"存在"的,每个线程都处于执行过程中的某个状态,如果运行在多核处理器上,此时,程序中的每个线程都将分配到一个处理器核上,因此,可以同时运行。并发情况的关注点在多个线程操作相同的资源时,如何保证线程安全,合理使用和分配资源!
2019-12-19 21:57:12 265
原创 Java性能优化的技术手段以及项目实践
在迭代任务繁多、需求紧张、需求复杂的情况下,有时候开发人员为了追赶需求,而不考虑设计模式、设计原则、系统性能等,给系统埋了很多坑,欠下了许多技术债。当系统性能达到用户无法接受的程度,往往这个时候领导才意识到要安排一个性能优化的任务给开发,然后进行一些代码重构。下面介绍我所了解的Java性能优化的一些技术手段以及我在实际项目中遇到的问题和优化手段。
2019-12-11 21:57:02 568
原创 Spring Boot集成ElasticSearch
SpringBoot集成ES需要引入的maven包有:<!-- https://mvnrepository.com/artifact/org.elasticsearch.client/transport --><dependency> <groupId>org.elasticsearch.client</groupId> <...
2019-12-08 22:23:23 152
原创 MySQL事务与锁机制
前言本文主要包含5个内容:为什么引入事务?什么是事务?事务的ACID以及实现原理并发异常和并发控制技术故障与故障恢复技术事务事务常见的面试题什么是事务?事务的隔离级别有哪些?事务的每个隔离级别会引发什么问题?mysql默认的是哪个隔离级别?mysql有哪些锁?数据库崩溃时事务的恢复机制(redo日志和undo日志)...
2019-12-05 23:28:18 364
原创 Kubernetes容器集群管理
kubernetes是Google在2014年6月开源的一个容器集群管理系统,采用Go语言开发,Kubernetes业界也成K8s。K8s是Google内部一个叫Borg的容器集群管理系统衍生出来的,Borg已经在Google大规模生产运行10年之久。2015年7月,Kubernets v1.0正式发布,截止到2018年1月27日最新稳定版本是v1.9.2。Kubernets目标是让容器化应用简单高效。官网:www.kubernets.io
2019-12-04 21:55:29 216
原创 Spring Boot集成MongoDB(单机模式)
本文介绍了SpringBoot集成了MongoDB,利用SpringDataMongodb操作文章的评论的增、删、改、查过程。
2019-11-28 00:19:47 480
原创 ElasticSearch概念与基本api使用
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...
2019-11-25 22:54:27 297
原创 Linux环境下ElasticSearch单实例以及集群搭建
这里写自定义目录标题什么是ElasticSearch新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入什么是El...
2019-11-20 22:04:10 253
原创 springmvc+freemarker原理
静态资源默认情况下,Springboot会从classpath下的static、/public,/resources,/META-INF/resources下加载静态资源可以通过修改spring.resources.staticLocations来修改静态资源,加载地址因为应用被打成Jar包,所以之前的src/main/webapp不会加载...
2019-10-14 23:39:44 342
原创 SpringBoot特性以及它与Spring、SpringMVC的区别
Java开发人员几乎都使用过Spring,Spring为Java程序提供了非常实用的功能,如:Spring JDBCSpring MVC、Spring Security、Spring AOP、Spring ORM、Spring Test等,这些开发模块的出现,不仅缩短了应用程序的开发时间,而且提高了应用开发的效率。而现在SpringBoot往往更受欢迎,本文主要介绍一下SpringBoot的特性,以及它与Spring、SpringMVC的区别。
2019-10-14 23:37:08 211
原创 Java8时间类型总结
LocalDateLocalDate.now().atTime(LocalTime.MIN) //获取当天时间的最小值(2019-06-16T00:00)LocalDate.now().atTime(LocalTime.MAX) //获取当天时间的最大值(2019-06-16T23:59:59.999999999)...
2019-06-16 15:18:28 541
原创 VMware12安装Ubuntu 16.04遇到问题总结
LINUX开启ssh服务,报错:ssh: connect to host xxx.xxx.x.xxx port 22: Connection refused 安装了Ubuntu 虚拟机已经打开了ssh 服务,并且ssh时密码也输入正确,但是一直提示被拒绝,参考:
2019-05-19 15:09:35 465
原创 redis基础以及ubuntu16.04环境下搭建
高性能Key - Value 服务器多种数据结构丰富的功能(pepeline、发布订阅、慢查询、GEO等)高可用分布式支持
2019-02-15 20:09:55 378
原创 Java常用的7中遍历方式速度比较
&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;这段时间接触到一个后台返回列表排序的问题,列表返回给前端速度很慢,采用Java8中并行流的方式很快,串行很慢,想测试一下Java8中不同数据量7种遍历方式速度的比较。&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;之
2019-01-27 10:30:58 1916
原创 通过ISBN或者豆瓣id来获取豆瓣的基本信息
本文主要是通过isbn或者豆瓣的id来获取豆瓣书籍的基本信息,豆瓣接口的url是已知的,通过传参的方式调用http接口从而查出基本信息。
2019-01-18 22:24:15 4024
原创 Redis 的线程模型
现在每个互联网公司基本上都会用到Redis,Redis 相比 Memcached 来说,拥有更多的数据结构,能支持更丰富的数据操作。如果需要缓存能够支持更复杂的结构和操作, Redis 会是不错的选择。本文主要介绍Redis的单线程模型。
2019-01-08 22:41:09 621
原创 git常用命令大全
1.git init:在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹2.git clone: 获取一个url对应的远程Git repo, 创建一个local copy3.git status: 查询repo的状态4.git log: 显示当前分支的历史提交记录5.git branch -d &lt;BranchName&gt;: 删除本地分支
2018-12-07 20:25:48 212
原创 gradle项目使用mybatis-generator自动生成代码
mybatis-generator工具是用来生成mybatis的model,mapper,dao持久层代码。本文结合现在主流的构建工具是gradle,连接数据库自动生成相应代码。虽然mybatis-generator没有提供gradle的插件,但是可以用gradle调用ant任务,因此,gradle也能间接启动mybatis-generator。
2018-11-18 11:23:39 1008 2
原创 Completablefuture用法总结
Future接口有一定的局限性,比如,我们很难表述Future结果之间的依赖性,因此在Java8中引入了CompletableFuture,它针对Future做了改进,可以传入回调对象,当异步任务完成或者发生异常时,自动调用回调对象的回调方法。
2018-10-22 00:13:55 331
libsvm-3.20 版本 Windows64位系统
2017-12-15
java poi读取excel表格数据专用jar包 包括(dom4j和xmlbeans包)
2016-10-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人