自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java面试

1java遍历List、Set、MapList<String> list = new ArrayList<String>();list.add(“张三”);list.add(“李四”);list.add(“王五”);//通过Iterator 迭代器遍历列表+"/n"Iterator<String> it = list.iterator();whil...

2020-04-14 19:48:58 188

原创 jsp和servlet基本知识

九个内置对象:pageContext,page,config,request,response,session,application,exception,outrequest 用户端请求,此请求会包含来自GET/POST请求的参数response 网页传回用户端的回应pageContext 网页的属性是在这里管理,代表的编译后JSP内容session 与请求有关的会话期applicat...

2020-04-14 12:12:47 197

原创 网络传输协议

http服务器传输超文本到本地浏览器的传送协议,HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等。https在http协议基础上增加了使用SSL加密传送信息的协议。TCPTCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义。UDP面向非连接、传输不可靠、用于传输少量数据(数据包模式)、速度快。socket...

2020-04-13 22:53:11 178

原创 Redis

什么是redis?redis是一个nosql存储系统,一个基于内存的高性能的key-value存储系统。redis优点1速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)2 支持丰富数据类型,支持string,list,set,zset(或者sorted set(有序集合)),hash。3 支持事务,操作都是原子性,所谓原子性就是...

2020-04-01 09:34:16 104

原创 springboot配置ThreadPoolTaskExecutor线程池

概念:创建线程要花费昂贵的资源和时间,如果任务来了才创建线程那么响应时间会变长,而且一个进程能创建的线程数有限。为了避免这些问题,在程序启动的时候就创建若干线程来响应处理,它们被称为线程池。1启动类添加注解开启线程异步@SpringBootApplication@EnableAsync//开启Springboot对于异步任务的支持public class ConsumerApplicati...

2020-03-30 15:10:58 3601

原创 springboot集成邮件服务

发送邮件应该是网站的必备功能之一,什么注册验证,忘记密码或者是给用户发送营销信息。springboot对此进行了封装就有了现在的spring-boot-starter-mail,简化了邮件发送的过程。1在pom.xml中添加依赖<dependency> <groupId>org.springframework.boot</groupId> &lt...

2020-03-30 14:13:47 119

原创 线程并发

