自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

S.H.I.T

记录程序员的成长

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

原创 Maven配置阿里云镜像不生效问题(解决)

除了在maven的settings.xml文件配置```c`<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf>

2021-03-15 02:11:40 3456

原创 logback日志文件配置 复制即可用

<?xml version="1.0"?><configuration> <property name="log.path" value="./logs"/> <appender name="infoAppender" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${LOG_PATH}/info.log</file>

2020-07-31 10:08:56 216

原创 Linux python3安装过程

删除python3:https://www.cnblogs.com/guo2733/p/11459179.html安装python3:https://www.cnblogs.com/yhongji/p/9383857.htmlssl 脚本https://www.jb51.net/article/176223.htmdjango环境:https://blog.csdn.net/angry_mills/article/details/79249645命令脚本#python卸载whereis

2020-07-21 15:03:53 220

原创 Java获取真实IP地址

Java获取真实IP地址public static String getIP(HttpServletRequest request) { String ip = request.getHeader("x-forwarded-for"); if (!checkIP(ip)) { ip = request.getHeader("Proxy-Client-IP"); } if (!checkIP(ip)) {

2020-06-10 09:06:32 215

原创 JS复制文本的代码

function copyId(str) { //str是你的文本 可根据业务需求进行扩展 var textField = document.createElement('textarea'); $(textField).html(str); document.body.appendChild(textField); textField.select();...

2020-01-07 16:57:14 215

原创 JS获取浏览器的参数(解析中文)

/** * 获取置顶浏览器参数 解析中文 * @param name * @returns {string|null} */function getQueryVariableWithZhongWen(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r ...

2020-01-07 10:59:08 1423

原创 实习算法汇总(一)

一:求集合的所有子集可采用迭代法进行相应的求解如原始的集合为(a,b,c) 则第一次的迭代为(a)第二迭代为(a,ab,b)第三次迭代为(a,ab,b,ac,abc,bc,c)每次迭代,都是上一次迭代的结果+上次迭代结果中每个元素加上当前迭代的元素+当前迭代的元素上一次迭代的结果为a,上次迭代结果每个元素加当前迭代的元素为ab,当前迭代的元素为b组成就是(a,ab,b)代码为...

2020-01-07 00:28:43 225

原创 MVCC具体实现及名词解释(转载 修改一些小错误)

MVCCMulti-Version Concurrency Control 多版本并发控制,MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问;在编程语言中实现事务内存。它使得大部分支持行锁的事务引擎,不再单纯的使用行锁来进行数据库的并发控制,取而代之的是把数据库的行锁与行的多个版本结合起来,只需要很小的开销,就可以实现非锁定读,从而大大提高数据库系统的并发性能一句...

2019-10-10 00:14:34 151

原创 JVM区域TLAB

TLAB全称是Thread Local Allocation Buffer即线程本地分配缓存,从名字上看是一个线程专用的内存分配区域,是为了加速对象分配而生的,每一个线程都会产生一个TLAB,该线程独享的工作区域,JAVA虚拟机使用这种TLAB区域避免多线程冲突问题,提高了对象分配的效率,TLAB空间一般不会太大,当大对象无法在TLAB区域分配时,则会直接分配到堆上-XX:+UseTLAB 使用...

2019-07-22 09:47:34 228

转载 【转】JVM虚拟机参数详解

https://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html

2019-07-22 09:18:57 122

原创 线程的六种状态详细描述

线程的六种状态为NEWRUNNABLEWAITINGTIME_WAITINGBLOCKEDTERMINATED以下为源码/*** Thread state for a thread which has not yet started.*/NEW, /** * Thread state for a runnable thread. A thread in t...

2019-07-18 09:26:44 954 2

原创 用户态和内核态的理解和区别

1、linux进程有4GB地址空间,如图所示:3G-4G大部分是共享的,是内核态的地址空间。这里存放整个内核的代码和所有的内核模块以及内核所维护的数据。2、特权级的概念:对于任何操作系统来说,创建一个进程是核心功能。创建进程要做很多工作,会消耗很多物理资源。比如分配物理内存,父子进程拷贝信息,拷贝设置页目录页表等等,这些工作得由特定的进程去做,所以就有了特权级别的概念。最关键的工作必须交给特...

2019-07-14 11:33:46 395

原创 SpringMVC| Mybatis执行流程

MVC执行流程第一步:发起请求到前端控制器(DispatcherServlet)第二步:前端控制器请求HandlerMapping查找 Handler (可以根据xml配置、注解进行查找)第三步:处理器映射器HandlerMapping向前端控制器返回Handler,HandlerMapping会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控...

2019-07-10 16:59:54 216

原创 请你讲讲wait方法的底层原理

wait即object的wait()和notify()或者notifyall()一起搭配使用wait方法会将当前线程放入wait set等待被唤醒1.将当前线程封装成objectwaiter对象node2.通过objectmonitor::addwaiter方法将node添加到_WaitSet列表中3.通过ObjectMonitor:exit方法释放当前的ObjectMonitor对象,这...

2019-07-10 16:36:20 5503

原创 死锁的特点

死锁是指在一组进程中的哥哥进程均不占有释放的资源,但因互相申请被其他进程所占用不会释放的资源而处于的一种永久等待状态。即两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象。死锁的四个条件:互斥条件:资源不能被共享,只能由一个进程使用请求与保持条件:线程请求别的资源失败的时候,对自己所持有的锁不释放不剥夺条件:对于一个在执行的线程所持有的锁,在这个线程没有执...

2019-07-07 18:41:12 1040

原创 GcRoot可以有哪些?

GcRoot是垃圾回收器算法中判断一个对象是否可以回收的一种算法就是对象到达GcRoot的路径是否还有可达,即是否有可引用链,如果有,这表明对象还存在着引用,如果没有,则表明该对象没有引用,在下一次垃圾回收时就会被回收GcRoot的种类1.虚拟机栈:栈帧中的本地变量表引用的对象2.native方法引用的对象3.方法区中的静态变量和常量引用的对象...

2019-07-07 15:51:55 19097

原创 JVM强弱引用及算法

停止-复制算法:将可用的内存按容量划分为大小相等的两块(from,to),每次只是用其中一块(总有一块是空的【to区域】)。当这一苦熬的内存用完了,就将还存活着的对象复制到另外一块上面,然后把已使用过的内存空间一次清理完。HotSpot虚拟机默认Eden和Survivor大小的比例是8:1,也就是每次新生代中可用的内存空间为整个新生代容量的90%,只有10%的内存时被浪费的。缺点:浪费内存...

2019-07-07 15:45:24 151

原创 java Queue中 remove/poll, add/offer, element/peek区别

这里简单对其重复的方法做点简单的区分。offer,add区别:一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只是得到由 offer() 返回的 false。poll,remove区别:remove() 和 poll() 方法都是从队列中删除第一个...

2019-07-07 15:08:57 529

转载 docker问题原因,path error

https://blog.csdn.net/whatday/article/details/83860135

2019-06-30 01:19:28 261

原创 读深入分析Java Web重点笔记(一)

一.请求的过程当一个用户在浏览器里输入www.taobao.com这个URL时(URL是统一资源标识符),将会发生很多操作,首先它会请求DNF把这个域名解析成对应的 IP地址,然后根据这个IP地址再互联网上找到对应的服务器,向这个服务器发起一个get请求,由这个服务器决定返回默认的数据资源给访问的用户。在服务器端实际上有一个很复杂的业务逻辑,服务器可能有很多台,到底使用那一台服务器来处理请求,这...

2019-06-29 12:08:56 80

原创 数据结构一些不同方法的总结

offer,add区别:一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只是得到由 offer() 返回的 false。poll,remove区别:remove() 和 poll() 方法都是从队列中删除第一个元素。remove() 的行为与 Col...

2019-06-25 12:05:33 113

原创 位运算符总结

位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段。public class data13{...

2019-06-25 11:54:13 125

原创 linux下查看jvm详细参数

java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令。jmap这个命令是用来查看当前系统中jvm进程 heap dump的情况,包括对象的数量,对象所占内存的大小使用方式:先使用jps查看进程id使用 jmap -dump:live,file...

2019-06-23 23:06:27 25364

原创 JAVA 面试宝典 (六)

一 JAVA是如何实现跨平台的?跨平台的是JAVA程序,并不是JAVA虚拟机跨平台,因为JAVA虚拟机(JVM),JVM在每个系统有对应的JVM,Java 虚拟机(JVM)就是负责将字节码文件翻译成特定平台下的机器码然后运行。即把字节码文件class翻译成机器能识别运行的代码,这就是java代码的跨平台。由此可知,JVM的版本有多重,有windows的JVM,有linux的jvm,有mac的jv...

2019-06-18 00:22:04 114

原创 HTTP头部和状态码详解

HTTP报文的组成部分:对报文进行描述的起始行、包含属性的头部块、可选的,包含数据的主体部分1、起始行:所有的HTTP报文都以一个起始行作为开始。请求报文的起始行说明了要做些什么。响应报文的起始行说明发生了什么。请求报文的起始行:该行包含了一个方法和一个请求的URL,还包含HTTP 的版本。响应报文的起始行:该行包含了响应报文使用的HTTP版本、数字状态码、原因短语。2、头部:HTTP首部...

2019-06-16 21:56:48 946

原创 OSI七层模型

记一次面试忘记的惨痛物理层以0,1代表电压的高低,灯光的闪灭。界定连接器和网线的规格,总的来说,就是负责0,1比特流与电压的高低,光的闪灭之间的互换。物理层具体来说就是两个计算机上物理层面上的关系,就是需要用网线之类的东西连接,然后进行连接和通讯。数据链路层互联设备之间传送和识别数据帧,负责物理层面上互连的,节点之间的通信传输,例如与1个以太网相连的2个节点之间的通信,将0,1序列划分为具...

2019-06-16 21:54:48 84

原创 SVN提交冲突 Node remains in conflict的问题

https://blog.csdn.net/lisayh/article/details/80236411[root@localhost code]svn revert --depth=infinity timerange.c[root@localhost code] svn up .Updating ‘.’:U code/timerange.cUpdated to revisio...

2019-05-30 10:12:42 194

原创 Goaccess分析ngin日志踩坑讲解

Goaccess可以对nginx日志进行可视化分析废话不多说我们先进行安装安装方法第一种方法:直接输入 yum -y install goaccess第二种方法:#安装依赖yum -y install libmaxminddb-devel#下载源码wget https://tar.goaccess.io/goaccess-1.2.tar.gz#解压tar -xzvf goacc...

2019-05-25 10:07:31 886

原创 No package docker-io available问题记录

执行了命令yum install epel-release还是出现No package docker-io available然后使用以下命令成功安装dockeryum install https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm...

2019-05-08 14:46:43 4661

原创 git记录

it initgit remote add origin urlgit add .git commit -mgit push origin master

2019-05-08 10:13:21 73

原创 JAVA 面试宝典(五)

什么是反射?动态获取类的信息以及动态调用对象的方法称为Java的反射(Reflection)机制。反射提供了封装程序集、模块和类型的对象。在Java运行时环境中,对于任意一个类的对象,可以通过反射获取这个类的信息。比如Constructor,field,method什么是 java 序列化?什么情况下需要序列化?java序列化就是把类的信息转成字节流,转换成字节流存储在文件中便于在网上传输...

2019-04-12 20:56:24 106

原创 JAVA 面试宝典(四)

** java 容器都有哪些?**JAVA常见的容器有继承Collection接口的List和Set,继承Map接口的HashMap,TreeMapList常见又有ArrayList,LinkedList,其中线程安全的ArrayList是CopyOnWriteArrayListSet常见的有HashSet,TreeSetMap常见的有HashMap,TreeMap,ConcurrentH...

2019-04-12 20:17:46 197

原创 JAVA 面试宝典(三)

答案为本人的理解** JDK 和 JRE 有什么区别?**JDK是JAVA的开发工具包,里面包含JRE和JVM,也包含JAVA的编译器和JAVA的调试工具等,而JRE是JAVA的运行时环境,里面有JAVA的核心类库,同时也包含了JVM。== 和 equals 的区别是什么?equals和"",如果重写了equals的方法,那么比较的将会是两个对象的内容,而不是比较两个对象的地址,而""是比...

2019-04-12 02:54:26 168

原创 JAVA 面试宝典(二)

前言:注册了博客之后,感觉自己没有写什么东西,把自己之前复习过的面试题重新写一遍参考资料::我没有三颗心脏的博客:https://www.jianshu.com/p/883260941da8JAVA程序员面试宝典JAVA WEB程序设计程序员面试宝典(1)JAVA的内部类1.JAVA的内部类可以分为以下4种,静态内部类,成员内部类,局部内部类和匿名内部类静态内部类是指被声明为stat...

2019-04-10 15:54:39 134

原创 JAVA 面试宝典(一)

前言:注册了博客之后,感觉自己没有写什么东西,把自己之前复习过的面试题重新写一遍参考资料::我没有三颗心脏的博客:https://www.jianshu.com/p/883260941da8JAVA程序员面试宝典JAVA WEB程序设计程序员面试宝典(1)JAVA语言有那些有点,其特点是什么一.JAVA是面向对象的语言,面向对象的语言就拥有封装,继承,多态的特点1.封装是指把某些对象...

2019-04-10 14:41:44 623

原创 SpringBoot直接访问templates下的html问题

我们都知道需要通过控制器跳转才能访问到templates下的html文件因为springboot默认访问static,resources,public这些文件夹下的文件,而没有默认访问templates下的我们需要在配置加上spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources...

2019-04-05 19:02:01 8339 1

空空如也

空空如也

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

TA关注的人

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