自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (11)
  • 问答 (1)
  • 收藏
  • 关注

原创 [msyql]实战:关于回表的一次查询优化实战

回表和索引覆盖的浅解原理简单说明什么是回表和索引覆盖呢?这里和我们使用的mysql中Innodb 引擎中的索引储存方式,可以理解为你构建了一个索引树(非主键)以后。Innodb会生成一个包含了索引的key + 主键 的节点。每次查找数据的时候如果你直接在索引树上可以命中你需要的所有数据,就会直接返回数据。但是如果你像本次分享的sql一样product_no的索引没有order_no中的数据。所以下一步需要回表。回表其实就是直接使用索引中的主键去再一次查询数据。总结与收获。

2022-11-29 22:24:30 1008 1

原创 《代码大全2》阅读记录~第七章-高质量的子程序

一个为特定的目的而编写的可调用的方法或者过程。对于Java来说,这个比较统一就是一个方法。

2022-10-17 15:30:34 826

原创 剑指 Offer 04. 二维数组中的查找 LeetCode Java

剑指 Offer 04. 二维数组中的查找难度中等682收藏分享切换为英文接收动态反馈在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14,

2022-05-30 14:03:29 1144

原创 3. 无重复字符的最长子串 LeetCode java

题目:给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2:输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3:输入: s = "pwwkew" 输出: 3 解释: 因为无重复字符的最长子串是"wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"p...

2022-05-24 20:22:45 112

原创 [编程题]查找描述信息中包含robot的电影对应的分类名称以及电影数目 mysql

链接:https://www.nowcoder.com/questionTerminal/3a303a39cc40489b99a7e1867e6507c5?toCommentId=8971567来源:牛客网[编程题]查找描述信息中包含robot的电影对应的分类名称以及电影数目热度指数:198384 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 film表字段 说明 film_id 电影id title .

2022-05-24 20:19:22 233

原创 设计模式 代理模式 实现静态代理