Java并发中的3个概念:1.原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。2.可见性:可见性是指当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值。3.有序性:即程序执行的顺序按照代码的先后顺序执行。volitile确保所有线程所看到的指定变量的值都是相同的。举个例子,在多线程 (不使用 volati...

2020-03-29 15:24:27 59

原创 Thread

Thread概念定义:线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。Thread类方法:start():启动新创建的线程。run()::线程启动后要进行回调(callback)的方法。join():等待此线程死亡后再继续,可使异步线程变为同步线程interrupt():中断线程,被中断线程会抛InterruptedExceptionwait(...

2020-03-29 00:47:51 61

原创 正则表达式

概念正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。正则表达式验证手机号是否正确function checkMobile(str) { var re = /^[1][3,4,5,7,8][0-9]{9}$/; if (!re.test(str))...

2020-03-27 23:08:50 84 1

原创 springboot常用注解

springboot常用注解@SpringBootApplication申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration ,@EnableAutoConfiguration 和 @ComponentScan 三个配置。@Configuration相当于传统的xml配置文件,如果有些第三方库需要用到xml文件,建议仍然通过@Configur...

2020-03-27 13:31:04 105

原创 linux常用命令

ps -A 显示所有进程。ps -ef|grep redis 根据进程名称查看进程号,比如redisnetstat -anp|grep 8080查看端口,根据进行id查看占用端口号shutdown -h now 关闭系统(1)shutdown -r now 重启(1)cd /home 进入 ‘/ home’ 目录’cd … 返回上一级目录cd …/… 返回上两级目录mkdir di...

2020-03-23 19:15:30 99

原创 Springboot集成Easyexcel

java后端导入、导出excel,因此在此记录学习一下如何使用Springboot整合easyExcel。JAVA解析Excel工具Easyexcel解析、生成Excel比较有名的框架有apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,POI有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是...

2020-03-15 03:30:56 469 1

原创 java排序算法

1冒泡排序算法描述比较相邻的元素如果第一个比第二个大,就交换它们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复以上的步骤,除了最后一个;重复步骤1〜3,直到排序完成。/** * 冒泡排序 * @param array * @return*/public static int[] bubbleSort(in...

2020-03-15 00:00:16 123

原创 java多线程

线程的定义进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1–n个线程。(进程是资源分配的最小单位)线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是cpu调度的最小单位)线程和进程一样分为五个阶段:创建、就绪、运行、阻塞、终止。Java线程具有五中基本状态新建状态(New):当线程对象对...

2020-03-13 22:34:49 59

原创 IDEA使用maven多模块聚合

Maven聚合多个springboot项目1第一步new一个maven工程2。填写项目信息3配置多模块new一个新的module重复1 2 步骤便会多一个子模块

2020-03-02 13:44:37 168

原创 JVM类加载机制

概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类加载过程类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化...

2020-02-27 18:00:57 87

原创 springboot整合springsecurity

什么是Spring Security?我就只说下SpringSecurity核心功能:认证(你是谁)授权(你能干什么)准备工作在数据库中创建5张表user用户表menu资源表role权限表user_role用户权限表menu_role资源权限表用户表Userpublic class User implements UserDetails { private Inte...

2020-02-24 18:29:07 221

原创 数据库基础

存储过程存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。调用:1)可以用一个命令对象来调用存储过程。2)可以供外部程序调用,比如:java程序。...

2020-02-21 21:06:54 267

原创 java中的重要的几个关键字

staticstatic方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。1 static方法static方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没...

2020-02-21 12:51:51 157

原创 springboot整合websocket基于STOMP

WebSocke介绍WebSocket协议是应用程序处理实时消息的方法之一。最常见的替代方案是长轮询(long polling)和服务器推送事件(server-sent events)。1.pom <!-- thymeleaf 模板引擎 --> <dependency> <groupId>org.springfram...

2020-01-30 12:13:04 469 1

原创 springboot整合Rabbitmq

演示消息插件的使用。首先是下载安装Rabbitmq。然后是创建两个项目Producer和Consumer1.两个项目添加pom依赖 <!-- MQ依赖 --> <dependency> <groupId>org.springframework.boot</groupId> ...

2020-01-08 18:13:04 85

原创 springboot集成Lombok

Lombok是什么?lombok是java自动生成代码的插件。它能提高开发效率,减少自己编写繁琐的代码,让代码看起来更整洁简略,比如getter、setter、equals以及construct等方法。1.创建项目并添加依赖<dependencies> <dependency> <groupId>org.projectlombok<...

2020-01-08 17:30:20 82

转载 zuul网关升级gateway问题记录

感觉挺有用的。https://www.jianshu.com/p/f8ee6f7e493a

2019-09-25 15:48:37 410

原创 springBoot集成swagger2

1.创建一个springboot项目,并添加依赖。在pom.xml添加以下依赖代码。 <!-- 用于JSON API文档的生成--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swa...

2019-09-24 20:22:52 115

原创 IO与NIO的初始理解

一、概念NIO即New IO,这个库是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多。在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。二,区别1。IO是面向流的,NIO是面向缓冲区的。2。 Java IO的各种流是阻塞的。Java NIO的非阻塞模式,使一个线程从某...

2019-09-05 14:18:00 64

转载 关于并发与并行的理解

你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行。你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭,这说明你支持并发。你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行。并发的关键是你有处理多个任务的能力,不一定要同时。并行的关键是你有同时处理多个任务的能力。所以我认为它们最关键的点就是:是否是『同时』。如果某个系统支持两个或者多个动...

2019-09-05 11:39:01 301

原创 react入门总结2

1.如何快速搭建一个react项目1详细步骤请参考官方给出的步骤。以下是网址https://ant.design/docs/react/use-with-create-react-app-cn。2关于页面和组件的设计可以参考以下官网antd和element UI。数据图形的展示参考echarts。根据以上参考就可以快速搭建想要得界面和组件了,当然前端也并非跟着复制粘贴这么简单。你会是不是的遇...

2019-07-17 11:26:12 80

转载 react入门总结

使用react进行第一个公司的react项目开发。接下来记录下自己这短时间的学习总结。1.-了解react是什么以及学习路线每个软件都是基于一个技术栈来实现的,因此如果想要创建你自己的应用,你就必须充分理解自己的技术栈。React的生态看上去很复杂的原因便是人们通常没有按照正确的顺序来去学习。你需要按照下面的顺序一步一步地学习,不要跳着学或者同时学习多个内容,否则你会感到非常混乱。基本内容...

2019-06-21 11:18:31 81

原创 SpringBoot(3):springboot集成redis和cache实现缓存

Redis知识点在项目中对数据的访问往往都是直接访问数据库的方式,但如果对数据的访问量很大或者访问很频繁的话,将会对数据库来很大的压力,甚至造成数据库崩溃。为了解决这类问题redis数据库脱颖而出,redis数据库出现时是以非关系数据库的光环展示在广大程序猿的面前的,后来redis的迭代版本支持了缓存数据、登录session状态(分布式session共享)等。所以又被作为内存缓存的形式应用到大型...

2019-05-14 21:57:33 683

原创 springboot实现原理

一、什么是SpringBoot?SpringBoot是一个快速开发框架,快速的将一些常用的第三方依赖整合(原理:通过Maven子父工程的方式),简化XML配置,全部采用注解形式,内置Http服务器(Jetty和Tomcat),最终以java应用程序进行执行。二、springboot重点2.1:快速整合第三方依赖:maven子父依赖关系。2.2:完全无配置文件(采用注解化)springbo...

2019-05-05 14:14:56 382

原创 Springboot中的图片上传

前端jsp<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head> <title>Title</title></head><!--jquery需要引入的文件--><script src="ht...

2019-04-27 12:11:58 174

原创 多线程测试题

多线程知识点synchronized关键字的运用主要包括三方面:锁代码块(锁对象可指定,可为this、XXX.class、全局变量)public class Sync{ private int a = 0; public void add(){ synchronized(this){ System.out.println("a va...

2019-04-27 09:27:57 105

原创 json数据存入本地文件以及数据读取

直接复制,带数据测试public class JsonUtils { //从给定位置读取Json文件 public static String readJson(String path){ //从给定位置获取文件 File file = new File(path); BufferedReader reader = null; ...

2019-04-23 23:08:14 2958 4

原创 SpringBoot(2):Springboot集成generator(代码生成器)

1在pom.xml中添加依赖。<!-- SpringBoot - MyBatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-star...

2019-04-06 21:39:50 1310

原创 jvm学习笔录

jvm内存模型1程序计数器一块较小的内存空间, 作用是当前线程所执行字节码的行号指示器,JVM中的并发是通过线程切换并分配时间片执行来实现的. 在任何一个时刻, 一个处理器内核只会执行一条线程中的指令. 因此, 为了线程切换后能恢复到正确的执行位置, 每条线程都需要有一个独立的程序计数器, 这类内存被称为“线程私有”内存.2虚拟机栈(Java Stack)虚拟机栈描述的是Java方法执行的...

2019-04-06 16:46:42 147

转载 java集合类学习

map,set与list的介绍Collection、List、Set、Map都是接口,不能实例化。其中List和set继承Collection接口。Collection和map都代表一个Object。java集合的主要分为三种类型:Set(集)List(列表)Map(映射)一,java中各种集合的关系图Collection 接口的接口 对象的集合├ List ...

2019-04-01 23:00:15 547 1

转载 SpringBoot配置跨域

什么是跨域?跨域是指 不同域名之间相互访问。跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。如何判断是否跨域?同一协议,同一ip,同一端口,三同中有一不同就产生了跨域。解决跨域的好处在前后端分离的项目中,前端一般是通过Ajax请求接口,如果前端和后台不在同一个服务器和端口,那么就会出现跨域的问题。在完全的前后端分离中...

2019-03-29 19:05:40 6790 2

原创 SpringBoot(1)-热部署

什么是热部署? 大家都知道在项目开发过程中,常常会改动代码,为了显示改动效果,往往需要重启应用查看改变效果,其实就是重新编译生成了新的 Class 文件,这个文件里记录着和代码等对应的各种信息,然后 Class 文件将被虚拟机的 ClassLoader 加载。而热部署正是利用了这个特点,它监听到如果有 Class 文件改动了,就会创建一个新的 ClaassLoader 进行加载该文件。怎么实...

2019-03-24 19:45:07 94

转载 springBoot 配置log4j2

1,修改pom.xml文件 <!-- 去除spring-boot默认日志依赖包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</...

2019-03-18 21:33:37 116

原创 第一次写博客!!!

开始记录自己的java学习过程。挺想进腾讯和阿里的。可惜自己大三之前荒废了。导致实力不允许。从现在开始加油吧!

2019-03-14 23:12:33 128

空空如也

空空如也

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

TA关注的人

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