自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 快速复习操作系统相关知识

基于【操作系统】快速复习目录1 OS五大功能2 OS四大特性3 进程管理3.1 进程实体3.2 Linux进程4 作业管理4.1 进程调度4.2 死锁1 OS五大功能进程管理、存储管理、作业管理、文件管理、设备管理;2 OS四大特性并发性、共享性、虚拟性、异步性;3 进程管理3.1 进程实体进程是系统进行资源分配和调度的基本单位,因为没有操作系统的时候,资源只能给一个程序使用;进程控制块存放在内存中由操作系统管理,包括标识符、状态、优先级、程序计数器、内存指针、IO信息等等;PCB

2021-01-11 14:08:31 41

原创 深入理解javaIO原理

目录1 File类2 InputStream3 FileInputStream3.1 创建3.2 读4 BufferedInputStream1 File类File对象代表磁盘中实际存在的文件和目录。Java 把操作系统中的文件和目录都抽象成File,统一处理。当new File(path)的时候生成的File对象,实际上是java内部对于文件的一个描述,当其调用一些获取长度等等,实际上是调用了对应native方法,即C++/C编写的代码;2 InputStream这是一个抽象类,定义了基础的

2021-01-08 15:31:57 14

原创 Fontconfig warning: FcPattern object width does not accept value [75 100) Segmentation fault

Ubuntu 16.04 运行spyder时错误:Fontconfig warning: FcPattern object width does not accept value [75 100) Segmentation fault解决方法:sudo rm -rf ~/.cache/fontconfig

2021-01-06 10:29:19 26

原创 计算机网络(四)应用层

