自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (17)
  • 问答 (1)
  • 收藏
  • 关注

原创 SSM框架注解总结

Spring中的注解: 注解含义: 用于创建对象的注解: 相当于:<bean id="" class=""> @Component注解: 作用: 把资源让spring来管理。...

2018-07-15 11:30:31 12759 10

原创 搭建Spring的源码环境

Spring源码搭建

2022-12-03 20:50:09 1762 1

原创 mysql面试题总结

mysql面试题总结Mysql中的myisam与innodb的区别? InnoDB存储引擎的四大特性? 什么是事务? 数据库事务的四大特性? 不考虑事务的隔离性,会发生几种问题? MySQL数据库提供的四种隔离级别? 有多少种日志? 事务是如何通过日志来实现的? 数据库的乐观锁和悲观锁是什么? 什么是存储过程?有哪些优缺点? 存储过程与触发器的区别? 索引是什么?有什么作用以及优缺点? 说一说MySQL数据库几个基本的索引类型? 使用索引查询一定能提高查询的性能吗?为什么?

2021-03-02 20:35:17 5034 4

原创 Java使用双重校验锁实现对象单例(懒汉式)

双重校验锁实现对象单例(线程安全)public class SingnleInstance { private volatile static SingnleInstance unquineInstance; public static SingnleInstance getUnquineInstance() { //先判断对象是否已经实例过,没有实例化过才进入加锁代码 if (unquineInstance == null) { //A

2021-02-19 14:09:26 451

原创 Java虚假唤醒及如何避免虚假唤醒

先给出一段虚假唤醒的代码如下:public class SynchronizeDemo2 { public static void main(String[] args) { Data2 data = new Data2(); new Thread(() -> { for (int i = 0; i < 5; i++) { try { data.in.

2021-01-13 10:50:08 2101 7

原创 java面试总结

JAVA基础部分:使用泛型的好处1,类型安全。 泛型的主要目标是提高 Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型假设。没有泛型,这些假设就只存在于程序员的头脑中(或者如果幸运的话,还存在于代码注释中)。2,消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。3,潜在的性能收益。 泛型为较大的优化带来可能。在泛型的初始实现中,编译器将强制类型转换(没有泛型的话,程序员会指定

2020-11-10 20:29:44 485 2

原创 微服务网关限流(使用令牌桶算法基于redis的RateLimter限流算法)

网关限流网关可以做很多的事情,比如,限流,当我们的系统 被频繁的请求的时候,就有可能 将系统压垮,所以 为了解决这个问题,需要在每一个微服务中做限流操作,但是如果有了网关,那么就可以在网关系统做限流,因为所有的请求都需要先通过网关系统才能路由到微服务中。令牌桶算法令牌桶算法是比较常见的限流算法之一,大概描述如下: 1)所有的请求在处理之前都需要拿到一个可用的令牌才会被处理; 2)根据限流大小,设置按照一定的速率往桶里添加令牌; 3)桶设置最大的放置令牌限制,当桶满时、新添加的令牌就被丢.

2020-11-10 20:28:28 2686

原创 Spring核心思想IOC与AOP

Spring中IOC与DI思想概述: IOC即Inversion of Control理解为"控制反转"也可以理解为"依赖倒置",它是一种程序设计的思想,所谓的"控制反转"就是我们在没有使用框架以前,当我们要去创建一个对象的时候我们通常会使用new关键字去手动的创建一个对象出来,而我们使用了Spring框架以后我们就可以将我们创建对象的控制权进行转移,也就是将这种创建对象的权利转移到我们Spring中的IOC容器,由IOC容器在我们系统运行时进行动态的装载或者注入我们需要的对象,而其中动态的...

2020-09-19 16:36:57 192

原创 Java集合源码分析(ArrayList)

  ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List,RandomAccess,Cloneable,java.io.Serializable这些接口。在我们学数据结构的时候就知道了线性表的顺序存储,插入删除元素的时间复杂度为O(n),求表长以及增加元素,取第 i 元素的时间复杂度为O(1)ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添...

2020-08-31 09:53:19 105

原创 算法中时间复杂度详解

在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度。这里进行归纳一下它们代表的含义:这是算法的时空复杂度的表示。不仅仅用于表示时间复杂度,也用于表示空间复杂度。O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之间的关系。其中的n代表输入数据的量。比如时间复杂度为O(n),就代表数据量增大几倍,耗时也增大几倍。比如常见的遍历算法。 再比如时间复杂度O(n^2),就代表数据量增大n倍时,耗时增大n的平方倍,这是比线性更高的.

2020-08-27 21:38:08 2006

原创 Docker常用命令总结

docekr的常用的指令:操作docker系统常用的指令:l 启动docker:systemctl start docker l 停止docker:systemctl stop docker l 重启docker:systemctl restart docker l 查看docker状态:systemctl status docker l 开机启动:systemctl enable docker操作docker中的镜像的常用的操作的命令:l 查看本地的镜像:docker imag.

2020-08-27 21:36:22 151

原创 HashMap、ConcurrentHashMap源码分析

基本概念:HashMap的底层是通过数组+链表组成的一种数据结构。但是在JDK8以后为了提升map的查询效率加入了红黑树。是一种线程不安全的数据结构(底层的实现方法没有做线程同步),在多线程环境下,使用HashMap进行put操作会引起死循环,所以在并发情况下不能使用HashMap,支持null作为键和值,但是键的值不能重复,会覆盖原来的数据。hashMap的底层结构数组中每个地方都存储了key-value的数据实例,java7叫Entry在Java8中叫Node。JDK1.7以前HashMap的数

2020-08-27 21:21:38 148

原创 常见HTTP响应状态码对照表

GET安全且幂等获取表示变更时获取表示(缓存)HTTP响应状态码:200(OK) - 表示已在响应中发出204(无内容) - 资源有空表示301(Moved Permanently) - 资源的URI已被更新303(See Other) - 其他(如,负载均衡)304(not modified)- 资源未更改(缓存)400 (bad request)- 指代坏请求(如,参...

2020-03-17 19:32:08 636

原创 Java中的内存模型(JMM)

共享变量:堆内存在线程之间共享。存储在内存中的所有的实例域、静态域以及数组元素的共享变量。(局部变量,方法定义参数、异常处理器参数不会在线程之间共享,不会有内存可见性问题,不受内存模型的影响)。JMM定义了线程和主内存之间的抽象关系:  1)线程之间的共享变量存储在主内存(main memory)中  2)每个线程都有一个私有的本地内存(local memory),本地内存中存储了...

2020-03-17 19:19:05 174

原创 SSM框架启动报错:无法读取方案文档

主要报错代码: org.xml.sax.SAXParseException: schema_reference.4: 无法读取方案文档 'http://www.springframework.org/schema/rabbit/spring-rabbit-1.6.xsd', 原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是 <xsd:schema&gt...

2019-11-14 10:10:50 462

原创 SpringDatajpa下hibernate的ddl-auto的各种属性

jpa: hibernate: ddl-auto: jpa: hibernate: ddl-auto: update #每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新 ddl-auto: create #每次运行该程序,没有表格会新建表格,表内有数据会清空 ddl-auto: create-drop #----每次程序结束的时候会...

2019-08-13 14:36:10 627

原创 Docker技术栈简介

docker技术是一个容器和虚拟机具有相似的资源隔离和分配优势,但功能有所不同,虚拟机虚拟化的是硬件,而容器虚拟化的是操作系统,因此容器更容易移植,效率也更高。docker技术的特点:(1)上手快用户只需要几分钟,就可以把自己的程序“Docker化”。Docker依赖于“写时复制”(copy-on-write)模型,使修改应用程序也非常迅速,可以说达到“随心所致,代码即改”的境界。...

2019-08-01 14:03:36 496

原创 Redis使用cmd进入执行命令界面操作

Redis 是一个开源,高级的键值对的存储。它经常作为服务端的数据结构,它的键的数据类型能够是strings, hashs, lists, sets(无序集合) 和 sorted sets(有序集合).如果我们要在windows下使用redis作为学习之用,可以去https://github.com/dmajkic/redis/downloads 下载最新的windows下的redis,最新的...

2019-08-01 14:02:03 6058 3

原创 Oracle数据库设置主键自增长策略

首先使用建表语句创建一个SOFTCLASS表:CREATE TABLE "SCOTT"."SOFTCLASS" ( "ID" NUMBER NOT NULL , "NAME" VARCHAR2(255 BYTE) , "AGE" NUMBER , "SEX" VARCHAR2(255 BYTE) , "TEL" VARCHAR2(255 BYTE) , "MAIL_A...

2019-04-23 16:53:15 2097

原创 在React中使用cors进行跨域异步请求。

如果你的React的发布的端是localhost:3000而你要请求的数据的端口发布在localhost:8081,你就要考虑到请求的跨域问题,本篇我们介绍使用cors进行跨域异步请求。我们以Javaweb项目作为数据的提供者。第一步:在前端解决跨域问题,设置React中的fetch请求的参数: fetch('http://localhost:8081/ssm/user/getUserL...

2019-04-11 08:50:42 6593 2

原创 页面转发与重定向的区别

页面转发过程    客户首先发送一个请求到服务器端,服务器端发现匹配的servlet,并指定它去执行,当这个servlet执行完之后,它要调用getRequestDispacther()方法,把请求转发给指定的student_list.jsp,整个流程都是在服务器端完成的,而且是在同一个请求里面完成的,因此servlet和jsp共享的是同一个request,在servlet里面放的所有东西,在...

2018-12-22 15:53:29 440

转载 浅谈Springcloud和Dubbo的区别

最近一段时间不论互联网还是传统行业,凡是涉及信息技术范畴的圈子几乎都在讨论 微服务架构 。近期也看到各大技术社区开始组织一些沙龙和论坛来分享spring Cloud的相关实施经验,这对于最近正在整理Spring Cloud相关套件内容与实例应用的我而言,还是有不少激励的。目前,Spring Cloud在国内的知名度并不高,在前阵子的求职过程中,与一些互联网公司的架构师、技术VP或者CTO在交流...

2018-12-21 22:47:02 209

原创 Mysql多表查询练习

-- 多表设计 `student, teacher, course`-- 教师表create table teacher( id int primary key auto_increment, name varchar(20));-- 学生表create table student( id int primary key auto_increment, ...

2018-12-11 14:42:30 373 1

原创 浅谈SpringCloud的主要组件

SpringCloud作为Spring家族中的一员,它将现在非常流行的一些技术整合到一起,实现了微服务中诸如:配置管理,服务发现,智能路由,负载均衡,熔断器,控制总线,集群状态等等功能。其主要涉及的组件包括:1.Eureka:注册中心2.Zuul:服务网关3.Ribbon:负载均衡4.Feign:服务调用5.Hystix:熔断器如下图所示为组件中的调用的关系图...

2018-12-11 14:23:41 13498 1

原创 微服务保持事物的一致性

解决方案一:​ 使用中间表控制微服务之间的事物的一致性,即在A,B两个微服务中,是一个游戏买装备的业务流程,A微服务负责扣除用户的金币,B微服务负责生成相应的订单数据,在我们用户够买装备时,当A服务扣除金币成功时相应的B微服务有以下几处理结果态:①成功②失败③超时 当B微服务发生二或者是三中的一种时即事物不能保持一致性,此时我们可以采用中间表的机制实现微服务间事物的一致性。我们设计一个中间表用...

2018-11-23 17:23:02 1305

原创 linux查看日志命令

第一种:查看实时变化的日志(比较吃内存)最常用的:tail -f filename (默认最后10行,相当于增加参数 -n 10)Ctrl+c 是退出tail命令其他情况:tail -n 20 filename (显示filename最后20行)tail -n +5 filename (从第5行开始显示文件第二种:搜索关键字附近的日志最常用的:cat -n fi...

2018-11-23 17:21:54 3323

原创 乐观锁与悲观锁

何谓悲观锁与乐观锁乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人。悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其...

2018-11-13 16:02:29 102

原创 关于TimeUnit使用和解析

TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段 主要作用         时间颗粒度转换         延时1.常用的颗粒度TimeUnit.DAYS //天TimeUnit.HOURS //小时TimeUnit.MINUTES //分钟TimeUnit.SECONDS ...

2018-08-24 12:22:11 1332

原创 前端发出的请求报400、403、500常见的错误。

常见的400错误: 前后端交互的方法参数不一致,发生此错误需要仔细检查前端传递的参数数据的参数名、参数数目、参数类型是否与后端保持一致。常见的403错误: 403错误,是一种在网站访问过程中,常见的错误提示。403错误,表示资源不可用。服务器理解客户的请求,但拒绝处理它,通常由于服务器上文件或目录的权限设置导致的WEB访问错误。前后端分离开发项目跨域问题比较容易...

2018-07-19 11:41:27 23696 1

原创 SSM框架的整合

SSM框架的整合:1.使用技术 Spring+ SpringMVC + Mybatis Maven 数据库:mysql2.使用工具 3.整合步骤 3.1我们使用idea分别搭建一个用于管理jar包的maven项目和我们需要整合SSM框架的maven项目。具体的项目结...

2018-07-17 17:41:27 951

原创 idea为maven项目配置全局的属性

idea为maven项目配置全局的属性,具体的步骤如图所示: 然后进行如下操作:此八步即可完成maven全局属性配置。

2018-07-17 16:33:11 2376

原创 idea使用maven创建web工程

 Maven创建一个jar工程 步骤一:创建工程:勾选时使用骨架,不勾选时不用骨架:一般可以不用勾选 下一步: 下一步:最后:  步骤二:编写代码测试 添加一个类进行测试:...

2018-07-17 16:18:56 234

原创 关于java.io.FileNotFoundException: class path resource [spring/springmvc.xml]异常的问题解决

 web.xml配置文件如下图所示:但是老是报出以下的异常:org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [org.spring/applicationContext.xml]; neste...

2018-07-17 01:59:27 31825 1

mysql学习总结脑图

此脑图是我在复盘mysql知识点所总结,适合学习以及面试复习使用。

2022-12-03

java并发编程总结脑图

此脑图是我在学习Jvm时所整理的一份脑图总结,涵盖Jvm机会所有的知识点。

2022-12-03

java并发编程总结脑图

此脑图是本人经过半年时间收集整理涵盖java并发相关知识点的脑图总结,一定不会让你失望。

2022-12-03

适合各阶段学习的mongodb资料合集

适合各阶段学习的mongodb资料合集,包含pdf文档以及脑图总结。

2022-12-03

ExportExcel.rar

Java后台导出Excel报表,分别使用EasyExcel、POI,Easypoi、xml、FreeMarker等报表导出技术。

2020-06-30

网络安全等级测评师培训教材2019年最新版.rar

网络安全等级测评师培训教材(初级)2019年最新版,适用于等级保护2.0的测评使用。

2020-03-17

React进阶之路、深入REACT技术栈

React进阶之路、深入REACT技术栈 ,适合初学者学习使用。

2019-04-29

SpringBoot+thymeleaf

SpringBoot+thymeleaf应用案例,非常适合初学者学习使用

2019-04-29

Spring+Springmvc+Mybatis+Oracle+Redis

Spring+Springmvc+Mybatis+Oracle+Redis搭建完整的框架,实测可运行。

2019-04-29

docker知识详解

docker资源,很全面,里面有docker容器的创建以及docker中Mysql,redis,mongoDb,tomcat等软件的安装详解。

2018-11-14

maven管理的SSM框架的整合

该框架是由Spring+Springmvc+mybatis三者整合,使用idea工具编写的基于maven管理的整合的工程。内含数据库,并且代码内部有详细的注释,适合中小型项目的开发,初学者学习使用。

2018-07-17

Solr服务器

Solr服务器是基于solr搭建的一个服务器,服务器配置全部实现。可用于全局搜索。

2018-07-15

搜索引擎Lunce快速入门

搜索引擎快速入门,Lunce快速入门代码实例,有代码有完整的注释。适合初学者学士使用。

2018-07-15

完整的网站

本网站使用javaWeb技术实现的一个完整的网站系统的搭建。

2018-07-15

SSM整合的全部的jar

SSM整合的所有的jar包,内含所有的ssm框架中使用的jar包。

2018-07-14

SSM框架整合

该框架是由Spring+Springmvc+mybatis三者整合,内含数据库。代码内部有详细的注释,适合中小型项目的开发,初学者学习使用。

2018-07-14

SSM框架实现多文件上传,框架可以直接开发项目

该框架是由Spring+Springmvc+mybatis三者整合,内含数据库。代码内部有详细的注释,适合中小型项目的开发,初学者学习使用。多文件上传直接可以使用。

2018-07-14

SpringBoot整合Mybatis代码

该代码实现SpringBoot整合Mybatis的入门代码案例,适合初学者学习使用。

2018-07-14

SpringBoot的入门代码,代码有详细的注解

该代码实现SpringBoot的入门代码案例,适合初学者学习使用。

2018-07-14

一个带有数据库的完整版本的旅游网站(前后端均实现)

该网站是一个完整的旅游网站,带有完整的数据库和前后端。并且实现短信通知,微信支付功能,下载即可运行。

2018-07-14

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

TA关注的人

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