自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(145)
  • 资源 (1)
  • 收藏
  • 关注

原创 java多态练习题(超混乱版)

对于多态类型的A a2 = new B();对于a2的类型还是要看左边,如果方法没被重写就可以直接使用A类的方法,如果方法被重写了就去找子类的方法。

2023-06-14 17:47:33 367

原创 springboot整合knife4j

我这里配置的端口号是8800,所以要访问localhost:8800/doc.html,访问路径是localhost:端口号/doc.html。个人感觉加上knife4j之后,调式接口变得方便了起来,需要什么参数直接就写好了,只需要填值就可以了。当想要执行某个方法时,点击调试,需要的参数已经都写好了,可以直接写了。使用@ApiOperation注解编写接口说明。然后编写knife4j的配置信息。首先导入knife4j的依赖。

2023-05-21 19:57:09 437 1

原创 golang第一个简单项目实战+源码(gin+gorm)

因为前端页面只传过来了用户的id,所以这里就按照id删除了,也不需要判断用户是否存在,因为能点击删除键的用户都是从数据库里列出来的,是一定存在的。点击file->settings->GOPATH,把当前项目加进GOPATH目录中,然后点击apply,因为这里是id不能被更新,然后就是根据id查用户,将用户名或者密码啥的改了。这里没有考虑到用户名是否重复,其实应该考虑一下,但是这里就不做演示了。然后点击运行后就可以创建表了,后面暂时也就不需要这个创建表的方法了。访问localhost:9090/index。

2023-05-16 20:21:36 984

原创 dubbo基本原理实现

dubbo的底层其实就是rpc框架,也就是一台服务器要去调用另一台服务器的方法这里是使用了两个tomcat充当了两个服务器总目录结构如下首先看 被调用的服务器。

2023-05-15 21:41:17 99

原创 将项目导入到github全过程

这里就可以看见代码的,这次没有是因为在推送的时候使用了使用了master分支,git默认的主分支是main分支,所以他就会新建一个master分支,这时我们需要将master分支合并到main分支。我这里要上传IMProject文件夹,所以就在这个文件夹内部,右键鼠标,然后点击git bash here。再看github,因为我中途出错了,所以重新提交了下,这里是second commit。由于我的远程库是空的,所以直接把本地库的内容推送到远程就可以了。这里推荐使用main分支,原因看到后面就知道了。

2023-05-11 09:19:56 1161

原创 Gorm操作数据库

Name string `gorm:"default:'dazai'"` //设置name默认值,如果创建对象时没有传name,那么就会给赋默认值 Age int64 }

2023-04-23 22:20:04 458

原创 goland导入git包出错

因为初学go,所以对一些东西不了解,每次要导入git上的某些包的时候就会出错。即可,有时候会出现一些别的问题,有可能是电脑的原因,可以多试几次。

2023-04-23 13:49:54 284

原创 gin定义中间件

在这里使用了r.Use表示全局注册这个中间件,这样后面的GET方法在调用方法之前都会执行这个中间件来计算函数执行的时间,如果有多个中间件,都在Use函数里面申请即可。例如这个中间件就是用来计算执行某个函数所需要耗费的时间。这样就表示单独为后面的函数注册了m3中间件。如果想为某个函数单独注册中间件。

2023-04-23 10:19:31 59

原创 gin文件上传

解析模板等上传好图片之后,就会执行upload方法,然后upload方法对上传好的图片进行一系列操作

2023-04-22 21:09:18 101

原创 gin参数绑定

当我们有一个结构体需要来接收传递过来的参数时,可以使用参数绑定直接获取到字段对应的值比如我们现在需要获取路径中的Username和Password,只需要使用ShouldBind()方法,这个方法会自动寻找字段来进行绑定,针对于不同请求方式有以下几种方法。

2023-04-22 16:54:05 168

原创 gin获取url路径参数

使用来表示参数的名称,例如如果输入localhost:9090/user/太宰治/18,这样的话,那么name=太宰治,age=18,通过c.Param就可以得到对应的值但是要注意上边两个GET的路径,防止它们出现冲突,比如如果没有/user和/blog就无法分辨出来到底是调用的上边还是下面。

