自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LianXu3344的博客

未来是你们的,而我只想创造未来

  • 博客(46)
  • 资源 (2)
  • 收藏
  • 关注

原创 JVM垃圾回收(粗粒度)

标记–清除算法主要包括标记和清除两种方法标记阶段:确定所有要回收的对象,并做标记清除阶段:将标记好的无用对象清除缺点: 标记清除的效率都不太高 会产生大量碎片复制算法内存分成大小相等的两块,每次使用其中一块,当垃圾回收的时候把存活的对象复制到另一块上,然后把这块内存整个清除掉缺点: 浪费内存做复制区 当存活率高的时候复制算法效率会下降标记–整理算法不是把存活的对象复制到另一块内存,而是把存活对象往内存的一端移动,然后直接回收边界以外内存缺点:算法复杂,执行步骤多耗时间分代收集算

2022-06-20 16:58:12 332 2

原创 浅谈Mybatis知识01

什么是MybatisMyBatis 是一款优秀的持久层框架,它支持自定义SQL,存储过程以及高级映射.Mybatis免除了几乎所有的JDBC 代码以及设置参数和获取结果的工作. Mybatis可以通过简单的XML或者注解来配置和映射原始类型,接口和Java POJO(Plain Old Java Objects,普通老式Java对象)为数据库中的记录Mybatis的安装要是用Mybatis,只需将mybatis-x.x.x.jar 文件置于类路径(classPath) 中即可如果使用Mave..

2020-07-17 18:08:22 209 1

转载 Java基础面试浅谈01

浅聊JDK,JRE,JVM以及区别JDK:Java Development Kit(java 开发工具包),即java语言编写的程序所需的开发工具包.JDK包含了JRE,同时还包括java源码的编译器javac,监控器jconsole,分析器jvisualvm等JRE:Java Runtime Environment(java 运行时环境).Java程序运行时环境,包含了Java虚拟机(JVM),Java基础类库等JVM:Java Virtual Machine(Java虚拟机).JVM是一种用于.

2020-07-16 18:11:00 206

原创 Java内存模型详解

