自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

北极星的博客

未来的程序员

  • 博客(280)
  • 问答 (1)
  • 收藏
  • 关注

原创 万字详解Git使用

文章目录一.简介二.SVM三.Git四.SVM和Git的区别五.Git工作流程六.Git 配置七.创建本地仓库八.使用git添加文件九.查看仓库当前状态一.简介Git是一个分布式的版本控制,适合多人的团队进行开发。二.SVM在介绍git之前,先介绍一下svm.svm是集中式的版本控制,每一位工作者需要从中央服务器拉取项目,然后修改完成项目之后将项目提交到中央服务器当中。如果是远程服务器,需要联网,当然也可以使用局域网。特点:容错性差,中央服务器损坏,则项目无法工作,甚至项目丢失。三.Git

2021-07-08 19:55:48 307

原创 【面试题】为什么重写 equals 时必须重写 hashCode 方法?

同理,我们对象的内存地址为输入,而得出的hashcode为输出。我们在HashMap中存储了一些人的信息,现在来了一个名叫徐老九的人,要在HashMap集合中找到他的信息,如果没有,则将他的信息写入HashMap集合中,如果我们单纯使用equals,则需要从头比较到尾,效率非常低。比如下面的例子,hashMap集合中已经有一个徐老九,但是一个新的徐老九(名字 身高 体重一致,应该认为是同一个对象)与原来的徐老九因为地址不同得出的hashCode不同,从而错误认为信息当中没有徐老九,导致错误发生。

2024-04-16 15:56:52 705

原创 【面试题】s += 1 和 s = s + 1的区别

很长一段时间内我也是这么觉得,因为当时学习c语言的时候教科书上将s += 1转换成s = s + 1帮助我们去理解,所以我将这个迁移到了java语言当中。但是直到遇到了一个有意思的题目,于是亲自在idea中去测试了一下,结果发现s += 1 没有报错,而 s = s + 1报错了。本博客中未标明转载的文章归作者Beyong有,欢迎转载,但未经作者同意必须保留此段声明,且在文章明显位置给出原文连接,否则保留追究法律责任的权利。github地址:https://github.com/beyong2019。

2024-04-14 17:42:46 6937 17

原创 【redis初级】redis desktop manager连接失败问题

(1)输入firewall-cmd --query-port=6379/tcp,如果返回结果为no,那么证明6379端口确实没有开启。(2)输入firewall-cmd --add-port=6379/tcp,将6379端口开启,返回success。(3)再执行上一条命令,返回yes,证明端口已经成功开启。

2024-03-26 19:11:30 312

原创 【redis初级】redis.conf无法修改问题(redis.conf只读)

最近在学习redis的过程中,发现了一个问题,redis.conf无法根据需要进行修改,每次使用vim进去编辑发现都是空白,刚开始怀疑是文件放错位置,导致这个文件为空,或者是要root才能有权限修改,后面去一级一级找到这个文件,发现文件不是空的,但是文件是只读的,于是我使用文件修改命令将文件的访问权限升到最高,可以修改文件了。

2024-03-25 00:28:06 227

原创 【Java高级】利用反射机制获取类的所有信息

对象的getModifiers(),会返回一个数字,该数字代表一个修饰符,我们可以将该数字作为参数传给Modifier.toString(),这个方法会返回修饰符的字符串形式。普通方法与构造方法类似,只是名字由constructor换成method。而且普通方法多了返回值类型。我们知道反射机制能帮助 我们操作字节码文件,所以如下将总结一些相关的方法去一一获取类的相关信息。注意小标题与方法的对应。一个User类足以。

2024-03-24 01:03:09 829

原创 【c++】map

m.end())

2024-01-07 17:56:22 514

原创 【C++】vevtor

1. 使用举例2.定义和初始化构造函数功能vector<T> v1vector保存类型为T的的对象;默认构造函数;v1为空;vector<T> v2(v1)v2为v1的副本vector<T> v3(n, i)v3包含n个值为i的元素vector<T> v4(n)v4含有值初始化的元素的n个副本3.vector对象的操作操作功能v.empty()如果v为空,则返回true,否

2024-01-04 00:08:15 428

原创 【redis-初级】redis安装

