- 博客(77)
- 资源 (12)
- 收藏
- 关注
原创 redis+mysql
1、redis+mysql配合使用时,发现redis似乎没生效,debug过程中,redis中也查不到数据?这有可能是因为redis配置的数据不是当前访问的mysqlspring.redis.database=0 //使用0号数据库redis的数据库个数是可以配置的,默认为16个,见redis.windows.conf/redis.conf的databases 16。对应数据库的索引值为0 - (databases -1),即16个数据库,索引值为0-15。默认存储的数据库为0。不同索
2022-03-23 21:37:05
2227
原创 linux环境下安装spug
Docker安装依赖环境Docker 现代浏览器安装步骤以下安装步骤使用redhat 操作系统。1. 安装dockerrpm包安装docker服务将docker 的安装包及其依赖包上传到指定目录里:// 强制安装docker服务[root@localhost rpm安装包]# rpm -ivh *.rpm --force --nodeps//--nodeps 安装时不检查依赖关系//--force 强制安装// 开启服务[root@localhost ...
2022-02-14 16:33:00
1177
原创 SpringBoot+MySql
1、pom文件引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency> <groupId>mysql</groupId> <artifactId>
2022-02-03 22:14:16
1003
原创 组播、广播、单播
组播(Multicast)传输:在发送者和每一接收者之间实现点对多点网络连接。如果一台发送者同时给多个的接收者传输相同的数据,也只需复制一份的相同数据包。它提高了数据传送效率。减少了骨干网络出现拥塞的可能性。单播、组播、广播的差别可以看下图:单播(unicast): 是指封包在计算机网络的传输中,目的地址为单一目标的一种传输方式。它是现今网络应用最为广泛,通常所使用的网络协议或服务大多采用单播传输,例如一切基于TCP的协议。 组播(multicast): 也叫多播, 多点广播或群播。
2022-01-12 08:58:46
3275
转载 java多线程排查
如何查看是否有Java线程死锁?下面介绍两种方法。一.Jconsole Jconsole是JDK自带的图形化界面工具,使用JDK给我们的的工具JConsole,可以通过打开cmd然后输入jconsole打开。 连接到需要查看的进程。 打开线程选项卡,然后点击左下角的“检测死锁” 。 jconsole就会给我们检测出该线程中造成死锁的线程,点击选中即可查看详情:从上图中我们可以看出: ...
2021-12-16 17:45:00
869
原创 redis
1、日志文件redo log, binlog 与 undo logredo log是属于innoDB层面,binlog属于MySQL Server层面的,这样在数据库用别的存储引擎时可以达到一致性的要求。redo log是物理日志,记录该数据页更新的内容;binlog是逻辑日志,记录的是这个更新语句的原始逻辑redo log是循环写,日志空间大小固定;binlog是追加写,是指一份写到一定大小的时候会更换下一个文件,不会覆盖。binlog可以作为恢复数据使用,主从复制搭建,redo lo.
2021-12-15 21:58:43
782
原创 HTTPS(ssl)
一、SSL四次握手实现安全传输数据1、SSL概述:(Secure Socket Layer)安全套接字层,通过一种机制在互联网上提供密钥传输。其主要目标是保证两个应用间通信数据的保密性和可靠性,可在服务器端和用户端同时支持的一种加密算法。目前主流版本SSLV2、SSLV3(常用)。注:SSL作用,可以让你在一个不安全的公网环境中,安全传输你的密钥。SSL四次握手安全传输流程如下:C(client客户端) ------------------------------> S(server服
2021-12-15 21:56:40
1976
原创 日志(Logger)
Log一共分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL1. 一个最基本的例子使用Logging框架写Log基本上就三个步骤引入loggerg类和logger工厂类 声明logger 记录日志下面看一个例子//1.引入slf4j接口的Logger和LoggerFactoryimportorg.slf4j.Logger;importo...
2021-12-15 16:17:41
4133
原创 maven依赖
1、maven依赖本地项目如下图所示,hello-service依赖hello-service-api的包(hello-service-api-0.0.1-SNAPSHOT.jar)解决办法:(1)在hello-service-api工程中terminal界面,#打包执行mvn clean package#将打好的包放在本地maven仓库mvn install(2)在hello-service工程terminal界面,执行mvn clean package即.
2021-12-01 15:46:03
298
原创 mysql(docker)
# docker 中下载 mysqldocker pull mysql#启动docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql -d mysql#进入容器docker exec -it mysql bash#登录mysqlmysql -u root -p //回车输入密码ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysql';#添加远程登录用户,直接用r.
2021-11-24 10:44:34
963
原创 Restful
1、REST请求中哪些是幂等操作GET,PUT,DELETE都是幂等操作,而POST不是,下面来分析一下。GET:请求很好理解,对资源做查询多次,此实现的结果都是一样的。PUT:请求的幂等性可以这样理解,将A修改为B,它第一次请求值变为了B,再进行多次此操作,最终的结果还是B,与第一次执行的结果是一样的,所以PUT是幂等操作。DELETE:DELETE同理,第一次将资源删除后,后面多次进行此删除请求,最终结果是一样的将资源删除掉了。POST:不是幂等操作,因为一次请求添加一份新资源,...
2021-11-19 11:14:19
362
转载 spring Repository
Repository: 是springData 的一个核心接口,它不提供任何方法,开发者需要在自己定义的接口中声明需要的方法 仅仅是一个标识,表明任何继承它的均为仓库接口类,方便Spring自动扫描识别,@Indexedpublic interface Repository<T, ID> {}T :实体类名 ID : 主键类型CrudRepository: 继承 Repository,实现了一组 CRUD 相关的方法 1 2...
2021-11-18 16:54:22
1577
原创 Java应知应会
1、java不支持多继承,只支持单继承(即一个类只能有一个父类)。但是java接口支持多继承,即一个子接口可以有多个父接口。(接口的作用是用来扩展对象的功能,一个子接口继承多个父接口,说明子接口扩展了多个功能,当类实现接口时,类就扩展了相应的功能)...
2021-11-15 09:51:08
512
原创 为什么要按接口+实现类这种模式
简要说明interface和interfaceImpl还有调用者的关系。本来是调用者和类直接耦合了,现在是interface和interfaceImpl建立联系,interface和调用者建立联系,我们旨在减少调用者和类的直接联系,这叫封装,也叫信息隐藏...
2021-11-14 21:39:00
692
原创 docker笔记
docker desktop 启动报错,docker desktop service 错误1068。解决办法:查看windows服务(WIN+R键,进入服务列表,查看Docker Desktop Service的状态,启动如发现提示依赖的组件没有启动,可以查看其依存关系,然后将server启动起来。如果遇到server服务不能启动,则可以将启动类型选择手动,然后再启动server服务。...
2021-11-14 20:22:22
1126
转载 @Autowired和@Resource的区别
作者:苏三说技术链接:https://www.zhihu.com/question/39356740/answer/1907479772来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。@Autowired和@Resouce的区别@Autowired功能虽说非常强大,但是也有些不足之处。比如:比如它跟spring强耦合了,如果换成了JFinal等其他框架,功能就会失效。而@Resource是JSR-250提供的,它是Java标准,绝大部分框架都支持。除此之外.
2021-11-11 10:12:58
313
转载 数据库连接
Java使用JDBC访问数据库的步骤:1、得到数据库驱动程序2、创建数据库连接3、执行SQL语句4、得到结果集5、对结果集做相应的处理(增、删、改、查)6、关闭资源:这里释放的是DB中的资源一个小例子:package cn.itcast.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;pub
2021-11-10 09:55:30
257
转载 MYSQL实现排名函数RANK,DENSE_RANK和ROW_NUMBER
文章目录 1. 排名分类 1.1 区别RANK,DENSE_RANK和ROW_NUMBER 1.2 分组排名 2. 准备数据 3. 不分组排名 3.1 连续排名 3.2 并列跳跃排名 3.3 并列连续排名 4. 分组排名 4.1 分组连续排名 4.2 分组并列跳跃排名 4.3 分组并列连续排名 在MYSQL的最新版本MYSQL8已经支持了排名函数RANK,.
2020-12-06 10:22:42
403
转载 MySQL索引原理及慢查询优化
背景MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。本人从2013年7月份起,一直在美团
2020-12-03 21:48:12
326
转载 BTree和B+Tree详解
发现这篇文章写的很清楚,转载过来学习。B+树索引是B+树在数据库中的一种实现,是最常见也是数据库中使用最为频繁的一种索引。B+树中的B代表平衡(balance),而不是二叉(binary),因为B+树是从最早的平衡二叉树演化而来的。在讲B+树之前必须先了解二叉查找树、平衡二叉树(AVLTree)和平衡多路查找树(B-Tree),B+树即由这些树逐步优化而来。二叉查找树二叉树具有以下性质:左子树的键值小于根的键值,右子树的键值大于根的键值。如下图所示就是一棵二叉查找树,对该二叉树的...
2020-12-01 12:50:46
261
转载 【转】为什么Mongodb索引用B树,而Mysql用B+树?
转自:https://zhuanlan.zhihu.com/p/107228878?utm_source=wechat_session正文这里的Mysql指的是Innodb的存储引擎下的索引结构,其他存储引擎我们暂时不讨论。B树和B+树开头,我们先回忆一下,B树和B+树的结构以及特点,如下所示:B树注意一下B树的两个明显特点树内的每个节点都存储数据 叶子节点之间无指针相邻B+树注意一下B+树的两个明显特点数据只出现在叶子节点 所有叶子节点增...
2020-12-01 11:46:32
521
原创 mysql
1、登录mysql数据库mysql -u 用户名 -p回车后输入密码。2、查看数据库show databases;3、创建数据库create database 数据库名称;4、选择访客特定数据库use database名字;5、查看数据库中所有表show tables;6、查看数据库表结构describe table名。7、向自增ID的表插入记录方法一:insert into 表名(name,date) values(‘张三’,‘‘1970-12-1.
2020-11-29 22:21:59
316
原创 Windows 子系统 debian 设置 root 密码
环境系统:Windows 10子系统:Debian子系统普通用户:tt步骤切换默认登录用户为 root管理员身份运行 PowerShelll 或 cmd,执行后,退出debian config --default-user root以root账号登录,并设置密码管理员身份运行 PowerShelll 或 cmd,执行后,退出debianpasswd root# 设置密码切换默认登录用户回 Shanks管理员身份运行 PowerShelll 或 cmd,执.
2020-11-29 12:58:04
1340
转载 java序列化,看这篇就够了
一、序列化的含义、意义及使用场景二、序列化实现的方式1、Serializable1.1 普通序列化1.2 成员是引用的序列化1.3 同一对象序列化多次的机制1.4 java序列化算法潜在的问题1.5 可选的自定义序列化2、Externalizable:强制自定义序列化3、两种序列化对比三、序列化版本号serialVersionUID四、总结一、序列化的含义、意义及使用场景序列化:将对象写入到IO流中 反序列化:从IO流中恢复对象 意义:序列化机制允许将实现序列化的Java对象转换位字节序列,这些
2020-06-21 09:55:01
265
原创 Leetcode 1117 H2O
题目:现在有两种线程,氢 oxygen 和氧 hydrogen,你的目标是组织这两种线程来产生水分子。存在一个屏障(barrier)使得每个线程必须等候直到一个完整水分子能够被产生出来。氢和氧线程会被分别给予 releaseHydrogen 和 releaseOxygen 方法来允许它们突破屏障。这些线程应该三三成组突破屏障并能立即组合产生一个水分子。你必须保证产生一个水分子所...
2020-04-06 15:54:24
339
原创 LeetCode 1115 交替
题目:我们提供一个类:class FooBar { public void foo() {for (int i = 0; i < n; i++) {print("foo"); } } public void bar() {for (int i = 0; i < n; i++) {print("bar");...
2020-03-29 11:54:05
353
原创 LeetCode 1114 按序打印
题目:我们提供了一个类:public class Foo {public void one() { print("one"); }public void two() { print("two"); }public void three() { print("three"); }}三个不同的线程将会共用一个Foo实例。线程 A 将会调用 one() 方法线程 ...
2020-03-28 15:50:26
321
转载 二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历)
目录二叉树 概念 四种基本的遍历思想 一、前序遍历 二、中序遍历 三、后序遍历 四、层次遍历 五、深度优先遍历 六、后序遍历的简单思路 转载:二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历)【数据结构和算法】全面剖析树的各类遍历方法回到顶部二叉树概念二叉树是一种非常重要的数据结构,非常多其他数据结构都是基于二叉树的基...
2020-03-01 15:35:18
1076
原创 LeetCode 104 二叉树的最大深度
题目:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度3 。思路:递归解法:class Solution {...
2020-02-28 16:54:18
233
原创 LeetCode 101 对称二叉树
题目:思路:解法:class Solution { public boolean isSymmetric(TreeNode root) { return isSame(root,root); } public boolean isSame(TreeNode p,TreeNode q){ if(p=...
2020-02-24 19:51:10
147
原创 LeetCode 100 相同的树
题目:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:...
2020-02-24 15:43:51
127
原创 LeetCode 88 合并2个有序数组
题目:给定两个有序整数数组nums1 和 nums2,将 nums2 合并到nums1中,使得num1 成为一个有序数组。说明:初始化nums1 和 nums2 的元素数量分别为m 和 n。你可以假设nums1有足够的空间(空间大小大于或等于m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3num...
2020-02-23 14:09:36
109
原创 LeetCode 70 爬楼梯
题目:假设你正在爬楼梯。需要 n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2....
2020-02-22 16:56:59
133
原创 LeetCode 69 x的平方根
题目:实现int sqrt(int x)函数。计算并返回x的平方根,其中x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。思路:当 x \ge 2x≥2 时,它...
2020-02-22 14:27:50
235
原创 LeetCode 66 加一
题目:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 432...
2020-02-20 21:23:24
129
原创 LeetCode 58 最后一个单词的长度
题目:给定一个仅包含大小写字母和空格' '的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。如果不存在最后一个单词,请返回 0。说明:一个单词是指仅由字母组成、不包含任何空格的 最大子字符串。示例:输入: "Hello World"输出: 5解法:class Solution { pu...
2020-02-20 16:53:22
129
在centos上安装hadoop
2013-04-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人