自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

驼君的小小博客园

咸鱼驼君,在线求带

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

原创 编译原理期末复习例题

2022-02-11 14:21:49 432

原创 MySQL配置主从复制遇到Access denied for user ‘testdb‘@‘localhost‘ (using password: YES”)问题

再配置MySQL主从复制时,本想通过指令GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY '123456';在主机MySQL里执行授权命令,但是却遇到了错误原因:登录用户权限不够解决办法:使用root用户登录再次执行即可...

2020-07-31 11:50:04 1184

原创 LeetCode刷题记录——队列、栈

20. 有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: true示例 3:输入: "(]"输出: fals...

2020-05-05 09:54:48 319

原创 LeetCode刷题记录——链表

206. 反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL在遍历列表时,将当前节点的 next 指针改为指向前一个元素。由于节点没有引用其上一个节点,因此必须事先存储其前一个元素。在更改引用之前,还需要另一个指针来存储下一个节点。不要忘记在最后返回新的头...

2020-05-03 10:30:34 200

原创 SQL语句中EXISTS的使用详解及示例

EXISTS怎么用?EXISTS和NOT EXISTS子句的返回值是一个BOOL值。 EXISTS内部有一个子查询语句(SELECT … FROM…), 我将其称为EXIST的内查询语句。其内查询语句返回一个结果集。EXISTS子句根据其内查询语句的结果集空或者非空,返回一个布尔值。一种通俗的可以理解为:将外查询表的每一行,代入内查询作为检验,如果内查询返回的结果取非空值,则EXISTS子句返...

2020-04-07 15:47:30 44681 13

原创 MySQL索引优化指南

