自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

寄蜉蝣于天地,渺沧海之一粟。

相与枕藉乎键中,不知东方之既白。

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

原创 20201201——程序人生

校招已经落幕了,现在已经是十二月了。在整个准备的过程中,有很多自己没有完善的知识点与概念,所以开了github上面的博客,同步更新把。我的github的网址github网址

2020-12-01 21:55:31 121

原创 20200514——linux 经典语录

01 一切从根开始02 在linux系统中一切皆文件 目录——特殊文件 存储设备——特殊文件 命令——命令文件03 linux系统中服务配置文件被修改之后,不会立即生效 需要重启服务(重新加载读取配置文件过程),才能使配置的文件生效04 在系统中对配置进行永久修改 都需要修改配置文件 在命令行的修改,大部分都是临时修改...

2020-05-14 21:25:54 362 1

原创 20200512——linux 命令/系统特殊符号

检查网卡地址配置ip address show /ip a测试网络连通性ping www.baidu.com中断系统ctrl+c清屏ctrl+l图形界面修改网卡地址nmtui

2020-05-12 21:05:28 270

原创 没有后记的后记 已动手实践过的技能

SpringMVCSpringMVC的执行流程与原理

2020-04-21 20:17:00 297

原创 不是前言的前言 个人日常

工欲善其事必先利其器不管是学习什么都要有一个目标。明确好目标之后再进行努力的继续学习。一、java基础我们称之为java SE基础。基础语法面向对象集合 从Collection-> set/list/mapIO IO流,主要是操作系统的学习多线程与并发 java中的Thread深入学习异常 Exception与Error网络编程 应该是Socket编程二、数据库...

2020-04-19 19:35:01 239

原创 20200226——剑指offer刷题目录

原文链接面试基础java基本类型八种byte,short,int,longchardouble,floatbooleanjava引用类型数组类接口String 能被继承么不能被继承,被final修饰的类不能被继承关于final关键字浅谈java中的final若修饰类,类中的方法都会隐式的定义成final方法修饰方法,明确禁止该方法被子类覆盖,不能被重写修饰变量,...

2020-02-27 13:25:07 209

原创 程序英语

decline 衰退、减少configure 配置、设定consult 顾问due diligence 尽调sheet 表单、纸、被单Extraction-Loading-TransformationIntegrated Development Environment ide 集成开发环境desktop 桌面console 控制台orient 标定方向 at...

2018-07-08 19:21:40 998

原创 20230818 数据库自整理部分

一个事务读取到另一事务还没有提交的数据事务B读取了事务A还没有提交的数据。

2023-08-18 15:39:43 186

原创 操作系统 - 五道题

进程和线程都是操作系统中用于实现并发执行的基本概念,它们的区别如下:进程:进程是程序在操作系统中的一次执行过程。它包括程序的代码、数据和执行状态等,是操作系统中资源管理的基本单位。线程:线程是进程中的一个独立执行单元。一个进程中可以包含多个线程,线程共享进程的资源,但拥有各自的执行路径。区别:进程和线程的最大区别在于资源管理上的差别。每个进程都有自己独立的地址空间和系统资源,独立运行。而线程共享同一个进程的地址空间和系统资源,协同完成任务。

2023-04-19 21:24:29 411

原创 计算机网络 - 面试

路由器(Router),又叫路由选择器,是一种网络设备,主要作用是在互联网中传递数据包,将数据包从源地址转发到目标地址。路由器通过学习并保存网络拓扑,并根据拓扑来选择最佳的路径,从而实现数据包的传递。具体作用如下:数据包转发:路由器能够识别数据包的目标地址,并将数据包从源地址转发到目标地址。网络隔离:路由器可以隔离不同的网络,使不同的网络互相独立,保护网络安全,同时也能够实现跨网络通信。

2023-04-19 21:14:25 445

原创 软件工程 面试

黑盒测试法(Black Box Testing)也叫功能测试法,是一种测试方法,在测试过程中不考虑代码实现细节,只关注程序组件的功能。黑盒测试法通常是由测试人员运行测试用例,而不是开发人员。黑盒测试法能够测试程序输入和输出的执行,以确定是否符合规定的特征或实现了所需的结果。测试人员事先是不知道程序的具体细节的,只考虑功能。黑盒测试法通常需要满足以下几个要点:找出功能性问题:黑盒测试法主要关注程序的功能,以测试结果为导向,错误的输出结果可以暴露出程序中可能存在的问题。

2023-04-19 21:07:14 701

原创 面试马铭泽