(1)使用Xftp将安装包上传到Linux服务器上的/root。(注意:要将Linux系统的防火墙关闭!(1)解压到 /usr/local。(7)进入src查看编译生成的文件。(3)进入reids-3.2.9。(5)查看gcc安装成功。进入redis.conf。上面注释掉,下面改为no。输入linux的ip地址。

2023-06-12 17:38:23 949

原创 【Linux】解决Linux无法联网的一个小问题

今天使用在虚拟机VMware中使用Linux系统(Centos7)的时候,发现不能联网,找了很多办法也没有解决,甚至重新安装也没有解决,后来想起之前的解决方案。要在任务管理器中打开,VMware的网络管理。

2023-06-12 15:18:32 490 1

原创 【Vue】六:路由(上)使用路由 多级路由

new Vue 时添加新的配置项:一旦使用了 vue-router 插件,在 new Vue 的时候可以添加一个全新的配置项:router。(4)router 路由器的创建一般放在一个独立的 js 文件中,例如:router/index.js。(6)使用 router-link 标签代替 a 标签(App.vue 中)注意:一般普通组件存放在components中,路由组件存放在pages中。(2)main.js 中引入并使用 vue-router。(1)安装vue-router插件。

2023-06-10 15:38:45 1288

原创 【Vue】三:Vue组件:props配置 父组件获取子组件

如果要对props传过来的值稍作修改后展示,则可以定义一个新的变量,然后将props传过来的值赋给变量,修改变量的值,再将变量展示出去。ref 也可以使用在普通的 HTML 标签上,这样获取的就是这个 DOM 元素。

2023-06-08 16:15:26 2653

原创 【Vue】三:Vue组件:Vue脚手架

(4)编译 Vue 程序,自动将生成 html css js 放入内置服务器,自动启动服务。(5)打开浏览器,访问:http://localhost:8080。脚手架默认配置在 vue.config.js 文件中进行。(1)安装node.js。组件XDemo.vue。组件YDemo.vue。

2023-06-07 23:10:52 124

原创 【Vue】三:Vue组件:单文件组件

注册组件到App,并在此使用组件。

2023-06-07 22:40:25 110

原创 【Vue】三:Vue组件:VueComponent 和 Vue

Vue.extend({})配置项中的 this 就是:VueComponent 实例(vc)。new Vue({})配置项中的 this 就是:Vue 实例(vm)。

2023-06-07 12:41:05 78

原创 【Vue】三:Vue组件: 组件使用和组件嵌套

(1)创建Vue组件的时候,不能使用el配置项。但是需要使用template配置项来配置模板语句。(2)配置项中的data,不能直接使用对象形式,要使用function。直接使用类似使用html标签。

2023-06-06 23:14:45 1194

原创 【vue】二:核心处理---vue的生命周期

(1)beforeCreate阶段,还不能访问data和methods。(2)created阶段,可以访问data和methods。el有,template有,则编译template。el有,template没有,则编译el。手动挂载,才能继续执行流程。el没有,则需要使用。

2023-06-04 10:26:55 420

原创 【Vue】二:Vue核心处理---vue的其它指令和自定义指令

指令的名字(1)v-不需要写(2)Vue官方建议指令的名字要全部小写,如果多个单词,使用-衔接回调函数的执行时机包括:(1)标签和指令第一次绑定的时候(2)模板被重新解析的时候回调函数有两个参数(1)第一个参数是真实的dom元素(2) 第二个参数是标签和指令之间绑定关系的对象。

2023-06-02 21:22:17 573

原创 【Vue】二:Vue核心处理---列表渲染 列表过滤 列表排序

这里的key建议使用对象的id,不要使用index。使用computed同样可以实现上面的功能。注意:v-for要写在循环项上。

2023-05-30 15:59:15 115

原创 【Vue】二:Vue核心处理---条件渲染

因为 v-if 是一个指令,他必须依附于某个元素。如果使用div不太合适,使用template比较合适。指令用于条件性地渲染一块内容。这块内容只会在指令的表达式返回 true 时才被渲染。按条件展示,为true,则展示,为false,则不展示。如果一个元素频繁隐藏和显示,则使用v-show。

2023-05-29 20:30:36 83

原创 【Vue】二:Vue核心处理---class与style绑定

文章目录1.class绑定1.1 字符串形式1.2 数组形式1.3 对象形式2.style绑定1.class绑定1.1 字符串形式1.2 数组形式1.3 对象形式形式适用字符串确定动态绑定的样式只有一个,但是名字不确定数组样式的个数不确定,样式的名字也不确定对象样式的个数确定,样式的名字也确定,但是需要决定是否使用2.style绑定

2023-05-28 22:40:34 49

原创 【Vue】二:Vue核心处理---计算属性 监视属性

实际上计算属性与methods中定义方法基本上没有什么区别,只是计算属性基于响应式依赖缓存,只要数据没有发生改变,计算属性从缓存中取值,只有当数据发送改变,才会重新执行函数。(4)所有不属于 Vue 管理的函数,例如 setTimeout 的回调函数、Promise 的回调函数、AJAX 的回调函数,建议使用箭头函数。(3)开启深度监视,需要监视一个具有多级结构的属性,并且监视所有的属性,需要深度监视。(2)监视多级结构中某个属性的变化,写法是:‘a.b.c’ : {}。1 第一个时机:初次访问该属性。

2023-05-28 20:47:51 619

原创 【Vue】二:Vue核心处理---事件处理

如果我们想要阻止浏览器的默认行为,我们可以使用如下的两个方法。其中方法一是使用事件修饰符。如果是我自己元素上的事件,则执行,如果是被人传递给我的事件,则不执行。当我们点击后,回去先执行关联的事件,然后再去执行默认行为,即跳转。(2) .tab (只能配合 keydown 使用)(3) .delete (捕获“删除”和“退格”键)当我们使用stop后,事件停止冒泡。关于DOM事件流:(网上的一个介绍)直接继续执行事件的默认行为。

2023-05-27 21:29:31 775

原创 【Vue】二:Vue核心处理---模板语法

其中表达式,之前在插值语法中{{这里可以写什么}},那么指令当中的表达式就可以写什么。凡是标签体当中的内容想要改变,则使用插值语法,凡是标签中的属性想要改变,则使用指令语法。但是上例中的函数不能写成箭头函数,如果写成箭头函数,则this指向的是window。编译后有的指令,即需要参数,又需要表达式:v-bind:参数=“表达式”有的指令,不需要参数,但是需要表达式:v-if=“表达式”有的指令,不需要参数,也不需要表达式:v-once。

2023-05-27 12:49:19 1324

原创 【Vue】一:Vue的基础

{{message}}是 Vue 框架自己搞的一个语法,叫做插值语法(或者叫做胡子语法),可以从 data 中根据 key 来获取 value,并且将 value 插入到对应的位置。(2)Vue的构造函数的参数是options, 要求这个options参数必须是一个纯粹的js对象 {}。(4)可以不使用template配置项,这些模板语句可以直接写到html标签当中,Vue能够找到并且编译。模板语句是Vue框架自己制定的一套模板语法规则,模板语句可以是HTML代码,也可以是Vue中的特殊规则。

2023-05-25 20:25:23 1575

原创 【JavaScript】拾遗(5.25)

全局变量:在函数体外声明的变量属于全局变量,另外不使用var关键字声明的变量无论在什么位置都是全局变量,全局变量在浏览器关闭时销毁。局部变量:函数的形参是局部变量,使用var关键字在函数体中声明的变量也是局部变量,函数执行结束后,局部变量的内存就释放了。sayHello函数注册到按钮上,等待click事件发生之后,该函数被浏览器调用,所以该函数也没称为回调函数。可以将代码块放在任意的位置。但是放的位置不同,Js的被执行的时机也可能不同。(回调函数:自己将函数写出来,但是这个函数不被自己调用,等待他人调用)

2023-05-25 12:00:58 636

原创 【SpringBoot】十:远程访问@HttpExchange[SpringBoot 3]

(3)创建 HTTP 服务代理对象。(1)Todo数据类。

2023-05-24 16:42:40 426

原创 【SpringBoot】十:Web服务---全局异常处理

(1)创建一个页面,页面内容为两个数相除。(3)创建全局异常处理器。

2023-05-23 22:15:53 94

原创 【SpringBoot】九:Web服务---文件上传

在 Controller 的方法加入形参@RequestParam MultipartFile。MultipartFile 表示上传的文件,提供了方便的方法,保存文件到磁盘。Spring Boot 默认单个文件最大支持 1M,一次请求最大 10M。改变默认值,需要 application 修改配置项。file-size-threshold 超过指定大小,直接写文件到磁盘,不在内存处理。服务器创建目录存放上传后的文件。

2023-05-23 18:57:26 532

原创 【SpringBoot】八:Web服务---WebMvcConfigurer

WebMvcConfigurer是SpringMVC xml配置文件的JavaConfig实现方式。

2023-05-22 23:39:04 547

原创 【SpringBoot】七:Web服务---Servlet Filter Listener

WebFilter 创建 Filter 对象,使用方式同@WebServle。(3)随便发起一次请求访问。(1)编写servlet。

2023-05-22 16:37:37 513

原创 【SpringBoot】六:Web服务---SpringMVC---模型,视图

model 用来传递数据,从控制层直接返回数据给前端,配置jsp,模板技术能够展示model里的数据。ResponseEntity 包含 HttpStatus Code 和 应答数据的结合体。(0)application.properties 中默认 thymeleaf设置。使用Thymeleaf 视图技术代替jsp ,可以编写页面,排列数据。Map 作为返回值是数据,能够自动转为 json。(3)访问hello.html。

2023-05-21 22:16:54 51

原创 【SpringBoot】五:Web服务---SpringMVC---控制器

(1)什么是控制器?控制器是一种由Spring 管理的 Bean 对象,赋予角色是“控制器”。作用是处理请求,接收浏览器发送过来的参数,将数据和视图应答给浏览器或者客户端 app。控制器是一个普通的 Bean,使用@Controller 或者@RestController 注释。@Controller 被声明为@Component。所以它就是一个 Bean 对象。(2)如何创建控制器在java类上加入@Controller或者@RestController。

2023-05-19 19:07:54 2500 2

原创 【SpringBoot】四:Web服务---构建Web应用

Spring Boot 可以创建两种类型的 Web 应用。

2023-05-19 16:36:53 92

原创 【SpringBoot】三:访问数据库

(1)execute 方法:可以用于执行任何 SQL 语句,常用来执行 DDL 语句。(2)update、batchUpdate 方法:用于执行新增、修改与删除等语句。(3)query 和 queryForXXX 方法:用于执行查询相关的语句。(4)call 方法:用于执行数据库存储过程和函数相关的语句。运行springboot,初始化数据库脚本。JdbcTemplate的方法。之后不再初始化数据库脚本。

2023-05-17 20:59:02 688

原创 【SpringBoot】二:自动配置

从类路径中,搜索相关的jar,根据jar的内容,尝试创建所需的对象,如果有mybatis.jar,尝试创建DataSource(根据配置文件中的url, username, password)连接数据库,还需要创建SqlSessionFactory, Dao接口的代理对象。例如,如果你添加了Mysql依赖,而且你没有手动配置任何DataSource Bean,那么SpringBoot就会自动配置内存数据库。Spring Boot的自动装配机制会试图根据你所添加的依赖来自动配置你的Spring应用程序。

2023-05-16 18:45:13 463

原创 【杂记】Rest风格

Rest是一种软件架构的风格。英文名称:REpresentational State Transfer(表现层状态转移)加上主语:Resource Representational State Transfer每一个URI代表一种资源;客户端和服务器之间,传递这种资源的某种表现层;客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"。

2023-05-15 18:09:08 499

原创 【UML】

接口与其实现类是一种“like-a”关系,即接口与实现类的关系只是实现了定义的行为,并无本质上的联系(契约关系,关系不是很紧密)。例如:空调像制冷机,但不能说空调是制冷机,因为空调还有制热功能,空调本质上不能说是制冷机,只能说它又制冷的功能。抽象类与其派生类是一种“is-a”关系,即父类和派生子类在概念上的本质是相同的(父子关系,关系紧密)。组合关系看做一种特殊的聚合关系,整体的生命周期决定部分的生命周期,部分离开整体不能存活。时序图描述方法的调用过程,程序的执行流程,方法的返回值情况。

2023-05-09 21:52:48 567

原创 【设计模式】七大设计原则--------迪米特法则(得墨忒耳定律)(最少知识定律)

得墨忒耳,是希腊神话的农业女神。得墨忒耳定律主要内容为:(1)每个单元对于其他的单元只能拥有有限的知识:只是与当前单元紧密联系的单元;(2)每个单元只能和它的朋友交谈:不能和陌生单元交谈;(3)只和自己直接的朋友交谈。

2023-05-08 17:18:29 198

原创 【设计模式】七大设计原则--------开闭原则 合成复用原则

(3)当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改软件的代码来实现变化。(1)软件中的对象(类,模块,函数等等)应该对于扩展是开放的,但是对于修改是封闭的。(2)它是编程中最重要,最基础的设计原则。尽量使用合成/聚合方式,而不。

2023-05-08 17:18:21 50

空空如也

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

TA关注的人

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