自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【转】CentOS7 防火墙(firewall)的操作命令

安装:yuminstall firewalld1、firewalld的基本使用启动: systemctl start firewalld查看状态: systemctl status firewalld禁用,禁止开机启动: systemctl disable firewalld停止运行: systemctl stop firewalld2.配置...

2019-08-29 11:32:00 168

转载 centos7 ssh: connect to host 10.0.2.15 port 22: connection refused

如果连接的是虚拟机centos7,需要将网络设置为桥接模式对,就是这个问题折腾了我2小时转载于:https://www.cnblogs.com/yfzhou/p/11405121.html

2019-08-24 16:35:00 1316

转载 使用HashMap+双向链表实现LRU

Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and put.get(key) - Get the value (will always be positive) of the key ...

2019-07-25 19:36:00 296

转载 Java线程池详解_JDK1.8.0_191

Java线程池线程池的作用1.重用存在的线程,减少处理多请求时线程创建、销毁产生的开销。2.请求达到时工作线程通常已经存在,请求无需等待,提高系统的响应性。Executors中线程池的静态工厂方法1.newFixedThreadPool创建一个定长的线程池,每当提交一个任务就创建一个线程,直到达到池的最大长度,这时线程池会保持长度不再变化。2.newC...

2019-07-23 18:57:00 387

转载 ArrayList源码分析_JDK1.8.0_191