1 DNS域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。IP地址不好记,采用域名来辅助记忆;com顶级域、taobao二级域、www、三级域……按照级别分区域设置DNS服务器,由顶到底查询,当然先看本地缓存;2 DHCPDHCP(Dynamic Host C

2021-01-03 15:54:17 17

原创 计算机网络(三)传输层UDP/TCP协议

1 简介传输层工作在点对点的计算机上,无路由器参与,管理端到端的通信,跨机的进程间通信;2 端口使用端口来标记不同的网络进程,使用16位来表示(0-65535),注意这是逻辑概念,不是实际占用物理硬件,Linux下可以使用sudo netstat -tlpn命令查看具体哪个端口被哪个进程占用了;常见端口:21:FTP;22:SSH;23:TELNET;53:DNS;80:HTTP;443:HTTPS;3306:MYSQL;3 UDP协议无连接的传输协议,该协议称为用户数据报协

2021-01-03 11:09:36 40 1

原创 计算机网络(二)网络层IP层

1 引入原因数据链路层传输问题:由于交换机路由器的数据链路层表是【MAC地址,转发硬件接口】,所以无法传入跨路由器或者交换机的数据,所以还需要继续向上抽象——网络层;2 IP数据报版本号:4位,IPv4或IPv6;首部长度:4位,单位是“32位”,就是我这个IP数据报的首部是多少个32位,最大(2^4-1)×32位=1548位=60字节;服务类型:过程字段、延迟字段、流量字段、可靠性字段等等,不关心;总长度:IP数据报的总长度,最大长度为65535字节,由于数据链路层最长1500个字节,所以

2021-01-02 19:12:21 46

原创 计算机网络(一)物理层和数据链路层

1 物理层物理层就是通过物理的传输介质将各种网络设备连接在一起,并且可以发送信号,无论是数字信号还是模拟信号,发送的都是一串二进制编码。2 数据链路层2.1 数据链路层功能由于物理层能够传输的是一串二进制码,为了能够通信,就需要定义一些规则。封装成帧:传输数据的基本单元,发送方和接受方都按照这个帧的定义来发送和接收;透明传输:只穿帧,不关注帧里面有什么内容,差错检测:物理层可能出错,所以定义数据帧需要有校验功能;2.2 以太网帧格式以太网是一种计算机局域网技术。IEEE组织的IEEE

2021-01-02 15:24:34 32

原创 Redis(六)主从复制、哨兵模式和缓存穿透、击穿、雪崩

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 集群节点划分2 从节点redis.conf配置3 哨兵模式3.1 sentinel.conf配置文件3.2 启动哨兵进程3.3 知识点总结1 集群节点划分是指将一台Redis服务器(主节点)的数据复制到其他Redis服务器(从节点);数据是单向的,只能由主节点到从节点;主节点以写为主,从节点以读为主;配置只用配置从节点,不用配置主节点(默认都是主节点);主节点可写可读,从节点只能读不能写,主节点的写会自动同步到从节点;2 从节

2021-01-02 14:34:36 23

原创 Redis(四)redis.conf配置文件

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录

2021-01-01 21:05:18 15

原创 Redis(五)持久化和订阅发布

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 RDB持久化2 AOF持久化3 订阅发布1 RDB持久化Redis Database。按照配置文件规则,定时触发fork一个子线程,先将数据保存到临时文件,保存完毕之后就替换上一次保存的文件。默认为dump.rdb文件;配置文件redis.conf规则:# 如果900秒内修改了一次就持久化一次save 900 1# 如果300秒内超过10个key就持久化一次save 300 10# 如果60秒内超过了10000万次就持久化一

2021-01-01 20:14:36 17

原创 Redis(三)事务和watch乐观锁基本概念

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 事务2 watch监控1 事务Redis单条命令保证原子性,但是事务是不保证原子性的;redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。redis事务没有隔离性、没有原子性;开启事务;MULTI编写事务命令……命令入队;自动执行事务;EXEC允许在编写事务未执行之前放弃事务DISCARD编译型错误,代码有问题,命令有错,事务中所有的命令都不会被执行;运行时异常,其他语句正常执行,但是出错语句不会执

2020-12-30 21:41:06 15

原创 Redis(二)数据类型及其简单操作

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 概念2 key相关操作3 常用value数据类型3.1 String类型3.2 List类型3.3 Set类型3.4 Hash类型3.5 Zset类型4 三种特殊类型4.1 geospatial1 概念redis存储的数据全部是以key-value键值对存在的,所谓的redis数据类型是针对value的类型;2 key相关操作判断是否存在key:EXISTS [key];设置key的过期时间:expire [key] [time

2020-12-30 20:28:28 14

原创 Redis(一)Linux安装Redis并测试

基于:【狂神说Java】Redis最新超详细版教程通俗易懂目录1 Nosql1 Nosql单机mysql -> 缓存+mysql+垂直拆分(读写分离) -> 分库分表+水平拆分+MySQL集群;核心围绕读写转,读是大概率事件,写是小概率事件,读可以加缓存,写要保证数据一致;分库分表;...

2020-12-30 11:36:51 22 3

原创 力扣刷题笔记

目录1 数组1.1 867. 转置矩阵二级目录三级目录1 数组1.1 867. 转置矩阵867. 转置矩阵tips:方阵时候的快速处理。二级目录三级目录

2020-12-30 09:16:48 18

原创 SpringCloud(一)微服务分布式概述

基于:【狂神说Java】SpringCloud最新教程IDEA版目录1 微服务2 技术栈3 常见组合搭配4 SpringCloud架构1 微服务微服务提倡将单一的应用程序划分成一组小的服务,每个服务都运行在其独立的自己的进程内,用轻量级的通信机制来互相沟通;优点:单一职责,每个服务都可以并发开发,独立部署,进程即服务;缺点:服务之间通信成本变高,数据一致性问题;2 技术栈服务开发:SpringBoot、Spring、SpringMVC;服务配置与管理:Archaius、Diamond;

2020-12-29 19:53:51 17

原创 SpringBoot(四)异步、邮件、定时

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 异步1.1 主程序注解@EnableAsync1.2 使用@Async2 定时2.1 主程序注解@EnableScheduling2.2 使用@Scheduled3 邮件服务3.1 导入依赖3.2 配置3.3 启用类1 异步类似于多线程,主线程把任务交给子线程,然后自己直接不管,给前端较好的体验。1.1 主程序注解@EnableAsync@SpringBootApplication@EnableOpenApi //开启

2020-12-28 17:01:41 23

原创 SpringBoot(三)整合Swagger3框架

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 前后端分离2 swagger简介3 使用3.1 导入依赖3.2 在启动主类注解@EnableOpenApi3.3 配置Swagger3Config3.4 访问使用4 总结1 前后端分离早些年,后端时代,前端写html、css静态页面交给后端,后端根据模板引擎改数据,跳转逻辑数据渲染,MVC模式;前后端分离:后端控制层、服务层、数据访问层;前端控制层、视图层;交互靠API接口传JSON;2 swagger简介Res

2020-12-28 14:34:48 71 1

原创 SpringBoot(二)整合安全框架Shiro

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录11

2020-12-28 09:55:30 8

原创 SpringBoot(二)Springboot整合mybatis

基于:【狂神说Java】SpringBoot最新教程IDEA版通俗易懂目录1 简介1 简介springboot是一个javaweb的开发框架;约定大于配置;微服务:是一种风格,要求我们在开发一个应用的时候,这个应用必须构建成一系列小服务的组合,服务与服务之间使用通信进行数据传输;...

2020-12-26 17:42:41 17

原创 Vue(二)vue-cli和webpack的使用

基于:【狂神说Java】Vue最新快速上手教程通俗易懂目录1 简介2 vue-cli使用2.1 安装node.js2.2 创建工程2.3 运行项目1 简介vue-cli官方提供的一个脚手架,用于快速生成一个vue的项目模板;2 vue-cli使用2.1 安装node.js官网node.js安装国内node源:npm install cnpm -g安装vue-cli,使用命令:cnpm install vue-cli -g2.2 创建工程随便一个目录创建文件夹:Vue执行:vue

2020-12-24 11:07:48 27 2

原创 Vue(一)基本概念、基本语法、事件绑定

基于:【狂神说Java】Vue最新快速上手教程通俗易懂目录1 简介1 简介Vue是一套用于构建用户界面的渐进式JavaScript框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。作者尤雨溪。respect!网络通信:axios;页面跳转:vue-router状态管理:vuexCSS预处理器:用一门专门的编程语言,进行Web页面样式设计,再通过编译器转化为正常的CSS,例如SASS、LESS。...

2020-12-23 20:00:35 10

原创 SpringMVC(四)JSON

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 前后端分离2 JSON3 JSON使用3.1 导入maven依赖3.2 编写Controller返回JSON3.3 FastJson3.3.1 导入依赖3.3.2 使用1 前后端分离后端提供接口:数据;前段负责页面展示;二者通过数据接口连接即可。2 JSONJSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。就是一个文本格式。javascript对象:var

2020-12-21 18:13:34 6

原创 SpringMVC(三)Restful方式、转发与重定向

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 web.xml配置1 web.xml配置

2020-12-21 15:48:59 17

原创 SpringMVC(二)使用注解开发

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 web.xml配置2 springmvc-servlet配置3 具体Controller类4 jsp5 总结1 web.xml配置<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSche

2020-12-21 11:25:23 13

原创 SpringMVC(一)第一个SpringMVC程序

基于:【狂神说Java】SpringMVC最新教程IDEA版通俗易懂目录1 MVC1 MVCmodel(模型):数据模型,提供要展示的数据,现在一般包括数据Dao和行为Service;view(视图):负责进行模型的展示,一般就是用户交互界面;Controller(控制器):调度model和view,接受请求,委托给模型处理,返回数据,由视图展示;...

2020-12-21 10:24:56 28

原创 MySQL数据库(八)连接相关

目录1 设置最大连接数2 查看当前连接列表3 关闭某个连接4 JDBC连接5 mybatis连接池5.1 理解5.2 获取释放连接流程5.2.1 获取连接5.2.2 配置文件5.2.3 配置参考6 总结1 设置最大连接数可以修改/etc/mysql/mysql.conf.d/mysqld.cnf配置文件中max_connections来设置最大连接数;进入MySQL后可以查看最大连接数:show variables like '%max_connections%';+----------------

2020-12-20 16:43:57 11

原创 Junit单元测试之多线程的情况

在做mybatis的多个线程修改内容时候的遇到的问题;Junit单元测试不支持多线程!!验证测试:@Testpublic void multiTheadUpdate() { for(int i=0;i<10000;i++){ int finalI = i; new Thread(()->{ try { Thread.sleep(100); } catch (Interr

2020-12-20 13:24:52 20

原创 JavaScript(二)BOM和DOM

基于:【狂神说Java】JavaScript最新教程通俗易懂目录1 BOM简介2 DOM2.1 获得DOM2.2 更新操作2.3 删除节点2.4 插入节点1 BOM简介浏览器对象模型(Browser Object Model, BOM);window:获得浏览器窗口相关信息;navigator:封装了浏览器相关信息;screen:计算机屏幕相关信息;location当前页面的URL信息;document:代表当前页面;history:记录自己的浏览网页记录;2 DOM2.1 获得D

2020-12-19 20:34:44 10 2

原创 JavaScript(一)函数

基于:【狂神说Java】JavaScript最新教程通俗易懂目录1 基础2 函数基本使用2.1 定义方式12.2 定义方式22.3 调用函数2.4 arguments关键字2.5 rest关键字1 基础JavaScript的基础包括数据类型和顺序、循环、选择语句,非常灵活,可以类比着和java一起学习;建议安装node.js练习学习;2 函数基本使用2.1 定义方式1function abs(x){ return x >=0 ? x : -x;}2.2 定义方式2var a

2020-12-19 17:20:36 15 4

原创 使用MyBatis向MySql数据库批量insert插入100万条数据

目录1 场景2 MySQL数据库user表3 创建实体4 批量插入接口5 Mapper配置SQL语句6 `max_allowed_packet`数据库参数设置7 测试(根据不同的需求编写)1 场景有时候在创建数据库之后,有一些已经存在的数据需要插入到数据库,这就涉及到了数据的大规模批量插入了,如果循环使用insert into table values(a,b,c)插入,速度将会比较慢,应该大部分时间都在事务的提交创建上了,mysql提供了批量插入的功能,可以使用insert into table va

2020-12-18 17:39:58 181 2

原创 MySQL数据库(七)事务

参考基于:【狂神说Java】MySQL最新教程通俗易懂1 四大特性原子性,一致性,隔离性,持久性;2 mysql事务--手动处理事务,关闭自动提交Set autocommit = 0--设置保存点savepoint p0--标记事务start transaction--执行事务相关insert XXXinsert XXXdelete XXX--提交commit--要是失败就回滚回到保存点,删除保存点rollback to p0release p0...

2020-12-18 10:53:37 7

原创 java异常和错误

目录1 继承关系1 继承关系都继承自java.lang.Throwable,注意public class Throwable extends Object implements Serializable,这是一个实体类。检查性异常:从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过;运行时异常:指的是已经编译完成,在程序运行过程中所产生的异常,如空指针、下标越界、类型强转等;错误:错误不是异常,常出现在JVM中,而是脱离程序控制的问题,如栈溢出,JVM一般会选择线程终止;

2020-12-17 19:42:35 9

原创 Spring框架(六)事务

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 事务2 Spring中的事务管理2.1 声明式事务2.1.1 待添加事务方法2.1.2 引入tx命名空间2.1.3 声明式事务配置2.2 编程式事务2.2.1 配置transactionManager即可2.2.2 transactionManager依赖注入2.2.3 编写事务方法3 总结1 事务一组业务当做一个业务来做,要么全做,要么全不做。原子性:整个一组业务是一组原子操作;一致性:一致性是指事务必须使数据库从一个

2020-12-17 14:45:06 15

原创 Spring框架(五)实战Spring整合Mybatis

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 Mybatis回顾2 Spring使用Mybatis2.1 spring-dao.xml配置2.1.1 dataSource2.1.2 sqlSessionFactory2.1.3 sqlSession2.2 测试使用2.2.1 接口实现类2.2.2 注册bean2.2.3 测试使用1 Mybatis回顾可以参考:MyBatis(一)第一个MyBatis程序(idea+maven)使用原生mybatis的一般性流程:使用

2020-12-17 09:51:09 62

原创 Spring框架(四)AOP面向切面编程

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 xml配置2 @Component3 一般规范4 生命周期@Scope要使用注解开发,必须导入Aop的包;1 xml配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSch

2020-12-16 14:33:18 49 1

原创 Spring框架(三)Bean的自动装配

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 autowire1 autowire<bean id="user" class="xyz.cqulwj.pojo.User" autowire="byName">byName寻找容器中id和类中setName方法中Name一致的自动装配进去;byType对象属性类型相同的自动装配(需要类型唯一);...

2020-12-15 10:00:46 40 2

原创 Spring框架(二)DI依赖注入

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 简介2 例子实体类3 注入3.1 基本数据类型+String3.2 引用类型3.3 数组类型3.4 List列表3.5 Map类型3.6 Set集合3.7 空值3.8 properties类型3.9 运行结果4 p命名空间(property注入)5 c命名空间(constructor注入)1 简介当使用bean创建对象的时候,可以使用构造器注入参数值、set方法注入参数值。还可以使用其他第三方注入。依赖注入(Dependen

2020-12-14 16:21:57 17

原创 Spring框架(一)初始IoC和Spring

基于:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂目录1 简介2 IoC理论3 第一个Spring程序3.1 创建maven项目添加依赖3.2 创建pojo下的实体类3.3 配置beans.xml3.4 测试获取对象3.5 原理4 有参构造4.1 按参数序号4.2 按参数类型匹配4.3 按参数名(常用)5 Spring配置5.1 别名alias5.2 import1 简介Spring是一个轻量级**控制反转(IoC)和面向切面(AOP)**的容器框架。历史:2002年,interfa

2020-12-14 15:20:12 12

原创 CSS3基础入门知识(一)语法和选择器

基于:【狂神说Java】CSS3最新教程快速入门通俗易懂目录1 简介2 语法1 简介CSS(cascading style sheet)层叠样式表,美化HTML的标签。CSS2.0加入了DIV块,提出了HTML和CSS分割的思想;CSS2.1浮动和定位;CSS3圆角、阴影、动画。所以显示需要浏览器兼容。2 语法选择器{ 声明1; 声明2; 声明3;}建议单独开css文件夹,在里面写.css文件,然后在html中引入<link rel="stylesheet" href="css/

2020-12-13 16:26:30 8

原创 HTML5基础入门相关知识

基于【狂神说Java】HTML5完整教学通俗易懂目录1 介绍2 第一个HTML文件3 网页基本标签3.1 标题标签3.2 段落标签3.3 换行标签(单标签)3.4 水平线3.5 特殊符号4 图像标签5 链接(a)标签6 列表标签6.1 有序列表order list6.2 无序列表6.3 自定义列表7 表格标签1 介绍Hyper Text Markup Language(HTML)超文本标记语言;超文本的意思:文字、图片、音频、视频、动画等。W3C(World Wide Web Consortium万

2020-12-12 21:24:07 24

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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