2023-04-22 16:01:14 415

原创 gin获取form表单提交的参数

点击登录后提交表单,就相当于是以post方式访问localhost:9090/login1,然后结果为。输入localhost:9090/login后,会得到login.html渲染的表单。

2023-04-22 14:39:11 261

原创 gin获取query string参数

根据网址中的query来获取到后面的值并且显示出来。

2023-04-21 22:40:47 179

原创 gin框架返回json

访问localhost:9090/json,即可以获得data的json字符串,gin.H底层是map[string]interface{},可以用来存放key-value键值对类型。

2023-04-21 22:09:46 266

原创 gin模板自定义函数

index.tmpl文件。

2023-04-21 21:52:17 135

原创 gin框架模板渲染

这里演示的是同时渲染两个模板的,一个模板也是类似的首先看目录结构</</</</</</</</ginDemo.go。

2023-04-21 21:36:41 78

原创 html/template

然后我们现在需要将它以html形式展现出来,那么我们就需要先自定义一个函数用来返回html。如果要渲染的模板内容是一串html语句,如果不加处理,那么显示出来的就是原本字符串的内容。

2023-04-21 15:17:36 132

原创 关于template.ParseFiles()函数后的文件路径问题 && 修改模板引擎标识符

刚开始跟着视频敲,ParseFiles()函数后的路径就是./index.tmpl,表示的是当前目录下的index.tmpl文件,按道理来说没有问题,但是执行后出现错误。这种错误一般多半都是文件路径写错了,然后就尝试写全文件路径。

2023-04-21 12:12:44 280

原创 go模板继承

当好几个页面的样式都一样,但是内容不一样的话,只需要定义一个根模板,然后让其他模板继承这个根模板,然后自己定义内容即可。

2023-04-14 15:31:47 106

原创 go模板嵌套

DOCTYPE html > < html lang = " zh-CN " > < head > < title > tmpl test </ title > </ head > < body > < h1 > 测试嵌套tempalte语法 </ h1 > < hr > {{/*嵌套了另外一个单独的模板文件*/}}{{template "ul.tmpl"}} < hr > {{/*嵌套了另外一个define定义的模板*/}}

2023-04-13 22:13:42 159

原创 Go模板自定义函数

要编写一个html脚本,这里的名字叫做f.tmpl,用来定义模板DOCTYPE html > < html lang = " zh-CN " > < head > < title > 自定义模板函数 </ title > </ head > < body > {{ kua ( . )}} </ body > </ html >

2023-04-13 10:34:04 162

原创 使用kafka实现秒杀消息队列

用kafka实现秒杀消息队列

2022-07-20 12:11:03 985

原创 利用redis实现分布式锁(单个redis)

基于单个redis实现分布式锁

2022-07-19 12:24:00 1095

原创 kafka消费报错coordinator unavailable.Rediscovery will be attempt redisCovery

kafka消费报错coordinator unavailable.Rediscovery will be attempt redisCovery

2022-07-18 15:56:35 2635 1

原创 Redo log

redo log原理

2022-06-19 13:52:03 185

原创 MVCC多版本并发控制

MVCC

2022-06-19 13:39:11 125

原创 INNODB索引为什么采用B+树

innodb索引为什么采用B+树

2022-06-18 23:07:18 251

原创 undo log版本链

undo log版本链

2022-06-18 14:06:36 853

原创 try-catch finally执行顺序的例题

try-catch finally的执行顺序

2022-06-12 19:53:12 133

原创 Vector底层实现(常用方法)

Vector底层

2022-06-05 19:28:36 435

原创 LinkedList底层源码的简单实现(常用方法)

LinkedList底层源码

2022-06-05 15:09:02 130

原创 简单实现ArrayList底层(仅常用方法,注释详细)

简单实现ArrayList的底层

2022-06-03 22:31:06 76

原创 java 访问网址并将返回结果的json数组转换为List<String>

