自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只奔跑的小羊

A running lamb....

  • 博客(100)
  • 收藏
  • 关注

原创 2022.05 - 阅读

程序人生 阅读

2022-07-09 17:51:45 627 1

原创 2022.04 -阅读

《你不是迷茫,而是自制力不强》世界每天都在运转,太阳东升西落,你身边的人匆匆走过,没有一件事、一个人告诉你应该终止自己的计划,停止自己前进的脚步。而只是你,从这些外部的因素中寻找到理由,逃脱压力和疲惫,放松自己,问题在你自己身上。你想要做好的每件事,都刚好在你的舒适范围之外我们终此一生,就是要摆脱他人的期待,找到真正的自己。如果你不希望成为别人思想的“傀儡”,就要想方设法掌控自己的人生。有些事情,你明明知道它特别重要,可是,你仍然没有办法在第一时间完成。可能你的Deadline没有到来,也可

2022-05-01 09:52:33 305

原创 Mysql事务相关面试汇总,你了解多少?(持续更新中...)

1、什么是事务? 简单来说就是:事务可以保证数据库额的完整性,保证执行的sql语句要不成功,要不失败,不存在中间状态(一半成功,一半失败)。事务是一系列的数据库操作,他们要符合 ACID 特性,事务是数据库应用的基本单位。MySQL 事务主要用于处理操作量大,复杂度高的数据。2、事务特性是什么?事务的4大特性:ACID;A:原子性(Atomicity,或称不可分割性),一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程.

2022-04-16 15:03:57 1023

原创 2022.03 - 阅读

《如何成为一个会学习的人》后感:既然怎样都要做,那就全力以赴的投入吧!不拘泥与当前(人,事,环境等),不断尝试去寻找合适自己的学习环境而后全力以赴《精准努力:刘媛媛的逆袭课》后感:认识自己是一个漫长的过程,不要停止寻找适合自己的学习方式,节奏,不断去成长。你能依靠的只能是你自己,认识自己没有认识的那一面,试着去真正了解自己(了解自己需要什么。应该做什么。应该怎么去做),这很难,但是路漫漫其修远兮。人生本来就是不断的去追逐...《李叔同:名如何 爱如何 生命该如何》后感:其实李叔同这么名字

2022-04-16 13:44:19 190

原创 终于搞懂Mysql事务及实现原理

对于Mysql的事务,想必大家应该都不陌生,我们也容易联想到几个名词:ACID,要不都成功,要不都失败等等。其实我们在实际的开发过程中,一般也都会用到事务处理,如:在spring框架中相关事务的注解:@Transactional等,这里我们就展开了.一、什么是事务(百度百科的定义)在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction

2022-04-05 15:53:35 1953

原创 设计模式 之 工厂模式

工厂模式按照实际业务场景分为 3种不同的实现方式 :(1、简单工厂模式,2、工厂方法模式 3、抽象工厂模式)1、简单工厂模式 主要创建步骤: 1、定义一个产品接口(或抽象) 2、具体实现类(产品接口实现类)3、通过创建工厂类进行产品的创建简单工厂模式结构简单,调用方便缺点:职责单一,工厂类单一,当产品增多时,工厂类的代码维护比较困难,代码臃肿(可由工厂方法模式解决)2、工厂方法模式主要步骤: 1、创建产品接口 ...

2022-02-26 16:23:54 168

原创 设计模式 之 单例模式

1、单例模式通常写法public class Singleton {/*** 单例模式通用写法*/private static final Singleton instance = new Singleton();private Singleton() {}public static Singleton getInstance() {return instance;}}2、单...

2022-02-26 16:21:44 62

原创 设计模式之软件设计原则

一、开闭原则 (核心:面向抽象编程) 概念:对拓展开发,对修改关闭 理解:就是子类继承父类,继承父类的方法,保证父类原来方法逻辑不变的基础上,新增新的方法,这样既保证了原来的方法,有增加了新增的逻辑处理。二、依赖倒置原则 (核心:面向接口编程) 设计代码结构时,高层模块不应该依赖底层模块,从顶层接口开始设计,然后在通过实现接口(把具体逻辑细化),它们都应该依赖抽象类,减少类之间的耦合。依赖注入就是采用这个样的一个概念。定义抽象的顶层接口,然后通过不同的...

