- 博客(258)
- 资源 (1)
- 收藏
- 关注
原创 leetcode数据库刷题
180. 连续出现的数字表:Logs+-------------+---------+| Column Name | Type |+-------------+---------+| id | int || num | varchar |+-------------+---------+id 是这个表的主键。编写一个 SQL 查询,查找所有至少连续出现三次的数字。返回的结果表中的数据可以按 任意顺序 排列。查询结果格式如...
2021-12-04 22:12:23 3577
原创 dubbo入门使用第三篇 -- 整合springboot
一、前置准备:可参考前两篇文章zookeeper搭建并启动dubbo控制台启动dubbo监控启动(可选)三方包依赖(本项目使用到)二、代码编写提供者1.项目结构:红色框框重点2.代码和配置pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://mav...
2020-02-06 13:24:12 923
原创 dubbo入门使用第二篇--监控中心使用
下载代码:下载链接:https://github.com/apache/dubbo-admin/tree/master解压进入dubbo-monitor-simple目录 ==>进入main/java/resources/conf目录,修改dubbo-properties文件中的zookeeper注册中心地址,web页面访问端口等(默认8080),本文使用默认配置。退...
2020-02-03 10:44:23 348
原创 dubbo入门使用(zookeeper为注册中心)第一篇
一、注册中心zookeeper搭建,首先下载zookeeper包下载压缩包以后接下来步骤:解压 ==>进入解压后文件的conf目录 ==>zoo_sample.cfg文件改名为zoo.cfg ==>修改zoo.cfg文件,dataDir=xxx修改为dataDir=../data并保存 ==>新建一个和conf同级的文件夹data==>在zooke...
2020-02-02 17:11:52 644
翻译 leetcode 19. Remove Nth Node From End of List
Given a linked list, remove then-th node from the end of list and return its head.Example:Given linked list: 1->2->3->4->5, and n = 2.After removing the second node from the end, t...
2020-01-25 10:58:21 226
原创 leetcode 2. Add Two Numbers(java递归解法)
You are given twonon-emptylinked lists representing two non-negative integers. The digits are stored inreverse orderand each of their nodes contain a single digit. Add the two numbers and return i...
2020-01-24 17:01:05 324
原创 linux"好用"命令(持续更新)
1. 匹配第N行,并打印第N行前后100行。cat xxx.txt | grep -n "匹配字符串" // 打印出该行数500cat xxx.txt | sed -n '400,600p' 或者cat xxx.txt | tail -n +400 | head -n 2002. 备份文件,在文件名后加日期mv file file`date '+%Y%m%d_%H%M%S'...
2019-11-27 12:34:17 239
原创 springboot+swagger简单使用
1. pom.xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><dependency> ...
2019-11-19 10:39:04 268
翻译 leetcode 3. Longest Substring Without Repeating Characters
Given a string, find the length of thelongest substringwithout repeating characters.Example 1:Input: "abcabcbb"Output: 3 Explanation: The answer is "abc", with the length of 3. Example 2:...
2019-11-17 18:51:09 124
转载 nohup和&区别
使用&后台运行程序: 结果会输出到终端 使用Ctrl + C发送SIGINT信号,程序免疫 关闭session发送SIGHUP信号,程序关闭 使用nohup运行程序: 结果默认会输出到nohup.out 使用Ctrl + C发送SIGINT信号,程序关闭 关闭session发送SIGHUP信号,程序免疫 平日线上经常使用nohup...
2019-11-10 17:29:21 156
原创 深入理解NIO
BIO:block IO。 有两种阻塞:1、连接时阻塞。2、IO时阻塞。且这两种阻塞都没有设置非阻塞的方法。所以是BIONIO:noblock IO。连接和IO时都有设置为非阻塞的方法。serverSocketChannel.configureBlocking(false)和socketChannel.configureBlocking(false)。所以是NIO。缺点:无法感知哪些socke...
2019-11-04 18:22:43 230
原创 向前端实时推送服务端日志springboot+websocket
自己参考其他博客搭建的一个简单websocket日志推送框架,集成到项目中也比较方便1.pom.xml导入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId&...
2019-10-29 15:00:01 1727 2
转载 centos7安装RabbitMQ 并且进行简单配置
1、安装运行环境我们都知道,java软件运行需要jre,这是运行环境。那么,同理,RabbitMQ运行也需要其运行环境。RabbitMQ使用erlang语言开发(想要了解的可以自行google),所以我们首先安装erlang.rpm -Uvh http://www.rabbitmq.com/releases/erlang/erlang-18.1-1.el7.centos.x86...
2019-10-07 16:05:50 336
原创 idea常用快捷键总结(mac)
快捷键类型:Mac OS x技巧:查看源码源位置:进入类==>点击下图红色框框快速生成main方法:psvm+回车快速生成打印方法:sout+回车快速抽取变量:代码末尾加上.var+回车快速打印:代码末尾加上.sout+回车快捷键:option+enter:自动创建、生成方法或实现command+鼠标左键:前往方法的实现地方command+opt...
2019-10-07 12:41:58 1163
原创 centos7 redis安装
1、下载wget http://download.redis.io/releases/redis-4.0.6.tar.gz2、解压tar -zxvf redis-4.0.6.tar3、将解压后文件夹移动到/usr/local/redismv redis-4.0.6 /usr/local/redis4、进入文件夹cd /usr/local/redis5、mak...
2019-10-03 09:22:08 128
原创 git"好用"命令总结
一、回滚远程代码查看版本:git log退出查看输入q回滚步骤:1、先回滚本地仓库git reset --hard 提交版本2、回滚远程仓库(f:强制回滚):提交本地回滚到远程,使远程也回滚git push -f二、git切换分支时含未提交信息,保存工作区再切换。假设一种场景:在分支A开发到一半时需要临时切换到另一个分支B工作,假如不做任何处...
2019-09-24 16:57:49 165
原创 springboot事务方法间调用
非事务外围方法调用同类的事务方法,内部方法抛异常,外部方法捕获异常。结果,内外方法都能插入数据。结果猜想:事务给了外部方法,外部方法捕获了异常,导致外部方法没有察觉到异常,虽然内部方法察觉到异常,但事务由外部方法决定。最后结果就是内外方法都插入数据。为了验证猜想,我把之前内部方法的事务取消,并给原本没有事务的外部方法添加事务,看看结果是不是一样,如果一样,那就说明,只要是同一个类,...
2019-09-20 13:17:50 3259 2
原创 mybatis批量更新,批量查询
解释:一般的批量更新是同时发送多条更新sql语句,但这种方法有个缺点,就是耗时,因为需要多次IO操作。解决办法就是将多条更新语句合并成一条执行。批量更新的数据库写法:// 写法一update tableset column1 = case column2 when a1 then value1 when a2 then value2 when a3 th...
2019-09-13 17:45:39 335
转载 mac获取ip脚本命令
ifconfig | grep "inet" | grep -v "inet6" | awk '{print $2}' | grep -v "127.0.0.1"找出文件min_max_number中最大数字和最小数字23424324234 24324 234432344344 234423424322344 4324 23423 243423cat min...
2019-08-24 15:18:56 906
原创 docker安装mysql与密码设置
下载:docker pull mysql:5.6查看:docker images创建目录/root/mysql,并进入:mkdir /root/mysqlcd /root/mysql在/root/mysql目录下设置:docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=666666 -v $PWD/c...
2019-08-21 21:25:16 1600
原创 centos7安装docker和zookeeper集群
一、安装dockeryum install -y docker二、启动docker镜像sudo service docker start三、查找zookeeper镜像sudo docker search zookeeper四、下载zookeeper镜像sudo docker pull docker.io/zookeeper五、下载完后可检查镜像su...
2019-08-17 18:56:59 520 2
原创 feign使用和遇到坑总结
feign模块(代替ribbon)构建工程步骤:1. pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xs...
2019-07-29 23:59:32 2100
原创 eureka集群和ribbon负载均衡迅速搭建
整体架构图:1. eureka集群搭建集群有两个注册中心模块,模块名分别是:spring-cloud-eureka-server-7001和spring-cloud-eureka-server-7002以下介绍spring-cloud-eureka-server-7001的搭建,spring-cloud-eureka-server-7002同理。1.1 pom.xml配置文...
2019-07-28 18:44:14 1869
原创 实习-总结
部门目前做的一个项目是开发一个供内部测试人员使用的平台。使用的前端技术栈是react,后端技术栈是spring boot和spring cloud,并使用nginx做前后端的分离。1. Bean的规范service层的Bean和dao层的Bean经常不一样,为了规范:前者放在entity包下,后者放在dataObject包下。 2. timestamp比date字段好用数...
2019-07-26 13:27:08 257
原创 spring boot和mybatis整合模板
目录1.新建模块或项目2.修改pom.xml2.1在标签中添加如下内容:至于为什么因为后面generatorConfig.xml文件会用到${entity.target.dir}和${dao.resources.dir}2.2在标签中添加如下内容3.在src/main/resources文件中添加generatorConfig.xml文件4.application....
2019-07-21 16:24:38 845
原创 Callable线程如何一步步执行的
目录1. 背景2. 案例:2.1 使用Callable线程步骤:3. 代码设计分析4. 深入Callable具体源码,一步步查看如何执行:4.1 Callbale接口---FutureTask构造方法的接口4.2 FutureTask类和内部重要方法4.3 RunnableFuture接口---继承了Runnable,Future接口4.4 Runnabl...
2019-06-16 22:42:13 2101 2
翻译 java生产者消费者模板
总体思路:两个类:ProConsumer用于制造两个线程做测试;ShareData有共享变量和两个方法,分别是生产方法increment(),消费decrement()同步:使用lock+condition生产和消费方法模板步骤:1.加锁2.判断3.等待4.干活5.通知唤醒6.释放锁package com.concurrent;import java...
2019-06-15 21:42:56 184
翻译 剑指offer15 反转链表(递归和非递归)
题目描述输入一个链表,反转链表后,输出新链表的表头。思路:方法一、递归:比较简单。解析见注释public class Solution { public ListNode ReverseList(ListNode head) { if(head == null || head.next == null) return head;...
2019-06-14 23:02:20 158
翻译 剑指offer14 链表中倒数第k个结点(简洁)
题目描述输入一个链表,输出该链表中倒数第k个结点。思路:方法一、最容易想到的方法:第一次遍历链表确定链表长度n,第二次遍历链表得到n-k+1位置的元素。时间复杂度:O(n),准确点是n+k代码:代码很简单,略。方法二、设置两个指针第一个指针移动到第k个节点,紧接着第二个指针开始移动,第一个指针同样继续移动,当第一个指针到达链表尾部,第二个指针则刚好到达倒数第k个节点...
2019-06-14 22:31:50 133
原创 idea定制模板tomcat插件模板
每次在pom.xml文件中配置tomcat插件,记不住配置,ide又没有提示,所以要去网上找相关配置,这个过程相当麻烦。有没有更简单的办法呢?比如我pom.xml中输入一个“tomcat”字符串,会出来提示之类的?答案是有的,我们能想到,idea开发者也想到了。接下来看具体怎么做:打开settings----输入框输入live-----点击右边“+”选择Template Group...
2019-06-09 23:20:54 1012
原创 idea向上/向下插入空行快捷键
idea是2017版的向上插入空行:ctrl+alt+enter向下插入空行:shift+enteridea快捷键用起来真的无力吐槽。。。向上插入和向下插入明明是对称功能,快捷键却风牛马不相及。还是怀念eclipse。...
2019-06-07 15:43:40 11104 4
转载 组合注解和继承注解
(1)@inherited注解修饰的注解@A,@A修饰某个类,则该类的子类也被@A修饰(2)当注解中含有数组属性时,使用{}赋值,各个元素使用逗号分隔。(3)注解的属性可以是另外一个注解。(4)注解的属性可以是另外一个注解的数组。(5)注解的默认属性是value,只有一个value属性时可以不写value=xxx,直接写值即可。(6)注解的属性的默认值使用default来定义。...
2019-05-31 15:25:21 6500
原创 自定义一个RPC框架
目录一、用到的技术:1.socket通信2.反射3.动态代理(jdk动态代理)4.线程池二、架构:1.client:客户端,传递要调用的接口名给服务端,在服务端执行完成返回结果给客户端。原理是在客户端使用一个动态代理,可动态的切换要调用的接口和方法。2.客户端要调用的接口服务:接口服务都到ServiceCenter服务中心中册,注册后客户端只需要到ServiceC...
2019-05-23 17:30:36 426
原创 springboot 配置多环境切换
properties文件。假如有application.properties,application-dev.properties,application-test.properties三个文件,如果要使用application-dev.properties中的配置,则可在application.properties中添加spring.properties.active=dev即可。applic...
2019-05-21 20:31:10 6947 2
转载 MySQL 对于千万级的大表要怎么优化?
作者:zhuqz链接:https://www.zhihu.com/question/19719997/answer/81930332来源:知乎很多人第一反应是各种切分;我给的顺序是:第一优化你的sql和索引;第二加缓存,memcached,redis;第三以上都做了后,还是慢,就做主从复制或主主复制,读写分离,可以在应用层做,效率高,也可以用三方工具,第三方工具推荐360的a...
2019-05-12 21:55:52 1110
原创 hashcode和equals方法
对象的hashcode方法和equals方法如果没有重写都是Object类的方法,因为所有对象都继承自Object。所以我们看看Object类这两个方法的源码:equals方法源码: public boolean equals(Object obj) { return (this == obj); }hashcode方法源码:public na...
2019-04-27 23:19:48 198
原创 防止单例模式被反射和单例模式破坏
反射破坏单例:单例模式一般构造方法都是private,目的就是为了防止外界调用私有构造器创建多个实例,通过一个public的共有方法作为外界获取实例的唯一入口。从而实现单例。但是反射能够访问私有的构造方法,只要反射获取的构造器调用setAccessible(true)方法即可。这样调用一次就会产生一个实例,调用多次就时多个实例,从而破坏单例。如何防止:只要在单例的私有构造器中添加判...
2019-04-27 16:48:50 2236
翻译 面试-算法:二叉树常见题型
题型都很常见,但是有些并不能马上就能有思路,真到了面试,面试官并不会给太多时间思考时间,没有思路直接凉凉。所以记录一下常见问题,平时多看,多思考,多总结:一、常见题型1. 求两个节点的最近公共祖先;2. 求二叉树中最远的两个节点的距离;3. 由前序遍历和中序遍历重建二叉树(如:前序序列:1 2 3 4 5 6 - 中序序列 :3 2 4 1 6 5);4. 判断一棵树是否是完全...
2019-04-17 00:38:47 244
翻译 leetcode 543. Diameter of Binary Tree
Given a binary tree, you need to compute the length of the diameter of the tree. The diameter of a binary tree is the length of thelongestpath between any two nodes in a tree. This path may or may no...
2019-04-17 00:10:37 82
中科大算法导论期末复习
2018-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人