代理模式是经典设计模式中的结构型模式,定义为:为其他对象提供一种代理以控制对这个对象的访问。静态代理则是代理模式中最简单,性能最好的代理方案,但是缺点也是十分明显,就是一旦接口增加方法,代理和被代理两个类都要直接进行修改。写个例子让大家更好的理解静态代理。/** * 对象接口 * 代理类的定义 * @author matthew * @date 2021-05-06 09:50:34 * */public interface IProxyDao { /** *

2021-05-06 15:25:18 88

原创 1. 两数之和 leetcode java

1. 两数之和难度简单10944收藏分享切换为英文接收动态反馈给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。...

2021-04-28 20:50:06 136

原创 mysql jdbc 生成主键 强制--BigInteger

先直接上源码:@Override public java.sql.ResultSet getGeneratedKeys() throws SQLException { synchronized (checkClosed().getConnectionMutex()) { if (!this.retrieveGeneratedKeys) { throw SQLError.createSQLException(Messages

2021-04-15 10:00:57 356

原创 [牛客网练习] 汇总各个部门当前员工的title类型的分配数目 sql

时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 热度指数:169433算法知识视频讲解 题目描述有一个部门表departments简况如下:有一个,部门员工关系表dept_emp简况如下:有一个职称表titles简况如下:汇总各个部门当前员工的title类型的分配数目,即结果给出部门编号dept_no、dept_name、其部门下所有的员工的title以及该类型title对应的数目count,结果按照d...

2021-04-12 10:33:57 121

原创 利用fastjson快速解析json文件

最近接到一个需求,需要我将一个json文件的数据读取到内存中然后保存在sql中。这里面其实就两个问题,一个是如何将文件中的数据读取出来

2021-03-08 08:48:39 3209 5

原创 git新建本地分支并推送远程

在我们原有分支中新建分支。 git branch name //创建新分支git checkout name //切换新分支--------------------------------git checkout -b name //新建分支并切换 我们可以两种方法二选一。 我们想在远程是没有对应的分支的,我们需要对远程进行推送。 命令:git push origin local_name:remote_name例子:git push origin featur

2021-02-24 09:33:46 881

原创 deepin V20 更换apt-get源

前述:deepin并不是ubuntu这些开源linux,它使用的源仓库本来就在国内,所以速度还是能将接受的,没有很差的用户体验可以不换。更换:我们常用的阿里源,清华源这些都是适用的,唯一的差别和前版本不一样的是版本代号--20的版本代号是apricot 。所以我们只需要注意这个,其他源就可以使用了。官方源:deb [by-hash=force] https://community-packages.deepin.com/deepin/ apricot main contrib non..

2021-02-08 18:53:38 2071

原创 更改deepin系统并配置java开发环境

这几天因为公司的原因,我要进入使用linux的开发环境下。为此我将系统更改为deepin了(主要原因就是因为deepin对window迁移会友好很多,平时一些办公软件会香一点)。下面开始将搭建java8开发环境记录一下。首先我们需要使用将对应的tar包进行下载,因为甲骨文的官网实在是不适合我这种人,所以我使用了一下国内源。安装我们解压文件,并移动位置。tar -zxvf jdk-8u202-linux-x64.tar.gz -C ../local/java/-C是为了定义解压后

2021-02-08 11:37:55 322 1

原创 [编程题]从尾到头打印链表 牛客网练习 java递归

链接:https://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035?answerType=1&f=discussion来源:牛客网[编程题]从尾到头打印链表热度指数:1468661 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。示例1输入{67,0,24,58}.

2020-11-24 00:34:02 318

原创 [编程题]替换空格 牛客网练习

链接:https://www.nowcoder.com/questionTerminal/4060ac7e3e404ad1a894ef3e17650423?toCommentId=8146213来源:牛客网[编程题]替换空格热度指数:1635595 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Ar.

2020-11-17 13:34:56 175

原创 [编程题]二维数组中的查找 牛客网练习

链接:https://www.nowcoder.com/questionTerminal/abc3fe2ce8e146608e868a70efebf62e?toCommentId=8130433来源:牛客网[编程题]二维数组中的查找热度指数:1963984 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数.

2020-11-14 15:26:41 215

原创 [编程题]获取员工其当前的薪水比其manager当前薪水还高的相关信息 牛客网练习

链接:https://www.nowcoder.com/questionTerminal/f858d74a030e48da8e0f69e21be63bef?toCommentId=8121443来源:牛客网[编程题]获取员工其当前的薪水比其manager当前薪水还高的相关信息热度指数:120259 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 获取员工其当前的薪水比其manager当前薪水还高的相关信息,当前表示to_date='.

2020-11-13 12:18:24 198

原创 LeetCode练习 133. 克隆图

给你无向连通图中一个节点的引用,请你返回该图的深拷贝(克隆)。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。class Node { public int val; public List<Node> neighbors;}测试用例格式:简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。邻接列表...

2020-08-25 00:50:35 147

原创 leetcode练习 2. 两数相加

2. 两数相加难度中等4789收藏分享切换为英文关注反馈给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 80...

2020-08-25 00:45:34 165

原创 springboot项目自定义ehcache工具类

首先是项目整合ehcache,详情请看博主另一篇文章。->传送门! 直接上源码。 package com.shengxi.resys.util;import javax.annotation.Resource;import org.springframework.cache.Cache;import org.springframework.cache.CacheManager;/** * @author yan * @version 1.0.0 * @date 2020-08-

2020-08-12 00:56:10 790

原创 springboot2.x整合ehcache

整合pom依赖。 <!--缓存模块--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency> <dependenc

2020-08-12 00:33:47 366

原创 springboot2.x整合mail实现邮件发送(验证码为例)

整合mail依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 然后将自己的邮箱打开客户端服务。 以qq邮箱为例,前往...

2020-08-11 11:28:17 578

原创 springboot整合mybatis-plus出现无法找到对应xml问题

今天在springboot整合mybatis项目中替代orm为mybatis-plus。然后突然出错,mybatis无法找到对应mapper。在这里做一下记录。org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.shengxi.mapper.findUserByName at com.baomidou.mybatisplus.core.override.MybatisMapp

2020-07-16 23:42:24 1490

原创 springboot2.2.x整合thymeleaf无法引用静态资源

springboot2.x整合thymeleaf的教程请看:传送门。首先看一下我的静态资源路径。我们利用jq作为举例,旧的版本使用的方案是<script type="text/javascript" th:src="@{/js/jquery.js}"></script>如果没有成功,我们参考网上的教程,书写一个配置类。如:package com.shegnxi.krw.config;import org.springframework.contex.

2020-06-24 00:53:29 786

原创 springboot2.x整合thymeleaf

注:虽然现在更流行前后端分离,但是个人项目和小型项目开发和外包还是很适合mvc的一个开发模式。而且spring推荐的是thymeleaf,它和shoir、spring-security的整合配合度比较高。所以我们还是使用thymeleaf做为需要使用时的优先选择。 增加依赖 代码: <!-- thymeleaf --><dependency> <groupId>org.springframework.boot</groupId>

2020-06-24 00:08:56 227

原创 centos7安装部署Spark单机版 不依赖hadoop

安装JDK,可参考。 前往官网下载压缩包,地址。因为自己没有是为了学习,所以可以直接下载推荐的版本。 利用ftp工具将压缩包上传到linux,然后解压。 sudo tar -zxvf spark-3.0.0-preview2-bin-hadoop2.7.tgz 修改文件夹的名字,然后将文件夹移动到更容易管理的文件路径中。 mv spark-3.0.0-preview2-bin-hadoop2.7 sparkmv spark /usr/local ...

2020-06-10 01:54:21 2867

原创 centos7配置openjdk8环境

安装命令 方式一 yum cleanyum install -y java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64yum install -y java-1.8.0-openjdk-devel-1.8.0.212.b04-0.el7_6.x86_64 方式二 sudo yum install java-1.8.0-openjdk-devel -y 验证安装是否成功 java -ver..

2020-06-10 00:52:22 442

原创 LeetCode--数据库训练--177. 第N高的薪水 mysql

177. 第N高的薪水编写一个 SQL 查询,获取 Employee 表中第n高的薪水(Salary)。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述Employee表,n = 2时,应返回第二高的薪水200。如果不存在第n高的薪水,那么查询应返回null。+--------------...

2020-05-28 21:22:30 176

原创 牛客网算法练习--[编程题]表达式求值 java实现

链接:https://www.nowcoder.com/questionTerminal/3e483fe3c0bb447bb17ffb3eeeca78ba?toCommentId=6185324来源:牛客网[编程题]表达式求值热度指数:23176 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 算法知识视频讲解 今天上课,老师教了小易怎么计算加法和乘法,乘法的优先级大于加法,但是如果一个运算加了括号,那么它的优先级是最高的。例如: 1.

2020-05-21 20:32:54 492

原创 牛客网算法练习--[编程题]俄罗斯方块 java实现

[编程题]俄罗斯方块热度指数:26960 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 算法知识视频讲解 小易有一个古老的游戏机,上面有着经典的游戏俄罗斯方块。因为它比较古老,所以规则和一般的俄罗斯方块不同。荧幕上一共有 n 列,每次都会有一个 1 x 1 的方块随机落下,在同一列中,后落下的方块会叠在先前的方块之上,当一整行方块都被占满时,这一行会被消去,并得到1分。有一天,小易又开了一局游戏,当玩到第 m 个方块落下时他觉得太无聊就关掉了,小易希

2020-05-20 23:58:20 826

原创 牛客网算法练习--[编程题]牛牛的闹钟 java实现

题目描述牛牛总是睡过头,所以他定了很多闹钟,只有在闹钟响的时候他才会醒过来并且决定起不起床。从他起床算起他需要X分钟到达教室,上课时间为当天的A时B分,请问他最晚可以什么时间起床输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含一个正整数,表示闹钟的数量N(N<=100)。接下来的N行每行包含两个整数,表示这个闹钟响起的时间为Hi(0<=A<24)时Mi(0<=B<60)分。接下来的一行包含一个整数,表示从起床算起他需要X(0<=X<=

2020-05-19 20:16:29 457

原创 牛客网算法练习--[编程题]迷路的牛牛 java实现

今天开始练习一下算法和mysql等题目,增加一下自己的算法能力。链接:https://www.nowcoder.com/questionTerminal/fc72d3493d7e4be883e931d507352a4a?toCommentId=6159662来源:牛客网[编程题]迷路的牛牛热度指数:43429 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 算法知识视频讲解 牛牛去犇犇老师家补课,出门的时候面向北方,但是现在他迷路了。虽然他手里有.

2020-05-18 00:30:39 330

原创 Maven - error in opening zip file

这几天突然出现一个问题,就是突然maven项目不能添加依赖了。每次添加完项目总是报错:刚开始在百度上找到的答案总是说是因为jar包下载时错误,缺失等原因。只需要删除对应的文件,重新下载即可。但是我重复下载了很多遍,还是不行。最终找到一个奇怪的原因: 原因是因为我的maven配置了Aliyum的仓库中心,然后aliyun maven是一个比较麻烦的东西。之前的配置是...

2020-05-01 16:07:41 1301

原创 mybatis获取时间数据出现误差

问题: 利用mybatis获取数据时,出现datetime 和 timestamp都会出现时间误差,特别是在使用获取时间段这个操作的时候,会出现时间段误差。解决方案: 因为所有的数据库都不是使用中国时区的,所以我们只需要改数据库的时区到中国。这样我们就能避免插入时出现的时间问题。set global time_zone = '+8:00';set time_z...

2020-04-18 19:51:48 1527

原创 switch 语句idea报错Constant expression required

这里有很多人的情况是因为switch语句中没有使用常量,也就是使用自定义常量时没有添加final,只要加上即可。但是我遇到的情况比较特殊,就是常量封装是我使用了装箱的对象而不是使用基础数据类型。package com.shengxi.wu.frame.util.constant;/** * @author y */public class TweetType { /...

2020-04-15 15:33:43 1428

原创 mybatis插入操作返回自增id,及问题解决方案

useGeneratedKeys的使用: mybatis可以利用useGeneratedKeys参数结合id等进行插入时的数据返回。 使用注解方案: @Options(useGeneratedKeys = true, keyColumn = "id", keyProperty = "id") @Insert("") int insertIma...

2020-04-04 23:42:55 646

原创 mysql使用count出现null。解决方案

首先使用count函数有两种情况。第一种: 没有和 GROUP BY联合使用。这样我们一般如果指定了count()的字段,有可能会因为字段的数量为null出现返回null。这样我们使用orm时就会出现一些尴尬的报错。 目前测试出来的解决方式用*代替字段,这样能返回0.但是影响效率。后面如果研究一下mysql有其他解决方案会更新文章。第二种是使用group ...

2020-04-02 00:31:37 9262

原创 mysql利用一张表对另一张表进行统计(一对一count),及优化思考

这次我遇到的项目中有这样一个数据库设计,下图是日记表和收藏表。然后需要利用日记表对收藏表中对应的收藏进行count。第一次写出来的sql如下:SELECT food_diary.*, ( SELECT count( collect.diary_id ) FROM collect WHERE food_diary.id = collect.diary_id ) AS count...

2020-03-21 13:19:45 4313

原创 tp5使用本地第三方库(extend)

今天要写一个tp5的项目,然后要引用腾讯的cos API, 本来人生应该是使用Composer的安装方式的,但是github的下载速度实在是感人。科学上网也没有办法友好学习了。最后选择使用直接下载cos的源码导入到项目的extend目录下,然后进行导入。划重点:就是这个导入操作能让你失去对搬砖的兴趣。官方文档的说法是:require '/path/to/sdk/vendor/auto...

2020-03-20 01:11:39 560

原创 springboot2.0.5启动报错Failed to bind properties under 'spring.servlet.multipart.max-file-size'

之前2.0.4使用的yml配置方式是这样的。servlet: multipart: max-file-size: 2048Mb max-request-size: 2048Mb然后现在升级版本为2.0.5时,出现报错如下:E:\Java\jdk\bin\java.exe -agentlib:jdwp=transport=dt_socket,addre...

2020-03-14 12:40:45 3495 1

thinkphp+workerMan实现聊天功能

thinkphp5整合workMan功能实现web聊天室功能。实现有效的im模块

2019-02-25

phpthink5.0.22

thinkphp是php中最流行的开源框架。 本资源是5.0.22中的完整版

2019-02-12

WordPress5.0.3

WordPress是php中最简单的论坛类快速开发平台。 本版本是5.0.3

2019-02-12

操作系统原理--期末复习

操作系统原理--期末复习练习题。

2019-01-08

thymeleaf3.0.5

java流行框架spring boot推荐前端模版thymeleaf3.0.5。

2018-12-31

bootstrap3.35中文api

bootstrap3.3.5中文api整包,利用文档查找对应的属性。

2018-12-25

bootstrap入门实例

一个简单的bootstrap实例,帮助人理解和体验bootstrap代码的真实效果

2018-12-24

spring+mybatis+springMVC+shoir框架整合jar包

spring+mybatis+springMVC+shoir框架整合jar包,避免框架搭建的尴尬

2018-12-06

深入Java虚拟机(原书第二版清晰版).pdf

深入Java虚拟机(原书第二版清晰版).pdf

2018-12-06

阿里巴巴码出高效v1.3.0

阿里巴巴java编码规范 --码处高效version1.3.0,java程序员首选

2018-12-06

jdk1.8-131

一个java1.8的jdk资源,属于稳定版。有利于实际项目开发

2018-10-31

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

TA关注的人

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