2022-02-26 16:18:21 121

原创 Redis基础知识(面试必过)

Redis基础知识

2022-02-19 16:20:12 799

原创 2022.02 - 阅读

阅读 - 后感

2022-02-19 16:07:33 196

原创 2020年JVM高频面试题

1、jvm组成部分以及作用?* 方法区 (主要用于存储类信息,常量,静态变量即编译后的代码等数据)* 堆 (虚拟机最大的一块内存了,主要用于存储所有的对象实例)* 虚拟机栈 (主要线程局部变量表,操作数栈,动态链接,方法等信息)* 本地方法栈 (作用于虚拟机栈一样,但它主要用于为虚拟机调优本地(Native)的方法服务的)* 程序计数器 (主要记录当前线程执行的信息,字节码指令,循环跳转,结束,异常处理线程恢复等)2、JVM 主要

2020-11-22 17:33:39 322 2

原创 Docker之RabbitMq的安装

Docker入门介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 个人理解:Docker 就是一个大的容器,里面可以安装很多其他容器。就想Docker官网的那个图标一样.每个容器里面是一个独立的系

2020-11-01 16:00:42 167

原创 easyui-1.4.1 comboTree父子节点模糊搜索

easyui-1.4.1 comboTree需求: 一个comboTree树,新增可以输入进行模糊匹配如果模糊匹配到了父节点,那么展示该父节点下所有的子节点,如果模糊匹配到了某一个子节点,那么展示该子节点以及对应的父节点话不多说,直接上代码(其实我也是找的一个大神的comboTree大神秀操作,稍作修改而已)如下: (function ($) { //combotree可编辑,自定义模糊查询 $.fn.combotree.defaults.editable = t

2020-10-11 16:51:02 380

原创 Java线程池知多少?

什么是线程池? 池,那应该就是有很多的预计创建好线程,等待被使用了 其实创建线程是相对来说是很耗费资源的,而且创建和销毁一般都是成对的出现的,如果没有合理的创建和销毁, 那么是会很影响系统的性能的,会过度消耗系统资源,最终可能导致系统资源不足,甚至导致系统不可用等问题。 为了解决这个问题,就有只能提前创建好一定数量的线程,并且统一管理。 因此就又来线程池的概念,需要使用就从线程池去分配,使用完之后不会被销毁等待下一次任务分配。增加了线程的重复创建导致不必要的开销。 总之一句话就是 : 线程

2020-09-26 17:07:22 101

原创 CHM知多少??

CHM的个人感悟什么是CHM ?CHM的发展CHM的原理浅析欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入什么是CHM ? 1、CHM 全称:ConcurrentHashMap 是J.U

2020-09-20 08:25:44 2361

原创 ReentrantLock一探究竟

对ReentrantLock的认知什么是ReentrantLock?ReentrantLock能做什么?我对ReentrantLock的理解原理猜测验证公平锁和非公平锁的区别ReentrantLock与Synchronized 的比较什么是ReentrantLock? 对于锁(Lock,Synchronized等)相信大伙都不会陌生的吧,个人认为锁就为了保证数据的并发安全性(在存在线程竞争同意资源的时候),早在Lock工具类出来前在Java中的应用程序对于多线程的并发安全处理只能基于synchroni

2020-09-13 19:46:15 119

原创 ThreadLocal您了解多少?

ThreadLocal你了解么?什么是ThreadLocalThreadLocal使用场景用法基本原理扩容什么是线性探测?为啥计算下标都是需要2的次幂?最后的总结ThreadLocal的内存泄露建议什么是ThreadLocal 其实对于ThreadLocal并不陌生,在多线程的场景下,应该是都有使用的, ThreadLocal实际上一种线程隔离机制,也是为了保证在多线程环境下对于共享变量的访问的安全性。线程私有的,那么也就存在线程共享。 1、因为每个 Thread 内有自己的实例副本,且该副本只能由当

2020-09-13 15:34:18 248

原创 Java并发编程阶段性回顾

java并发这块学习了也有几个月了,整体感觉效率不高,总是感觉还差一点,有些东西时间久了也容易忘记,如何让自己高效的学习就显得很重要了。这段时间也断断续续学习,也好久没有进行总结了(快2个多月了),今天思索再三决定还是先总结下,一味的去看,感觉这些知识还是不属于自己的,把之间的内容融合下,思考下。(按照大纲分章节的来叙述)一、线程的意义及用途 1、什么是线程? 说到线程 就需要了解下进程了,我们其实可以这么理解,一个进程就是一个应用程序(如:QQ音乐)。每个进程执行时...

2020-08-30 17:39:28 242

原创 Java多线程(并发)浅谈(三)

前面我们说到了,线程既然存在锁的竞争,那么是否存在锁不释放的问题(即持有锁的某一线程一直占有锁,不释放(或者它在等待其他线程释放锁)),答案是肯定的。那么我们如果解决这个问题呢?? 在了解这个问题之前,我们需要明白什么是死锁,什么情况下会问导致死锁? 死锁:处于相互竞争同一资源的线程之间的相互等待,都在等待其他释放,即导致永久阻塞的现象。 活锁:显而易见,就是相互竞争资源的线程,没有阻塞,正常按照一定的顺序执行中。 导致死锁的条件1、循环等待,即:线程A 等待...

2020-06-06 15:47:35 155

原创 前端(EasyUI -1.4.1)躺坑之旅

作为一个蹩脚前端,已经接触过一段时间EasyUI了,这个框架其实很老了,基本都是一些原生JS操作。我也只能一葫芦画瓢了,有些前端的原理其实并不是那么的理解,但是一般来说基本还是能搞定的,百度下,copy下。这边就记录下一些坑,以便日后查看,也有个借鉴。 DataGrid 组件定义 表 :<table id="id" style="width: auto; height: 100%"></table>工具栏定义 <div id="toolbar...

2020-06-06 15:04:07 422

原创 Java多线程(并发)浅谈(二)

前面我们讲到过了线程的一些性质,以及Synchronizd关键字的的用法以及原理(保整理原子性,可见性)。今天介绍的也是个关键字(volatile - 保证了可见性) 可见性:可见性就是当一个线程执行的时候,每次的读取都是最新的值,不存在值已经更新了,但是取出的值还是原来的值(否则那只能说明更新失败等)。但在多线程的情况下,这种情况就是很有可能发生,例如:线程A 更新了主内存的某个值,但是此时线程B刚好要获取这个值,因此这个时候线程B获取的值很有可能就是历史的值了,因为这个时候线程A 修改...

2020-05-31 19:12:12 207

原创 Spring的浅识(一)

spring相信大家都应该并不陌生,现在应用也相对来说比较广泛了,有些大厂也对spring进行了改版,从而更加贴合自己的业务场景。剩下的就是攻城狮的CRUD了,可能有些人(比如我)仅仅只是停留在会用的地步,对spring的内部结构以及原理可能都不是很了解,遇到很多的问题异常有时候只会一脸蒙蔽,不知所措,直接找度娘解决。很显然这样的方式其实是不对的,当然应付一些日常的开发,是没有任何问题的。但是一旦出现一些奇怪的异常或者哪个地方配置有问题,就不知道问题的原因在哪?这样往往会消耗很多的时间,有时候...

2020-05-31 15:24:59 232

原创 Java多线程(并发)浅谈(一)

缘由:很明显多线程就是为了提高办事的效率,因为单线程的处理效率相对来说越来越达不到要求了,随着硬件这块的提升(CPU多核的出现),这样也提高了CPU的使用率,不至于导致资源的浪费,多个任务可以并行执行,如果一次执行多个任务,如果其中一个出现了阻塞,可能会导致与当前任务无关的的任务也会阻塞,这里就引入了线程(根据不同的任务去创建不同的线程)这样就可以避免不相关的的任务之间相互不受影响...

2020-05-04 11:10:41 238

原创 浅谈HashMap底层基本原理

相信大家对HashMap应该都不陌生吧,应该算是经常使用的集合类型了,最近因有看相关的文章,其实网上有很多的相关资料,我只是将自己理解的记录下来,在这里跟大家一起分享与学习 首先我们来说下HashMap,必然要知道HashMap 是什么(了解它的数据结构),有什么用(特点及优势)? 在Java中,最基本的数据结构其实也就2中(一个是数组,一个是链表),个人觉得大部...

2020-04-06 18:39:45 403

原创 Redis升华篇

本章主要会讲解1、Redis的一些其他比较高级一些用法,2、Redis 的一些底层原理等 3、Redis 的持久化机制等内容一、Reidis的高级特性用法 消息队列我们都知道Redis有列表/队列的特性及用法(list)先进先出(FIFO).这样是否会有问题呢?比如:消费者不停的而去消费(lpop)就如同写了个循环一样(即需要不停的去通信),但是为了减少这一消耗,客户端...

2020-03-21 17:02:15 177

原创 Redis不应只是初见,应该还有后续

Redis 想必大伙应该都知道,而且肯定是用到了的。我这里就不一一赘述了。那么我们就来聊一聊Redis 的来源,主要用于做什么,有哪些优势等等.一、Redis 是什么? 来源:据说是08 年的时候有一个意大利西西里岛的小伙子,在创建一个网站时候,发现的有些由于读写的操作频繁,一开始是考虑的Mysql,但是发现在并发高的时候,发现怎么优化数据库都效果不明显,因为数据库存储的是...

2020-03-14 19:04:00 170

原创 JVM 进行时

上一篇中 我讲述了下关于JVM的基础内容,这次呢,主要从JVM的内部存储结构出发....即:主要了解想堆(Heap)的内存模型一块是非堆区,一块是堆区。堆区分为两大块,一个是Old区,一个是Young区。Young区分为两大块,一个是Survivor区(S0+S1),一块是Eden区。 Eden:S0:S1=8:1:1S0和S1一样大,也可以叫From和To。那么对于这样内存...

2019-12-21 15:46:43 146

原创 一个新手菜鸟的JVM 入门初体验

话说现在jdk已经有好多个版本了,官网楼一眼:https://blogs.oracle.com/java-platform-group/the-arrival-of-java-13已经13了. 以前很少关注专业的官网,学到的都是二手资料,也不知道对不对,还是得多逛逛官网,官网才是权威(英语渣渣的我,看官网就是悲催)。好了,言归正传,今天我们一起来聊聊JVM ,是本人的一点点浅见,还请各...

2019-12-14 17:17:48 267

原创 Centos7环境下 Redis5.0.5 下载安装及配置

最近都在看关redis 的内容,一直忙着没时间整理。今天抽空先把Redis的安装以及配置整理了下准备工作(Redis-5.0.5,Centos7 (准备环境)这里有一篇大神的杰作安装Centos7的文档(https://blog.csdn.net/babyxue/article/details/80970526)1、下载地址在:redis.io根据不同的应用分别不同的目录比...

2019-10-19 11:02:30 683

原创 Spring5.0.2源码构建(踩坑)

这俩天开始搞了下spring5.0.2的源码构建,遇见了很多的坑,网上也找了许多大牛的博客,但是呵呵..,也许各种环境不一样,依然没有解决我的问题。好了,闲话少说,现在开始介绍下我的构建过程吧!需要准备版本工具:spring5.0.2,gradle4.3.1,jdk1.8_131,IntelliJ IDEA 2018.2.8详细步骤:一、spring5.0.2 源码准备下载路...

2019-10-07 11:15:39 2565

原创 标题还没想好

你的付出永远跟你的回报成正比。不管你信不信,其实我还是蛮信的...好几年没写博客了,但我觉的得继续..我想做一只奔跑的小羊,不知疲倦的奔跑着,只为去那更加广阔的大草原。。。...

2019-10-05 17:48:38 142

原创 杭电2844(背包+进制的处理)。

点击打开链接题目意思:要求你再给出的M范围(1~M),分别用给出的钱币,以及所对应的数量。求出看能并凑出的钱数有多少在(1~M)之间,包括边界。。此题一看就应该可以猜到是用DP做,还有就是可以想到利用母函数。但是再看看数据,就可以排除一般DP,还有就是母函数的M值太大,可能会超时,因此这也是不可行的。因此就看看DP可以完成了吗!!但是若直接DP可能也会数据就太大,因此也就要分开考虑

2013-11-20 15:41:07 905

原创 杭电2577

点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=2577题目意思求出操作次数最小?最少只要多少次就可以输完一串字符!!这里唯一要注意就是要考虑是否开(Capslock)是否关,,什么时候开启,怎样开启!到哪了关闭!最后是否关闭?这里也就要分别用两个数组来保存开/关次数。并且最终判断出开关哪个用的次数最少!!具体见代码:#inclu

2013-11-17 21:15:29 627

原创 杭电1171(一维背包+完全背包)

http://acm.hdu.edu.cn/showproblem.php?pid=1171题目意思:要求:把给出的物品分给两个学院,保证前个必须大于后一个院。给出的数据是:物品的价值,和数目.思路:一开始我想到直接一维背包,后来想想,不行,万一在球的中途求得只并非最大,但是你有判断不了。因此这里可能不能直接一维背包不能解决,但是必须加是上完全背包,对每一个组数据,进行判断(与总和的一

2013-11-17 18:33:56 639

原创 杭电2571(DP)。

http://acm.hdu.edu.cn/showproblem.php?pid=2571题意:求出从从(1,1)走到(n,m)的最大值!并且必须按要求走!!另外一种就是用搜索做!求出最大的值!状态方程:sum[i][j]=max{sum[i-1][j],sum[i][k]}+v[i][j];其中1具体见代码:#include#include#include#inclu

2013-11-14 21:54:38 809

原创 杭电1505题.

http://acm.hdu.edu.cn/showproblem.php?pid=1505题意:题目要求我们在给出的一个n*m的矩阵里面积求出他的最大可利用的面积。就是算出可以组成多大的面积(最大),最大的面积中间不可以有被占领的土地。次题类似与1506题,只是其中要有点变化,就是怎么把其中的“F”(空地),变成我们所需要用的高度呢?而且棘手的是这题还是二维的,这样就加大了难度,因此有必

2013-11-14 17:12:20 789

原创 杭电1506题。

http://acm.hdu.edu.cn/showproblem.php?pid=1506题意:给出好多矩形,每个矩形的宽已规定为1,高度为输入的h[i],要求我们求出其中面积最大的矩形!!求面积。即求出哪些靠在一起的矩形的最大面积。首先的很容易想到的就是直接求,但是一看数据太大,靠暴力是解决不了的!!因此参考了别人的方法,可以根据:       (  对于每一块木板,Area=

2013-11-14 16:56:01 836

原创 杭电1081(矩阵问题)用LIS+DP解决的(有参考。)

点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=1081题意:就是给出一个矩阵N*N.,然后要求你求出最大的子矩阵的(即求出最大的值)。思路:有2个,但是时间复杂度各有不同。一种当然毫无疑问就是直接暴力求解,其次的就是先用LIS将矩阵简化,然后就是化为(DP)的问题了。关于LIS的讲解,见大神讲解(点击打开链接http://blog.cs...

2013-11-02 14:36:47 608

原创 杭电1080-Lcs+DP(**有借鉴**)

http://acm.hdu.edu.cn/showproblem.php?pid=1080首先题意:题目意思是:要求你必须按照给出的一个表格每一对字母对应的值。怎样才能在求出两个字符串最长子字符串的同时,得出最大的值。具体思路:首先根据LCS的公式的出最长的子串。再根据DP的思想求出最大的值,球最大的值时可以加“-“;来保证值最大!(开始对于LCS)不太理解,有点难。具体细节见代

2013-11-01 18:34:21 641

原创 杭电1494---01背包。

http://http://acm.hdu.edu.cn/showproblem.php?pid=1494题意很清楚,略。思路和显然这是一道背包题。但起初一看到是并不太确定是什么背包?但是仔细分析后还是时候可以确定的。首先我自己一开始做时遇到了一点问题。主要就是不太确定定用那个式子,dp[i][j]中的i,j,不确定。因此一直停滞不前。最后看了大牛的代码,才明白。在这里我就只说我自己在这里

2013-09-30 18:33:27 582

空空如也

空空如也

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

TA关注的人

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