索引对于MySQL来说是一个非常重要的东西,在特定情况下能有效地提升MySQL的查询效率,但如果使用不当则会降低效率。所以我在这里记录一下这几天学习的MySQL索引优化的知识使用索引有几个需要非常注意的点1、全值匹配2、最佳左前缀法则3、不在索引列上做任何操作(计算、函数(自动或手动)类型转换)4、存储引擎不能使用索引中范围条件右边的列5、尽量使用覆盖索引(只访问索引的查询,也就是索引...

2020-04-07 11:35:48 862 2

原创 Redis安装踩坑大全(不管你踩没踩过,反正我全踩了)

写在最前:服务器挖矿biss最近开始学redis了,在安装、配置、使用过程中遇到了不少的坑,在这里记录并分享一下解决办法Redis安装通过官网下载Redis的压缩包 https://redis.io/downloadredis目前的最新版本是5.X,我下载的是4.0.14版本的,如果有需要4.0.14版本的redis压缩包可以在评论中留言在安装redis之前需要先安装gcc,目...

2020-03-28 10:52:24 2710

原创 【JDK1.8】一文看懂HashMap

HashMap集合简介HashMap 基于哈希表的Map接口实现,是以 key-value 存储形式存在,即主要用来存放键值对。HashMap 的实现是不同步的,这意味着他不是线程安全的。他的 key、value 都可以为 null。 此外,HashMap 中的映射不是有序的。JDK1.8之前 HashMap 由 数组+链表 组成,数组是 HashMap 的主体,链表则是主要为了解决哈希冲突(...

2020-03-18 16:21:53 833

原创 Error starting Tomcat context. Exception: org.springframework.beans.factory.BeanCreationException问题

今天写SpringBoot项目的时候突然SpringBoot自带的tomcat启动不了了一开始我还以为是数据库的url出了问题,但修改之后还是报这个错。突然我想起来之前手贱不小心从这个项目里建了两个模块,于是我就去查看了pom文件发现这里packaging变成了pom,删掉这一行即可...

2020-03-01 15:17:03 14710 5

原创 Shiro学习笔记(六)——SpringBoot整合shiro

在spring中整合shiro可以通过在xml文件中进行配置,但是在SpringBoot中,我们可以通过@Configuration注解写一个配置类来对shiro进行配置Shiro配置文件@Configuration@EnableConfigurationProperties(ShiroProperties.class)public class ShiroAutoConfiguration...

2020-02-07 22:55:55 543

原创 Shiro学习笔记(五)——shiro实现加密及加密认证

散列算法概述散列算法一般用于生成数据的摘要信息,是一种不可逆的算法,一般适合存储密码之类的数据,常见的散列算法如MD5、SHA等。一般进行散列时最好提供一个salt(盐)比如 加密密码“admin”,产生的散列值是“21232f297a57a5a743894a0e4a801fc3”,可以到一 些md5 解密网站很容易的通过散列值得到密码“admin”,即如果直接对密码进行散列相对来说破解更容易...

2020-02-07 22:19:24 545

原创 Shiro学习笔记(四)——shiro实现授权

授权概述授权,也叫访问控制,即在应用中控制谁能访问哪些资源(如访问页面/编辑数据/页面操作等)。在授权中需了解的几个关键对象:主体(Subject)、资源(Resource)、权限(Permission)、 角色(Role)主体主体,即访问应用的用户,在Shiro中使用Subject代表该用户。用户只有授权后才允许访问相应的资源。资源在应用中用户可以访问的任何东西,比如访问JS...

2020-02-07 21:34:53 365

原创 Shiro学习笔记(三)——shiro实现认证

基本概念身份验证即在应用中谁能证明他就是他本人。一般提供如他们的身份ID 一些标识信息来 表明他就是他本人,如提供身份证,用户名/密码来证明。在 shiro 中,用户需要提供 principals 和 credentials 给shiro,从而应用能验证用户身份principals身份,即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。一个主体可以有多个principal...

2020-02-07 21:00:45 348

原创 Shiro学习笔记(二)——shiro核心配置文件.ini文件

Shiro 使用时可以连接数据库,也可以不连接数据库如果不连接数据库,可以在shiro.ini中配置静态数据Shrio.ini文件的组成部分Shiro使用的是.ini配置文件,也查键值对,可以进行分类配置,以;或#开头表示注释[main] :定义全局变量(1)内置securityManager对象.(2)操作内置对象时,在[main]里面写东西[main]securityMan...

2020-02-07 20:07:44 387

原创 Shiro学习笔记(一)——shiro概述

什么是shiroApache Shiro 是Java 的一个安全框架。Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE 环境,也可以用在JavaEE 环境。Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与Web 集成、缓存等。主要功能:身份验证、授权、加密、会话管理shiro相关单词authentication 身份验证、认证authorization...

2020-02-07 19:39:22 168

原创 SpringBoot中Controller返回html页面问题

在 application.yml 和 application.properties 里面什么配置都没有的情况下,正常来说通过 http://localhost:8080/fuck 路径是可以访问到fuck.html这个网页的,但我今天突然报错404,找不到fuck这个页面。(请忽略我的文件名和路径)查了一下,原来是因为我只加了web的依赖而没加 thymeleaf模板引擎 的依赖,加上之后就...

2020-02-07 16:22:57 7449 5

原创 从零开始的安装RabbitMQ的生活

开坑RabbitMQ啦,但是环境配置又是个大难题,于是经过我一天的钻研,总算是搞好了!在这里记录一下,能帮到你们那就是更好了。1、安装我用的虚拟机是Ubuntu18,因为RabbitMQ是需要erlang语言的支持,所以要先安装erlangsudo apt-get install erlang-nox但是在安装的过程中可能会碰到这个问题这是一个无法获得锁的情况,详情可以参考这篇博客解决...

2020-01-13 20:44:13 196

原创 Java并行程序设计模式——Guarded Suspension模式

问题引出假如说你的服务器在很短时间内承受了大量的客户端请求(如果这是你朋友用Python搞你的话请好好打他一顿),客户端请求量可能超过了服务器本身的即时处理量,而服务端程序又不能丢弃任何一个客户请求,应该怎么办?答:最佳处理方案莫过于让客户端排队请求进行排队,由服务端程序一个个处理。这样既保证了所有的客户端请求均不丢失,同时也避免了服务器由于同时处理太多的请求而崩溃。这就是Guarded Su...

2019-12-02 22:15:24 172

原创 Java并行程序设计模式——Master-Worker模式

Master-Worker模式是常用并行模式之一,他的核心思想是==系统由两类进程协作工作:Master进程和Worker进程。Master进程负责接收和分配任务,Worker进程负责处理子任务。==当各个Worker进程将子任务处理完成后,将结果集返回给Master进程,由Master进程做归纳和汇总,从而得到系统的最终结果好处能够将一个大任务分解成若干个小任务,并行执行,从而提高系统的吞...

2019-12-01 10:46:37 465

原创 Java并行程序设计模式——Future模式

问题引出现在我们想要炒一道菜,但是我们没有厨具和菜,现在我们从网上订购了一套厨具,但在厨具送来的期间,我们不必一直等到厨具到来,而是可以先去买菜,然后厨具到了之后直接开始炒菜这就是Future模式,在程序设计中,当某一段程序提交了一个请求,期望得到一个答复。但非常不幸的是,服务程序对这个请求的处理可能很慢,比如这个请求可能是通过互联网、HTTP或者Web Service等并不太高效的方式调用的...

2019-11-30 15:21:23 433

原创 将SpringBoot项目配置到外部服务器上

事情起因:我用SpringBoot写了一个博客项目,想挂到某小霸王服务器上,但是怎么挂也挂不上去,最后导致了服务器到期了我还没挂上去,人间悲剧于是向大佬请教了一下,得到了一份详细的教程放到服务器上时要使用服务器上的tomcat,也就是外部服务器,但是SpringBoot是使用的内置服务器,这时候就需要配置了首先我们需要在pom文件中添加依赖<!--使用外部tomcat-->...

2019-11-24 16:39:29 864

原创 常用优化组件——对象复用—"池"

对象池化,是目前非常常用的一种系统优化技术。它的核心思想是:如果一个类被频繁请求使用,那么不必每次都生成一个实例,可以将这个类的一些实例保存在一个"池"中,待需要使用的时候直接从池中获取。这个"池"就称为对象池在实现细节上,它可能是一个数组,一个链表或者任何集合类对象池的使用非常广泛,其中最熟悉的,就是线程池和数据库连接池线程池线程池中保存着可以被重用的线程对象,当有任务被提交到线程池中,...

2019-11-21 18:54:10 333

原创 常用优化组件——缓冲

缓冲区是一块特定的内存区域,开辟缓冲区的目的是通过缓存来缓解应用程序上下层之间的性能差异,提高系统性能漏斗的初始口径很大,并且拥有一定的容量,因此茶壶中的水可以先倒入漏斗中,就像内存中的数据先写入一块缓冲区。只要漏斗够大,茶壶里的水很快就能倒完。至此,上层系统完成工作,可以去处理其他业务逻辑。而此时,大部分水在漏斗中,可以有下层系统慢慢处理,直至水完全进入瓶中,漏斗(缓冲区)被清空基于这种结...

2019-11-21 16:13:26 287

原创 Java设计模式——Value Object(值对象)模式

问题引出当客户端需要获取一个订单(Order)的信息,假设一个订单由客户名、商品名和数量构成,那么客户端需要与服务端交互三次,依次取得这些信息这样设计是一种可行的方案,但存在两个严重的问题(出大问题 )对于获取一个订单而言,这种操作模式过于繁琐,且不具备较好的可维护性前后累计进行了三次客户端与服务端的通讯,性能成本较高解决方法:Value Object(值对象)模式Val...

2019-11-20 19:57:18 2520

原创 Java设计模式——观察者模式

问题引出气象站需要实时播报天气变化情况,需要我们帮助他设计一个方案解决这个问题普通方法设计一个WeatherData类,里面包含天气的各种属性,同时气象站实时监控天气,通过定时器每隔一段时间检测一次天气是否变化问题:这样设计的话,需要单独开启一个线程,不停地监听对象的状态,如果在一个负载的系统中,可能会因此开启很多线程来实现这一功能,这将使系统的性能产生额外的负担解决方案:通过天气类想...

2019-11-19 21:03:41 185

原创 Java设计模式——装饰者模式

问题引出如果我们想喝一杯咖啡,而咖啡又分为意大利浓咖啡(Espresso),美式咖啡,无因咖啡,同时又有牛奶、豆浆(别问我为什么加豆浆,加就对了)、巧克力等配料,所以我们的咖啡就有很多种选择,这时程序应该怎么设计?很蠢的方法:Drink是一个抽象类,表示饮料des是对咖啡的描述,比如说咖啡的名字cost()方法时计算费用咖啡种类+配料,这个组合有很多,每一个组合为一个类...

2019-11-18 20:56:32 168

原创 Java设计模式——单例模式

简介所谓单例模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得对象实例的方法(静态方法)单例模式注意事项和使用说明单例模式保证了系统内存中只存在一个对象,节省了系统资源,对一些需要频繁创建销毁的对象,使用单例模式可以提高系统性能实例化一个单例类时,要调用获取对象的方法而不是new单例模式使用场景:需要频繁创建和销毁的对象、创建...

2019-11-17 11:45:48 94

原创 Java设计模式——代理模式

代理模式是一种非常常见的设计模式,他使用代理对象完成用户请求,屏蔽用户对真是对象的访问。就如同现实中的代理一样,代理人被授权执行当事人的一些事宜,而无需当事人出面,从第三方角度来看,似乎当事人不存在,因为他只和代理人通信,而事实上,代理人是要有当事人的授权,并且在核心问题上还需要请示当事人。介绍通过代理对象访问目标对象可以在目标对象实现的基础上增强额外的功能操作,即扩展目标对象的功能...

2019-11-16 18:24:28 98

原创 Java设计模式——享元模式

本咸鱼开始修炼内功了,加油,奥利给!!!问题引出如果我们做一个小型外包网站项目,有的客户想以新闻的形式发布,有的客户想以博客的形式发布,有的客户想以微信公众号的形式发布,我们该怎么办?传统解决方案直接复制一份原网站,然后根据不同的需求进行修改,同时给每个网站租用一个空间享元模式简介享元模式(Flyweight Pattern)也称蝇量模式享元模式能够解决重复对象的内存浪费...

2019-11-14 19:54:34 139

原创 从零开始入门Nginx

最近在腾讯云租了个小霸王服务器,本来想把自己写的博客传上去,奈何我太菜搞不了,所以为了不让服务器发霉 ,正好学一下Nginx一、简介1、反向代理(1)正向代理在客户端(浏览器)配置代理服务器,通过代理服务器进行互联网访问。(2)反向代理2、负载均衡(1)单一服务器缺点:随着信息增长、访问量和数据量的提升以及系统业务的复杂度增加,会造成服务器响应客户端的请求缓慢,并发量大时可能...

2019-11-04 19:13:18 436 1

原创 JPA中使用Sort排序时遇到的问题

org.springframework.data.jpa.repository.JpaRepository中可以使用Sort定义排序规则,但在使用时我发现了一些小问题正常基于Pageable中的Sort字段排序Sort sort = new Sort(Direction.ASC, "seqNum");Pageable pageable = new PageRequest(0, size, s...

2019-10-24 00:40:42 6515 26

原创 SpringBoot学习总结——SpringBoot整合

一、SpringBoot数据访问1、JDBC步骤:创建一个SpringBoot工程,选择以下模块:Web、MySQL、JDBC配置数据库连接信息注:根据不同版本加载不同数据库驱动在测试类中测试配置连接池参数问题:添加上面的参数后并不生效,因为SpringBoot默认并不支持这些参数(DataSourceProperties类中没有这些参数)解决:自定义数据源...

2019-10-13 14:06:36 295

原创 SpringBoot学习总结——SpringBoot进阶

一、热部署使用SpringBoot提供的devtools实现热部署原理:实现监控classpath下文件的变化,如果发生变化则自动重启服务器配置:添加devtools依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot...

2019-10-12 15:36:06 500

原创 SpringBoot学习总结——Web开发

一、Web开发1.简介使用SpringBoot开发Web应用的步骤:创建SpringBoot应用,选择需要的starter在配置文件中去指定必要的少量配置编写业务代码Web开发的自动配置类:WebMvcAutoConfiguration2.静态资源的映射静态资源的位置查看WebMvcAutoConfiguration——>addResourceHandlers()——&...

2019-10-10 16:38:14 763

原创 SpringBoot学习总结——配置文件

一、YAML用法1、简介springboot默认有两种配置文件application.propertiesapplication.yml(建议使用)文件名固定,存放在classpath:/或classpath:/config/目录下可以通过配置文件修改springboot的默认配置例如 server.servlet.context-path=/springboot 设置访问路径se...

2019-10-08 21:55:52 235

原创 SpringBoot学习总结——HelloWorld程序分析

最近开始学ssm框架才知道了框架的方便之处,然后有人告诉我springboot是ssm框架的升级版,所以准备学一下,在这里记录一下学习的历程和碰到的坑使用idea可以快速创建springboot项目选择我们需要的模块;向导会联网创建Spring Boot项目;先看一下pom文件中为我们自动生成的依赖父项目ctrl点击spring-boot-starter-parent<parent&...

2019-09-28 23:56:46 174

原创 MySql小异常 —— Duplicate entry '1' for key 'PRIMARY'

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry ‘1’ for key 'PRIMARY’对于英语不好的我还需要百度翻译一下,意思是键“primary”的重复条目“1”,也就是主键重复在进行数据库保存操作时碰到了这个异常,一开始检查来检查去找不到毛病,最后发现...

2019-08-12 11:48:38 49165 5

原创 咸鱼翻身之路——迷宫问题

接上篇博客打完八皇后之后,我走着六亲不认的步子准备回去领技能点(不充钱有技能点你也是不会变强的),但在这时,我突然发现我迷路了。。。完了啊,没大佬和队友帮我我可咋出去啊,愁死我了,但幻想了一下我以后翻身当大佬的情形,我:不行,我要出去,我还没翻身呢,不能凉在这个鬼地方!!于是我就好好研究了一下走出迷宫的方法迷宫问题描述定义一个二维数组:int maze[5][5] = {0, 1, 0...

2018-12-16 00:05:58 568 2

原创 咸鱼翻身之路——回溯法手撸八皇后

自从出了洛谷新手村,本咸鱼就天天无(混)所(吃)事(等)事(死),直到有一天我遇到了试炼场的NPC,他告诉我有一系列的挑战任务可供我完成,回报竟然是DFS和BFS的技能点!!!技能点啊,我滴乖乖,这谁能拒绝,于是我带着从新手村出来的装备(啊哈算法)就冲进试炼场了DFS关第一层大BOSS:八皇后BOSS介绍:检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一...

2018-12-14 18:56:45 298

原创 咸鱼翻身之路——我与string函数的爱恨情仇

啊哈,本咸鱼又来啦,最近开始正式的学c++了,于是为了纪念这个伟大的日子,就聊聊我和string函数的那些事吧我们的第一次相遇是在c的头文件里,那时候我就感觉,哇,string真是个好东西,之后在某个机缘巧合下,我从大佬那里知道了c++里的string函数(没错,我抱大佬大腿抱的很紧的),但当时只是浅浅的了解了一下。但现在不同了,我已经 “ 深入 ” 的了解过它了,现在我就来介绍一下它stri...

2018-12-14 00:08:18 536

空空如也

空空如也

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

TA关注的人

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