首先,我对军人从小有崇敬之情,梦想着穿着庄严的军装,更对祖国有强烈的热爱之心。我的大舅是一名现役军人,老舅也曾服过兵役,从他们的谈吐以及教育中,让我对部队一直充满向往之情,同时希望奉献自己的一份能力为国家发展尽一份能力。其次,我面试的岗位是助理工程师,我有比较扎实的专业基础,业务素质过硬。随着科技兴起,本科期间对互联网与计算机产生浓厚的兴趣,在互联网大赛曾获专利奖项与软件著作。随后在读研期间,在实验室参与省级项目PISP智能停车场,自己独立实现诸多功能模块代码。

2023-04-18 22:00:02 508

原创 Java基础教学 日期类Api导学

操作时间类

2022-08-04 22:43:53 132

原创 初始化与销毁

spring初始化顺序

2022-08-04 14:33:28 93

原创 20211118——关于@RunWith和@SpringBootTest

背景是自己想跑一个单测测试,看到有@RunWith和@SpringBootTest方法上网搜了一圈,感觉有用的答案根本没有。有人不知所云写了一篇,就有人跟风去复制,根本不懂什么意思。@SpringBootTest比@RunWith高级答案是直接用@SpringBootTest就可以了...

2021-11-18 21:03:37 183

原创 20210901——机器学习复习

人工智能概述机器学习与人工智能/深度学习1956年8月 达特茅斯会议——人工智能的起点机器学习是人工智能的一个实现途径深度学习是机器学习的一个方法发展而来机器学习/深度学习能做什么应用场景非常多,可以渗透到了各个行业领域当中,医疗,航空,教育,物流,电商等等领域。传统预测:店铺销量预测/量化投资/广告推荐图像领域:人脸识别/交通自然语言:文本分类/情感分析/聊天机器人什么是机器学习定义个人认为:机器学习是从已知数据中自动分析获得模型,并且利用模型对未知数据进行预测。科学定义:1)

2021-09-01 20:34:54 377

原创 20210716——Java并发编程的艺术 第三章 Java内存模型

并发编程模型的两个关键问题在并发编程中,需要处理两个关键问题:线程之间如何通信以及线程之间如何同步。在命令式编程中,线程之间的通信机制有两种:消息传递和共享内存同步是指程序中用于控制不同线程间操作发生相对顺序的机制,在共享内存并发模型里,同步是显示进行的。程序员必须显示指定某个方法或某段代码需要在线程之间互斥执行。在消息传递的并发模型中,由于消息的发送必须在消 ,息的接受之前,因此同步是隐式进行的。Java内存模型的抽象结构在java中,所有实例域、静态域和数组元素都存储在堆内存中,堆内存在线程之间

2021-07-16 19:23:51 107

原创 20210714——Java并发编程的艺术 第二章 Java并发机制的底层实现原理

Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM中,JVM执行字节码,最终需要化为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令volatile的使用

2021-07-16 13:56:34 105

原创 20210714——Java并发编程的艺术 第一章 并发编程的挑战

上下文切换单核处理器也支持多线程执行代码,cpu通过给每个线程分配CPU时间片来实现这个机制,时间片是CPU分配给各个线程的时间,因为时间片非常短,所以CPU需要不停的切换线程执行,让我们感觉多个线程是同时进行的,时间片一般是几十毫秒。cpu通过时间片分配算法来循环执行任务,当任务执行一个时间片后会切换到下一个任务,但是切换前会保存上一个任务的状态,以便下次切换回这个任务,可以加载这个任务的状态,所以任务从保存再到加载的过程是一次上下文切换。多线程一定快么从数据可以看到,当并发执行累加操作不超过百万

2021-07-14 21:06:01 86

原创 20210708——Redis缓存穿透和雪崩(十一)

缓存穿透概念用户查询一个数据,redis没有,就是缓存无命中,于是向持久层数据库请求查询,发现也没有,查询失败。当很多用户一起查询的时候,持久层数据库压力很大,可能导致崩溃,就是缓存穿透。解决方案:布隆过滤器对所有可能查询的数据以hash形式存储,先进行校验,不符合直接丢弃。解决方案:缓存空对象当存储层不命中之后,缓存一个空对象,设置一个过期时间,之后在访问这个数据从缓存中获取,保护了后端数据源但是空对象缓存,占用了资源对于保持一致性的业务可能会有影响缓存击穿击穿是指一个key非常热点,

2021-07-08 17:36:21 89

原创 20210708——Redis主从复制(十)