ArrayList JDK1.8.0_191基于数组实现允许null值不是线程安全Vector是ArrayList的线程安全版本ArrayList的变量transient Object[] elementData;ArrayList的方法1.add():添加元素public boolean add(E e) { ens...

2019-07-22 19:57:00 92

转载 LinkedList源码分析_JDK1.8.0_191

LinkedList JDK1.8.0_191基于双向链表实现,实现了Deque接口,可以用于队列操作不是线程安全,可以使用Collections.synchronizedList包裹一个线程安全的ListedList支持fail-fast机制ListedList的变量transient Node<E> first;transient N...

2019-07-22 19:39:00 104

转载 HashMap源码分析_JDK1.8.0_191

HashMap JDK1.8HashMap使用拉链法解决哈希冲突,允许空键空值,不具备线程安全的特性。HashMap不保证map元素的顺序。特别的是,不保证元素顺序随时间推移保持不变。HashMap与Hashtable大致等同,除了:1.Hashtable线程安全,HashMap不是线程安全2.Hashtable不允许使用null作为键和值,而Hash...

2019-07-22 11:13:00 93

转载 生产者消费者模型Java实现

生产者消费者问题是研究多线程程序时绕不开的经典问题之一。问题描述如下。使用一个商品的缓存池用来存放商品。当池子满时,生产者不能往池子里加入商品;当池子空时,消费者不能从池子中取得商品。使用Object的方法 wait() notify()/notifyAll()实现获取锁和释放锁都是针对Object而言的,而和线程无关。试想如果和线程相关,那么一个线程就无法使用多个锁。...

2019-06-10 11:37:00 102

转载 INT整型最小值取负还是本身的问题

在刷LeetCode题目powx-n遇到。题目描述Implement pow(x,n).public double pow(double x, int n) { if (n == 0) return 1; else if (n < 0) return pow(1 / x, -n)); else if (n % 2 =...

2019-05-27 14:58:00 370

转载 字节跳动面试题

Java1.ThreadLocalThreadLocal实现线程本地存储的功能,同一个ThreadLocal所包含的对象,在不同的Thread中有不同的实例,获取ThreadLocal对象时其实是在Thread类中的Map类型的threadLocals变量中通过ThreadLocal变量为键值进行获取。2.volatile的作用和原理被volatile修饰的变量保证Jav...

2019-03-21 17:32:00 1050

转载 Spring cloud Feign 调用端不生效

如果提供方的接口经过测试是没问题的话。消费方启动类加上@EnableFeignClients注意定义的接口如果不和启动类在同一个包路径下,需要加basePackages即:@EnableFeignClients(basePackages = "com.study")转载于:https://www.cnblogs.com/yfzhou/p/10395609.html...

2019-02-18 14:51:00 1111

转载 进程同步——哲学家进餐问题Java实现

哲学家就餐问题是1965年由Dijkstra提出的一种线程同步的问题。问题描述:一圆桌前坐着5位哲学家,两个人中间有一只筷子,桌子中央有面条。哲学家思考问题,当饿了的时候拿起左右两只筷子吃饭,必须拿到两只筷子才能吃饭。上述问题会产生死锁的情况,当5个哲学家都拿起自己右手边的筷子,准备拿左手边的筷子时产生死锁现象。解决办法:拿筷子之前判断两支筷子是否有人使用,都无人使用时才...

2019-01-31 12:08:00 702

转载 数据库事务四大特性、隔离级别

【以转账为例】事务事务是指满足ACID的一组操作,可以通过Commit提交一个事务,也可以使用Rollback进行回滚。ACID1.原子性(Atomicity)事务被视为不可分割的最小单元,事务的所有操作要么全部提交成功,要么全部失败回滚。2.一致性(Consisitency)数据库在事务执行前后都保持一致性状态。即转账前后,两个人账户总金额不变。3.隔离...

2019-01-25 15:08:00 371

转载 B树 B+树 红黑树

B-Tree(B树)具体讲解之前,有一点,再次强调下:B-树,即为B树。因为B树的原英文名称为B-tree,而国内很多人喜欢把B-tree译作B-树,其实,这是个非常不好的直译,很容易让人产生误解。如人们可能会以为B-树是一种树,而B树又是一种树。而事实上是,B-tree就是指的B树。特此说明。m阶B树的M阶指的是所有结点中的子结点个数的最大值。一个m阶B树是一棵空树,或者是...

2019-01-18 22:23:00 490

转载 SpringCloud Config Bus webhook 只能刷新config server 不能刷新config client

在 https://github.com/spring-cloud/spring-cloud-bus/issues/124 中有提到版本SpringCloud:Greenwich.RC1原因由于spring-cloud-starter-bus-amqp对config client的bus id定义有问题,导致无法找到github(或其他git仓库)更改所对应的服务...

2018-12-31 22:58:00 151

转载 Java8 容器类详解

ArrayListVectorCopyOnWriteArrayListLinkedListHashMapConcurrentHashMapLinkedHashMapLinkedBlockingQueuePriorityQueue使用场景随机访问ArrayList的线程安全版读多写少,写加锁,写操作在复制的数组上进行...

2018-12-10 16:56:00 293

转载 《大话设计模式》读书笔记

一、简单工厂模式1.面向对象三大基本特性:封装、继承、多态封装:封装是指将现实世界中存在的某个客体的属性与行为绑定在一起,并放置在一个逻辑单元内。该逻辑单元负责将所描述的属性隐藏起来,外界对客体内部属性的所有访问只能通过提供的用户接口实现。这样做既可以实现对客体属性的保护作用,又可以提高软件系统的可维护性。只要用户接口不改变,任何封装体内部的改变都不会对软件系统的其他部分造成影响...

2018-11-18 12:31:00 470

转载 Springboot + Vue + shiro 实现前后端分离、权限控制

本文总结自实习中对项目对重构。原先项目采用Springboot+freemarker模版,开发过程中觉得前端逻辑写的实在恶心,后端Controller层还必须返回Freemarker模版的ModelAndView,逐渐有了前后端分离的想法,由于之前比没有接触过,主要参考的还是网上的一些博客教程等,初步完成了前后端分离,在此记录必备查阅。一、前后端分离思想前端从后端剥离,形成一个前...

2018-10-18 21:06:00 709

转载 @PathVariable @RequestParam @RequestBody 的区别

转载自:@RequestParam @RequestBody @PathVariable 等参数绑定注解详解简介:handler method 参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类:(主要讲解常用类型)A、处理requet uri 部分(这里指uri template中variable,不含queryString部分)的注解: @...

2018-09-28 10:25:00 102

转载 Nginx 502错误:upstream sent too big header while reading response header from upstream

原因:在使用Shiro的rememberMe功能时,服务器返回response的header部分过大导致。解决方法:https://stackoverflow.com/questions/23844761/upstream-sent-too-big-header-while-reading-response-header-from-upstream转载于:https://...

2018-09-25 19:57:00 157

转载 SQL中char、varchar、nvarchar的区别

本文转载自:SQL中char、varchar、nvarchar的区别char char是定长的,也就是当你输入的字符小于你指定的数目时,char(8),你输入的字符小于8时,它会再后面补空值。当你输入的字符大于指定的数时,它会截取超出的字符。nvarchar(n) 包含 n 个字符的可变长度 Unicode 字符数据。n 的值必须介于 1 与 4,000 之间。字节的存储...

2018-09-21 18:11:00 83

转载 Shell命令

1.shell 学习之if语句2.将awk输出的内容输出到变量repoid=$(docker ps -a | grep guan-home | awk '{print $1}')转载于:https://www.cnblogs.com/yfzhou/p/9687774.html

2018-09-21 17:49:00 74

转载 Mac下 Docker部署SpringBoot应用

一、安装Docker环境使用 Homebrew 安装macOS 我们可以使用 Homebrew 来安装 Docker。Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:$ brew cask install docker==> Creating Caskroom at /...

2018-09-19 18:56:00 262

转载 Spring Boot with Docker

翻译自:https://spring.io/guides/gs/spring-boot-docker/Spring Boot with Docker这篇教程带你一步步构建一个Docker镜像用来运行一个Spring Boot应用。你将要构建Docker是一个具有“社交”方面的Linux容器管理工具集,允许用户发表容器镜像并使用其他用户发表的容器镜像。一个Docker镜像是...

2018-09-18 20:35:00 134

转载 IntelliJ IDEA SpringBoot 使用第三方Tomcat以及部署

花了半天时间终于成功,记录以备查阅。一、第三方Tomcat部署部署部分参考的是:把spring-boot项目部署到tomcat容器中目标:把spring-boot项目按照平常的web项目一样发布到tomcat容器下1. 修改打包形式在pom.xml里设置 <packaging>war</packaging><groupId>...

2018-09-18 13:15:00 136

转载 JVM垃圾回收机制

一、哪些内存需要回收?  JVM内存结构包括五大区域:程序计数器、虚拟机栈、本地方法栈、堆、方法区。其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生、随线程而灭,因此这几个区域的内存分配和回收都具备确定性,就不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。而Java堆区和方法区则不一样,这部分内存的分配和回收时动态的,正是垃圾收集器所需关注的部分。...

2018-09-17 23:43:00 82

转载 Java面试题

1.装箱与拆箱是什么?为什么需要装箱与拆箱?基本类型的数据不具备“对象”的特性——不携带属性、没有方法可调用。Java向面向对象语言的靠近。在泛型中,基本类型是不可以做泛型参数的,不能用于一些集合类型。2.解释内存中的栈(stack)、堆(heap)和静态存储区的用法。通常我们定义一个基本数据类型的变量,一个对象的引用,还有就是函数调用的现场保存都使用内存...

2018-09-17 23:18:00 85

转载 Mybatis插入数据返回自增主键

方法有很多,参考mysql函数之六:mysql插入数据后返回自增ID的方法,last_insert_id(),selectkey这里记录一下工作中自己用到的selectkey方法的详细过程。pojo类: 1 public class Client { 2 /** 3 * 客户id 4 */ 5 @Id 6 ...

2018-09-17 17:32:00 75

转载 SpringBoot前端给后端传list

前端JS 1 var taskList = ["123","456"]; 2 var params = { 3 taskList: taskList 4 }; 5 6 $.ajax({ 7 type: "PUT", 8 dataType: "json", 9 url: "/client/update",10 ...

2018-09-17 14:36:00 2248

转载 Mybatis学习—XML映射文件

总结自Mybatis官方中文文档Mapper XML 文件MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更好。SQL 映射文件有很少的几个顶级元素(按照...

2018-09-16 23:19:00 71

转载 Mybatis学习—XML配置文件

总结自Mybatis官方中文文档XML 映射配置文件MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置(settings)和属性(properties)信息。文档的顶层结构如下:configuration 配置properties 属性settings 设置typeAliases 类型别名typeHandlers 类型处理器o...

2018-09-16 22:19:00 73

转载 Mybatis学习—入门

总结自Mybatis官方中文文档什么是 MyBatis ?MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 J...

2018-09-14 23:38:00 94

转载 log4j日志相对路径,Tomcat(第三方和Springboot内置)参数catalina.home和catalina.base的设置...

关于Log4j日志相对路径的配置请看:log4j 产生的日志位置设置 和 catalina.home、catalina.base .由于我们在Log4j的配置中引入了系统属性${catalina.base},下面讲一下如何设置catalina.base,本质上就是在启动Tomcat的时候,给启动命令或脚本增加参数:可以参考:操作系统的环境变量和Java系统属性1.第三方Tomcat...

2018-09-14 00:37:00 770

转载 Freemarker的页面和JS遍历后台传入的Map

后端传到前端的MapFreemarker页面遍历Map:JS遍历Map:转载于:https://www.cnblogs.com/yfzhou/p/9640006.html

2018-09-13 13:25:00 751

转载 Freemarker中JS取Data-model的值的问题

不能在表达式中使用js变量,比如:1 var key = 1;2 var value = "${stateMap[key]}";因为Freemarker是在服务器端进行解析的,此时js代码还未执行,所以value不能被解析。需要在使用之前先将值接收下来,才能使用:拿到state数组之后就可以进行取值啦。转载于:https://www.cn...

2018-09-13 13:21:00 1143

转载 Jquery动态添加元素并给元素增加onchange相应

动态添加元素:1 $select = $("<select></select>");2 $("<option></option>").val("value").text("text").appendTo($select);3 $("<option></option>").val("value").te...

2018-09-13 13:18:00 1057

转载 [算法] 动态规划

动态规划动态规划是通过把原问题分解为相对简单的子问题的方式来求解复杂问题的方法。适用场景动态规划常常适用于有重叠子问题和最优子结构性质的问题。问题特征最优子结构:当问题的最优解包含了其子问题的最优解时,称该问题具有最优子结构性质。重叠子问题:在用递归算法自顶向下解问题时,每次产生的子问题并不总是新问题,有些子问题被反复计算多次。动态规划算法正是利用了这种子问题...

2018-09-13 13:14:00 114

转载 Linux安装mysql.8.0.12

1.linux安装mysql8.0.12,亲测可用。以下是安装过程中出现的问题: 1 [root@localtest1 file]# systemctl start mysqld 2 Job for mysqld.service failed because the control process exited with error code. See "systemc...

2018-09-12 10:08:00 135

转载 Linux命令

Linux命令大全1. mac终端连接linuxssh root@192.168.199.6root@192.168.199.6's password: 2.scp命令3. 查看端口占用lsof -i:端口号netstat -tnlp |grep 端口号-t (tcp) 仅显示tcp相关选项-u (udp)仅显示...

2018-09-12 10:02:00 63

转载 [算法] 并查集

一、并查集  并查集(Union/Find)是一种树形的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。常常在使用中以森林来表示。二、使用场景某个元素和另一个元素是否属于一个集合:只要看find(x)和find(y)是否返回同一个代表即可。判断无向图的连通分量个数。三、并查集主要操作初始化:把每个点所在的集合初始化为自身...

2018-09-10 23:41:00 75

空空如也

空空如也

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

TA关注的人

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