首先导入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.1.24</version> </dependency>要返回的数据为{"code": 200,"msg":

2022-05-17 19:55:56 924

原创 力扣347 前K个高频元素

    本题是让求前k个高频元素,容易想到按照频率的优先级排序,然后找到前k个。可以使用堆,我们只需要堆的大小是k即可,那这个堆是大根堆还是小根堆呢?如果是大根堆,队首是最大的,如果一个元素出现的次数比队首小,但是比队尾大,这就不好比较;如果是小根堆,队首是最小的,如果一个元素出现的频率比这个队首大,那就说明队首不满足出现次数在前K个要求,所以移出队首,将这个元素加入队列中。所以我们需要按照出现次数,建立一个小根堆。    .

2022-05-08 14:07:01 178

原创 力扣5 最长回文子串

      拿到字符串中的某个字符,我们肯定是需要遍历各个长度的,比如例一babad,我们用i来指向当前字符b,然后用j指向选取的字符串的最后一个,那么j如何确定?ba,bab,baba,babad,我们可以看到j就是i+L,通过L的逐渐增加,j也是逐渐增加。所以[i,j]是我们判断的边界。      那么如何能判断字符串从i到j是否是回文字符串呢,回文字符串就算是除去最两边的字符,它.

2022-05-03 12:09:14 151

原创 zookeeper的安装,配置,启动以及启动成功但是进程中没有的解决方案

    首先需要先下载zookeeper,我这里附上了百度网盘链接,可直接用zookeeper-3.7.0,提取码为6657    最好是下载安装包以后,将安装包放进xshell中,然后在xshell中进行解压,不要将它解压之后放进xshell中,否则有可能会出现执行文件无法执行的情况。    然后在放置安装包的同一目录下创建一个文件夹,这里我使用了zkData,用来存储数据,因为配

2022-04-28 20:11:47 6063 3

原创 力扣287 寻找重复数

   本题使用了抽屉算法,抽屉算法又名鸽巢原理,如果n+1个物体被放进n个盒子,那么至少有一个盒子包含两个或更多的物体。   比如有8(1-7)个数字要在这些个抽屉里放,那么这个抽屉里会有一个重复   首先,mid=(left+right)/2=4,本来按道理来说,小于等于4的元素个数应该就是4,但是现在发现小于等于4的一共有5个>mid,说明在[0,left-mid]中会出现重复元素。同理,如果小于等.

2022-04-13 20:16:51 210

原创 力扣954 二倍数对数组

     本道题题意比较好理解,就是在数组中找当前数的二倍或者一半出现,如果一个都没有,那么就返回false,这个时候我们就要来分析,是找二倍还是找一半,如果当前数存在二倍和一半,是选择二倍还是选择一半?     假设当前的数是4,数组中有2,8,16,我们可以看到,4的二倍,一半都在数组中,如果我们选择了2,刚好2,4凑一对,8 16凑一对,如果我们选择了8,那么只有4,8凑一对,剩下的2,16就落下..

2022-04-02 20:24:01 239

原创 力扣1004 最大连续1的个数III 2024考试的最大困难度(滑动窗口)

     本道题就是一个滑动窗口题,但是什么时候扩大窗口,什么时候收缩窗口?     根据题目意思就是,如果这个窗口里0的数目少于k的数目,滑动窗口就可以扩大,然后等到滑动窗口中0的数目等于k的时候,这个时候就可以来更新res,来找长度最大的,然后当滑动窗口中的0的数目大于k的时候,就要开始缩小窗口,直到窗口里面的0的个数小于等于k的时候,才停止缩小窗口class Solution { publ.

2022-03-29 11:17:51 259

原创 Cookie,Session,Token的区别

Cookie的工作过程         浏览器发起HTTP请求,服务器会进行cookie设置,也就是Set-Cookie,cookie里面有名和值两个属性,服务器会把名和值属性里的内容都填充完整,然后发送给浏览器,浏览器将cookie保存起来,这样浏览器以后发送的每一个请求都会自动赋上这个cookie.         Coo

2022-03-21 19:15:33 127

Java 复习汇总.md

Java 复习汇总.md

2021-11-18

空空如也

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

TA关注的人

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