概念主从复制,是指一台Redis服务器的数据,复制到其他Redis的服务器,前者称为主服务器节点,后者称为从节点。数据的复制是单向的,只能从主节点到从节点,Master以写为主,Slave以读为主。作用1)数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式2)故障恢复:当主节点出现问题,可以由从节点提供服务,实现快速的故障恢复3)负载均衡:实现读写分离,主节点负责写,从节点负责读,分担服务器负载4)高可用:主从复制还是哨兵和集群能够实施的基础环境只配置从库,不用配置主库i

2021-07-08 17:20:26 86

原创 20210707——Redis发布与订阅(九)

Redis发布订阅是一种消息通信模式 发送者发送消息,订阅者接受消息Redis客户端可以订阅任意数量的频道。订阅命令实践发布者接受者原理实现Redis是通过C语言实现的,通过分析Redis的源码里的pubsub.c文件,了解发布和订阅机制的底层实现,加深对redis的理解。Redis是通过publish,subsribe, psubsribe等命令实现发布和订阅功能通过Subscribe命令订阅某个频道之后,redis-server里面维护了一个字典,字典的键就是一个个chann

2021-07-08 00:14:11 134

原创 20210707——Redis持久化(八)

Redis 是内存数据库,如果不将内存中的数据落入磁盘,那么服务器一旦异常崩溃,数据库中的状态也会消失。RDB redis database在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是Snapshot快照,他恢复时将快照文件直接读到内存中。Redis会创建(fork)一个子进程来进行持久化,会将数据临时写入一个文件,待持久化过程结束了,在用这个临时文件替换上次持久好的文件,整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能,如果需要大规模的数据恢复,且对于数据恢复的完整性不是非

2021-07-07 20:22:21 85

原创 20210706——Redis.conf详解(七)

启动的时候,我们就是通过配置文件启动redis单位配置文件,unit单位对大小写不敏感包含类似于Spring一样,可以导入其他的配置文件网络常用的绑定ip端口号开启保护模式通用默认是no,改成yest,改成了后台运行模式如果以后台方式运行,我们就需要指定一个pid文件日志 debug用于测试和开发notice 通知,部分重要日志,生产环境warning日志的文件位置默认数据库数量是否显示logo快照持久化,在规定的时间内执行了多少次会持久化到文件中

2021-07-07 01:41:46 117

原创 20210705——Redis之Jedis与SpringBoot整合(六)

Jedis是redis官方推荐java连接工具,使用java操作中间件导入对应的依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.

2021-07-06 14:42:19 133

原创 20210705——Redis事务(五)

redis单条命令不保证原子性redis的事务本事:一组命令的集合redis的事务没有隔离级别的概念,所有的命令在事务中,并没有直接执行,只有发起执行命令的时候才会执行事务的执行redis的事务:开启事务(multi),事务入队,执行事务(exec)锁:redis还可以实现乐观锁放弃事务编译异常,事务所有的命令都不会执行运行时异常,如果事务队列出现语法错误,那么执行命令,其他命令可以执行监控悲观锁不管做什么都会加锁,影响性能乐观锁很乐观,认为什么时候都不会出现问题,所以不会

2021-07-05 16:52:01 105

原创 20210703——Redis三种特殊数据类型(四)

Geospatial地理位置朋友的定位,附近的人,打车距离计算两地之间的距离,方圆几里的人命令geoadd规则:两级无法直接添加,我们一般会下载城市数据,通过java程序导入参数key(经度,维度,城市)127.0.0.1:6379> geoadd china:city 116.40 39.90 beijing(integer) 1127.0.0.1:6379> geoadd china:city 121.47 31.23 shanghai(integer) 1127.0

2021-07-04 15:50:04 114

原创 20210630——Redis基本数据类型(三)

全段翻译:Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU e.

2021-07-02 23:35:58 501 1

原创 20210626——Redis入门(二)

redis是什么Remote Dictionary Server远程字典服务C语言编写的免费和开源,当下最热门的nosql的技术之一,也被人们称为结构化数据库redis能做什么内存存储内存中断电即失去持久化rdb,aof效率高,高速缓存发布订阅地图信息分析计时器、计数器(浏览量)redis 特性多样的数据类型持久化集群事务redis安装window双击server启动了使用客户端连接redis双击client测试连接ping记住window使用red

2021-06-30 23:37:04 153 1

原创 20210622——Redis概述(一)

Nosql概述为什么要用nosql已经是2021年,大数据时代,一般的数据库无法处理了第一个时代原始的时代,单机Mysql,一般基本的网站访问量不会太大,还是静态的html,这个时候网络的瓶颈在于1)数据量太大,一个机器放不下去2)数据的索引(B+树),一个机器内存也放不下去3)访问量,数据库访问量比较大, 读写不分离,服务器承受不了只要你出现以上三种情况之一,你就必须要晋级。第二个时代Memcached缓存+mysql+垂直拆分+读写分离网站80%的情况都是读,查询数据库的方式十分麻