JVM 的概念JVM是可运行Java代码的假象计算机,包括一套字节码指令集,一种寄存器,一个栈,一个垃圾回收器,堆和一个存储方法域. 内存空间堆 方法区 虚拟机栈 本地方法栈 程序计数器内存空间的相关定义**栈帧( Frame)**是用来存储数据和部分过程结果的数据结构,同时也被用来处理动态链接(Dynamic Linking)、 方法返回值和异常分派( Dispatch Exception)。栈帧随着方法调用而创建,随着方法结束而销毁——无论方法是正常完成还是异常完成(抛出了.

2020-05-29 17:54:33 280

原创 Spring基础面试

Spring的核心 IOC和AOPIOC的一个重点是在系统运行中动态的向某一对象提供所需要的的对象.这一点需要DI的实现,比如对象A需要操作数据库,以前我们需要编写代码Connection 对象,有了Spring我们可以直接告诉他,A需要的Connection可以在适当的时候直接创建,再注入到A中.IOC的工作原理IOC采用工厂模式,通过读取application.xml配置文件中的bean标签,注入IOC容器中,再通过set或者构造方法注入产生Beanfactory,Beanfactory 通过ge

2020-05-21 16:03:12 218

原创 MySQL索引底层实现

索引概念MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构.可以得到索引的本质:索引是数据结构,也可简单理解为"排好序的快速查找数据结构"数据结构Hash表 二叉树 红黑树 B树Hash表:有数据存进来的时候,按照特定规则得出这个数据在数组中的位置,将数据存进这个位置,我们就以存进一个整型数据为例,特定规则就是取余(通过一个固定的哈希函数转换成一个整型数据,然后就将该数字对数组长度取余,取余结果就当做数组的下标,将value存储在以该数字为下标的数..

2020-05-13 14:40:45 195

原创 Spring Bean生命周期

实例化实例化一个bean,也就是我们说的newIOC依赖注入按照Spring上下文对实例化的Bean进行配置,也就是IOC注入SetBeanName实现如果这个bean已经实现了beanNameAware接口,会调用它实现的setBeanName(Strring) 方法,此处传递的就是Spring配置文件中的Bean 的 IdBeanFactoryAware实现如果这Bean已经实现...

2020-04-17 10:25:47 121

原创 桂花上菜----Redis

什么是RedisRedis(RemoteDictionary Server)(远程字段服务器) 是完全开放开源免费的,由C语言编写的,遵循BDS协议。是一个高性能的(KV)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,当前最热门的NoSQL数据库之一。Redis的特点1 . Redis支持数据持久化,可以将内存中的数据保存到磁盘上,重启的时候可以再次加载进行使用2 . R...

2020-03-29 22:36:58 186

原创 非关系型数据库----Redis前开胃

当前互联网面临着3V+3高的问题3V:海量Volume 多样Variety 实时Velocity3高:高并发 高扩展 高性能NoSQL 数据模型简介 (聚合模型)1> KV 键值: 新浪-- BerkeleyDB +Redis 美团-- redis+tair 阿里百度-- memcache+redis2> 文档型数据库(BSON格式较多): CouchDB ...

2020-03-29 12:35:44 155

原创 Linux命令

关机和重启立马关机:shutdown -h now poweroff halt精确定时关机:shutdown -h 16:15模糊定时关系:shutdown -h +10 10分钟关机重启:reboot 或者 shutdown -r now操作系统的核心文件/bin 是binary的缩写,这个目录存放着经常使用的命令/boot:这里存放的是启动L...

2020-03-26 17:13:01 480

原创 SpringBean装配------自动装配

Spring配置的可选方案1. 隐式的bean发现机制和自动配置2. 在Java中进行显式配置3. 在XML中进行显式配置自动化装配beanspring从两个角度来实现自动化装配组件扫描(component scanning):Spring会自动发现应用上下文中所创建的bean自动装配(autowiring):Spring自动满足bean之间的依赖public interfac...

2020-03-21 23:23:09 1581

原创 Nginx基础知识点汇总4

问题需要配置自定义格式的访问日志(access log)解决方案配置访问日志格式:http {log_format geoproxy '[$time_local] $remote_addr ' '$realip_remote_addr $remote_user ' '$request_method $server_protocol ' '$scheme $server_name ...

2020-03-21 18:56:18 267

原创 Nginx基础知识点汇总3

问题客户端与 NGINX 服务器之间的请求数据需要加密处理。解决方案启用 ngx_http_ssl_module 或 ngx_stream_ssl_module 其中之一的 NGINX SSL模块对数据进行加密:http {// All directives used below are also valid in stream server { listen 8433 ssl;...

2020-03-21 18:32:27 198

原创 Nginx基础知识点汇总2

项目中实现对 web 应用程序或 web 应用程序子系统的访问控制是项目的重要组成。实现 NGINX 的访问控制形式多样,比如从网络层面实现访问控制,允许NGINX 采用身份校验机制,或 通过 HTTP 响应引导浏览器如何操作。本章将讨论使用网络属性(network attributes)、身份认证、跨域资源共享(CORS:Cross-Origin Resource Sharing)原则等...

2020-03-21 18:18:46 231

原创 Nginx基础知识点汇总1

1. 技术背景水平扩展的可用性都需要灵活的负载均衡解决方案才能得以保障,NGINX提供了多种协议的负载均衡解决方案如:HTTP、TCP 和 UDP 负载均衡。2. HTTP实例问题:将用户请求分发到 2 台以上 HTTP 服务器。解决方案使用 NGINX 的 HTTP 模块,将请求分发到有 upstream 块级指令代理的 HTTP服务器集群,实现负载均衡:upstream w...

2020-03-16 22:22:02 325

原创 spring security

security定义Spring Security 是一个提供身份验证,授权和保护以防止常见攻击的框架.凭借对命令式和响应式应用程序的一流支持,他是用于保护基于Spring的应用程序的事实上的标准.使用先决条件需要Java 8 或更高版本的运行环境许可认证Spring Security 是在 Apache 2.0许可下发行的开源软件spring Securtity 的源码地址htt...

2020-03-09 11:32:50 161

原创 hashMap源码解析

HashMap简介Hash table based implementation of the Map interface. This implementation provides all of the optional map operations, and permits null values and the null key. (The HashMap class is r...

2020-02-28 14:37:43 190

原创 Java容器

1. 什么是Java容器java容器主要用途是持有对象,通常两种不同的数据结构,一种是Collection(extends Iterable) ,另一个是MapCollection:一个独立元素的序列,这些元素都服从一条或者多条规则.常见的有List 和 SetMap:存储的是"键值对"对象,通过键来检索值2.Java容器主要有哪些本次主要介绍List Set Queue 和 Map...

2019-09-27 17:40:17 115

原创 Redis总结2

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

2019-08-28 16:20:12 132

原创 Redis总结1

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

2019-08-22 16:00:53 124

翻译 泛型通配符extends和super的区别

1.

2019-07-05 09:17:42 115

原创 SQL优化(三)

在新建临时表时,如果一次性插入数据量很大,那么可以使用 select into 代替 create table,避免造成大量 log ,以提高速度;如果数据量不大,为了缓和系统表的资源,应先create table,然后insert。如果使用到了临时表,在存储过程的最后务必将所有的临时表显式删除,先 truncate table ,然后 drop table ,这样可以避免系统表的较长时...

2019-07-04 19:15:42 163

原创 SQL优化(二)

不要在where 子句中的 = 左边进行函数,算数运算或其他表达式运算,否则系统将可能无法正确使用索引在使用索引字段作为条件时,如果该索引是复合索引,那么必须使用到该索引中的第一个字段作为条件时才能 保证系统使用该字段.不要写一些没有意义的查询,如需生成一个空表结构,请创建表UPDATE 语句,如果只更改1,2个字段,不要update全部字段,否则频繁调用会引起明显的性能消耗,同时带来大量...

2019-07-04 18:10:13 129

原创 SQL优化(一)

索引和拆分表可以极大的增加查询速度我们的在写sql的时候也可以通过优化来增加查询速度.对查询进行优化,要尽量避免全表扫描,首先应考虑在where和order by 涉及的列上建立索引.应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描.如:select * from table where colum is null最好不要给数据库留n...

2019-07-04 17:32:16 235

原创 MySQL日期函数方法

year(date)返回date的年份(范围在1000到9999)mysql> select year('98-02-03');-> 1998mysql> select year('1998-02-03');-> 1998month(date)返回date中的月份数值mysql> select month('1998-02-03');-&gt...

2019-01-09 19:24:13 158

原创 MySQL自带数学函数方法

1. abs(n)返回n的绝对值mysql> select abs(2);  -> 2mysql> select abs(-32);  -> 322. sign(n)返回参数的符号(为-1、0或1)mysql> select sign(-32);  -> -1mysql> select sign(0);  -> 0mysql&...

2019-01-09 18:44:05 489

原创 MySQL自带String(字符串)函数方法

1.字符串函数ascii(str)返回字符串Str的第一个字符的Ascii值(Str是空时返回0)mysql> select ascii(‘2’);  -> 50mysql> select ascii(2);  -> 50mysql> select ascii(‘dete’);  -> 100ord(str)如果字符串str句首是单字...

2019-01-09 18:10:06 4105

原创 IKExpression使用及jar包下载

类org.wltea.expression.ExpressionEvaluatorpublic static Object evaluate(String expression, Collection variables)说明:传入表达式和表达式上下文的变量,执行表达式返回结果参数1 :String expression, 要传入执行的表达式参数2 :Collection variab...

2018-11-08 17:35:21 2177

转载 如何实现负载均衡,有哪些算法可以实现?

【前言】负载均衡技术对于中大型网站的性能提高有着很大的优势,最近在学习《大型网站技术的架构》,其中对于负载均衡技术有一些介绍,将学习的经验总结一下,分享下。多交流。【协议层】http重定向协议实现负载均衡原理:根据用户的http请求计算出一个真实的web服务器地址,并将该web服务器地址写入http重定向响应中返回给浏览器,由浏览器重新进行访问。如图:优点:比较简单缺点:浏览器需要零...

2018-09-30 11:55:41 2036

原创 反射的原理,反射创建类实例的三种方式是什么?

反射机制:所谓的反射机制就是java语言在运行时拥有一项自观的能力。通过这种能力可以彻底的了解自身的情况为下一步的动作做准备。下面具体介绍一下java的反射机制。这里你将颠覆原来对java的理解。 Java的反射机制的实现要借助于4个类:class,Constructor,Field,Method;其中class代表的时类对 象,Constructor-类的构造器对象,Field-类的属性对象,...

2018-09-30 10:26:01 17121

原创 四、线程池(四种类型)

待定

2018-09-29 18:35:28 334

原创 八、线程间的通信,等待唤醒机制。

待定

2018-09-29 18:35:03 182

转载 七、死锁

进程A中包含资源A,进程B中包含资源B,A的下一步需要资源B,B的下一步需要资源A,所以它们就互相等待对方占有的资源释放,所以也就产生了一个循环等待死锁。代码如下:1 public class DeadLock { 2 3 public static void main(String[] args) { 4 Thread t1 = new Thread(new ...

2018-09-29 18:33:02 126

转载 六、线程同步与锁。

为什么要进行线程同步?      java允许多线程并发控制,当多个线程同时操作一个可共享资源变量时(如对其进行增删改查操作),会导致数据不准确,而且相互之间产生冲突。所以加入同步锁以避免该线程在没有完成操作前被其他线程调用,从而保证该变量的唯一性和准确性。      不同步...

2018-09-29 18:28:43 141

转载 五、线程状态管理

1、线程睡眠—sleep:    线程睡眠的原因:线程执行的太快,或需要强制执行到下一个线程。   线程睡眠的方法(两个):      sleep(long millis)在指定的毫秒数内让正在执行的线程休眠。&nbsp

2018-09-29 18:11:08 185

转载 三,多线程的4种创建方法和对比

Java多线程实现方式Java 多线程实现方式主要有四种,继承Thread,实现Runnable,实现Callable,Future实现返回结果的多线程。1. 继承Thread类创建public class MyThread extends Thread {   public void run() {    System.out.println("MyThread.run()"); ...

2018-09-29 17:55:19 341

原创 二、线程的生命周期

**新建:**从新建一个线程对象到程序start() 这个 线程之间的状态,都是新建状态。**就绪:**线程对象调用start()方法后,就处于就绪状态,等到JVM里的线程调度器的调度。**运行:**就绪状态下的线程在获取CPU资源后就可以执行RUN(),此时就是运行状态。在这种状态下可以转变为就绪,阻塞,死亡。**等待/阻塞/休眠:**在进程调用了sleep() --睡眠方法,suspe...

2018-09-29 17:16:33 112

转载 一、多线程是什么?为什么要用多线程?

多线程是什么?在介绍多线程的时候,我们首先要知道什么是线程,而要了解线程还要了解进程。1.进程:一个正在执行中的程序,每个进程执行都有一个执行顺序,该顺序是一个执行路径,或者是一个控制单元(个人偏向这种 )。2.线程:进程中的一个独立控制单元,线程在控制进程的执行。一个进程中至少有一个线程。3.多线程:一个进程中不只有一个线程。eg:比如我们开车从北京到上海,进程可以理解为我们在去的上海...

2018-09-29 17:02:00 2570

转载 java集合类汇总

一.集合与数组 数组(可以存储基本数据类型)是用来存现在对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。 集合(只能存储对象,对象存储类型不一样)的长度可变,可在多数请款下使用。 二.层次关系 如图所示:图中,实线边框的是实现类,折现边框的是抽象类,而点线边框的是接口。 Collection接口是集合类的根接口,java中没提供这个接口的直接实现...

2018-03-11 22:34:30 251

转载 TCP和UDP的比较

TCP和UDP是tcp/ip协议栈中传输层放入两个协议。他们使用IP路由功能,把数据包发送到目的地,从而为应用程序和应用层协议(HTTP超文本传输协议,SNMP网络管理,TFTP文件传输和Telnet远程登录)提供网络服务。 区别;TCP是面向连接的,UDP是无连接的传输TCP有流量控制,阻塞控制,监测数据按时到达,而UDP没有TCP的路由选择只发生在建立连接的时候,而UDP每次报文都...

2018-03-11 14:24:46 333

自动运行生成辅助包和类

自动生成到层和service层和controller层.小伙伴们不用再配置环境直接直接双击.bat文件就可以 采用的Java8 和Maven3.5.4

2018-11-15

IK 的jar包

IKExpressionV2.1.2AllInOne 截止到2018.11.8是最新的,欢迎下载哦

2018-11-08

空空如也

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

TA关注的人

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