2021-06-23 00:55:45 151 1

原创 20210620——记一次突发奇想的前后端

前言莫名其妙想实现一个前后端分离的登录功能,就是最简单的,前端把表单信息返给后端,后端接收封装成 实体类,然后去数据库验证,最后实现登录。时间匆忙,需求很简略前端直接在webstorm建的一个项目以前还需要用git,vue init用vue-cli脚手架搭建来的,现在直接创建就可以了踩坑1初始化之后好像需要npm install 踩坑2应该是这种创建方式,没有npm run dev这样的指令,需要npm run serve用来启动踩坑3我用了element-ui和axios,别忘了

2021-06-20 01:03:23 104

原创 202010516——Java编程思想

前言写在前面,今天是二一年的五月十六日。明天盲审的论文成绩就出了,心里还是有些忐忑,但愿有惊无险吧。Java编程思想这本书在很久以前本科的时候简单的翻过一遍,希望今后查缺补漏。...

2021-05-26 13:59:41 146 2

原创 20210420——SpringBoot微服务整合mybatis(五)

Mybatis自研 <!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-bo

2021-04-20 22:34:23 97

原创 20210418——SpringBoot微服务Druid数据源(四)

Data对于数据库访问层,无论是关系型数据库还是非关系型数据库,SpringBoot底层都采用Spring Data的方式统一进行处理配置文件application.ymlspring: datasource: username: root password: password url: jdbc:mysql://localhost:3306/mybatismmz?useUnicode=true&characterEncoding=utf-8&serverT

2021-04-19 22:56:58 178

20210416——SpringBoot微服务web(三)

静态资源导入探究WebMvcAutoConfigurationprotected void addResourceHandlers(ResourceHandlerRegistry registry) { super.addResourceHandlers(registry); if (!this.resourceProperties.isAddMappings()) { logger.debug("Default resou

2021-04-17 22:42:34 67

原创 20210415——SpringBoot微服务深入学习(二)

yaml语法SpringBoot的配置文件,要么叫application.properties,要么叫applicaiton.yml两种语法不一样properties的写法 server.port=9091yml的写法,中间一定有空格server: port: 9091赋值声明两个pojo类Dog类package com.mmz.pojo;import org.springframework.stereotype.Component;/** * @Classname Dog

2021-04-15 22:33:19 106

原创 20210414——SpringBoot微服务初探(一)

微服务阶段javaee:oopmysql:持久化前端:视图javaweb:独立开发三层网站smm:框架简化了我们的开发流程,配置较为复杂之前都是打war包,在tomcat中运行spring简化:springboot,微服务架构 可以打jar包,内嵌tomcat服务越来越多,springcloud微服务简介什么是微服务就是一种架构风格,开发一个应用的过程中,这个应用必须构建一系列小服务的组合,可以通过http方式进行交互,要说微服务框架,先得说说之前的单应用框架单应用框架所谓单应用

2021-04-14 22:47:22 143 1

原创 20210324——SSM框架整合

创建数据库创建数据库create DATABASE ssmbuild;切换到当前数据库下面use ssmbuild查看原来有没有book这张表drop TABLE if EXISTS books;`在这里插入代码片`创建数据库表CREATE TABLE book(bookID INT(10) NOT NULL AUTO_INCREMENT COMMENT '书id',bookName VARCHAR(100) NOT NULL COMMENT '书名',bookCounts IN

2021-04-13 20:51:12 139 1

原创 20210228——SpringMVC

前言ssm springmvc+spring+mybaits MVC三层架构javaSE:认真学习,快速入门javaWeb:认真学习框架:研究官方文档,锻炼自学/笔记/项目能力MVCmvc是模型model,视图view,控制器controller的简写,是一种软件设计思想。是将业务逻辑、数据、显示分离的方法来组织代码model1时代model2时代model2这样不仅提高了代码的复用率与项目的拓展性,且大大降低了项目的维护成本,Model1的实现方式比较简单,适用于开发小规模项目,M

2021-03-04 01:51:11 102 2

原创 20200208——Spring(下)

Bean的自动装配自动装配是Spring满足bean依赖的一种方式Spring会自动从上下文中寻找,并且自动装配属性在Spring有三种装配的方式1)在xml显示配置2) 在java中显示配置3) 隐式的自动装配beanByName自动装配<!-- <bean id="person" class="com.mmz.pojo.Person">--><!-- <property name="name" value="mmz">&l

2021-02-28 15:34:38 97

空空如也

空空如也

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

TA关注的人

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