- 博客(48)
- 收藏
- 关注
原创 java-线程池
https://blog.youkuaiyun.com/ye17186/article/details/89467919?spm=1001.2014.3001.5502https://blog.youkuaiyun.com/weixin_45614626/article/details/124575131
2024-12-30 15:25:10
237
原创 Spring中@Autowired和@Resource的区别
Autowired :对类成员变量、方法及构造函数进行标注,完成自动装配的工作。@Resource:在语义上被定义为通过其唯一的名称来标识特定的目标组件,其中声明的类型与匹配过程无关。
2024-06-19 15:39:14
604
1
原创 server-系统架构理解
优势:减少依赖调用次数,减轻服务器压力;代码逻辑清晰,没有太多分支判断。劣势:无法避免串行调用,接口耗时会升高。劣势:会造成额外的无用调用,资源的浪费。优势:并行调用,降低接口响应时间。2、统一查询,后续用啥去啥。
2024-06-19 15:22:05
358
原创 JVM的GC 参数命名
助记的话: memory maximum, memory startup, memory nursery/new, stack size.
2023-05-17 11:03:19
154
原创 秒杀系统学习记录
Redis实现秒杀系统淘宝大秒系统设计详解如何实现“秒杀”系统乐视秒杀架构解读:从零开始搭建百万每秒订单系统 双十一淘宝没被整崩溃正是因为背后的这些神奇技术逃不掉的双十一 可怕的分布式架构隐患...
2022-06-22 15:08:33
157
原创 java 基础
如何快速创建数组1、通过Arrays.asList(“a”, “b”);2、Stream.of(“a”).collect(Collectors.toList());3、通过guava提供的方法,List list3 = Lists.newArrayList(“a”);
2021-04-22 12:10:08
144
原创 BDDMockito
自定义每次返回不同结果when(mock.someMethod("some arg")) .thenThrow(new RuntimeException()) // 第一次会抛出异常 .thenReturn("foo"); // 第二次会返回这个结果//First call: throws runtime exception:mock.someMethod("some arg"); // 第一次//Second call: prints "foo"System.out.println
2020-11-20 14:45:10
673
原创 2020-08-31 chang computer
DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `username` varchar(32) NOT NULL DEFAULT '' COMMENT '用户名', `password` varchar(32) NOT NULL DEFAULT '' COMMENT '密码', PRIMARY KEY (`id`.
2020-08-31 00:29:20
128
原创 SpringBoot 单元测试
testng1、引入testng包// pom.xml<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>RELEASE</version> <scope>test</scope></dependency>2、配置Appliection// 扫描包名,不
2020-08-13 21:05:38
295
1
原创 Mac brew安装软件
安装brew/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"brew安装java8brew cask install adoptopenjdk8brew安装gitkbrew install gitbrew install git-gui
2020-07-31 11:28:43
191
原创 Maven
maven查找某个包被哪里依赖mvn dependency:tree -Dverbose -Dincludes=com.alibaba:fastjson
2020-06-29 16:07:47
165
1
原创 Linux配置
vim 查看二进制文件乱码问题编辑~/.vimrc文件,加上如下几行:set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936set termencoding=utf-8set encoding=utf-8
2020-04-26 10:59:37
143
原创 AVL旋转公式
1、左左为右:左子树的左子树插入一个节点,导致二叉树不平衡,则做右旋转tmp = root.left;root.left = tmp.right;tmp.right = root;2、右右为左:右子树的右子树插入一个节点,导致二叉树不平衡,则做左旋转tmp = root.right;root.right = tmp.left;tmp.left= root;3、左右为左右:左子树...
2020-03-15 03:13:45
194
原创 如何解决缓存与数据库数据不一致问题
更新数据时:先删除缓存,再更新数据库(并发量大的时候仍会造成数据不一致)缓存设置过期时间(从一定程度上解决数据不一致的情况,并不能完全解决)使用队列,保证对相同id操作在同一队列中,一个操作执行完成再执行下一个操作通过binlog来更新缓存...
2020-03-09 21:22:31
1150
原创 一次TCP连接支持多少次HTTP请求
http 1.0默认一次tcp连接进行一次http请求之后就会断开(由于资源浪费,有些服务器支持通过配置支持多次)http 1.1请求头配置:Connection:keep-alive = true,只要tcp连接不断开(默认2小时),一直可以进行http请求,但是一个tcp连接同一时间只支持一个http请求Connection:keep-alive = false,只能发一次http请...
2020-03-09 13:24:03
3168
原创 关于kafka的理解
1、相关名词:producer:生产者brocker:kafka中间件节点,多个中间件节点组成kafka集群topic:主题,将kafka消息进行归类,消费者只会消费topic相同生产者产生的消息partition:物理上的概念(可以理解为消息队列),一个topic可以分配多个partition,每个partition内部是有序的consumer:消费者consumerGroup:消...
2020-03-06 16:27:57
222
原创 Spring MVC项目中@Transactional不生效
要解释清我遇到的情况(Ps:造成@Transactional不生效的原因有很多种)首先要了解以下几个知识点:1、Spring MVC项目中会有两个容器初始化,配置了Spring注解(例:@Transactional、@Controller、@Service等注解)的类(class)DispatcherServlet一般用来加载MVC相关的类(本文这个过程简称:加载springmvc配置)...
2020-03-04 13:17:29
1177
1
原创 Homebrew update
镜像使用帮助以下内容为引用:清华大学开源软件镜像站,如有造成影响,请及时联系立即删除替换现有上游git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.gitgit -C "$(brew --repo homebrew/core)" remot...
2020-02-27 11:12:58
197
原创 FireFox 如何将国内服务切换至全球服务
背景:最早使用FireFox浏览器注册账户是在全球服务器注册的,但是后期由于一些原因,FireFox官网只能下载国内服务的安装包,账户虽然能登录,但是之前在账户中存储的书签都无法同步(审视生气)解决办法:安装FireFox插件:http://g-fox.cn/chinaedition/addons/cpmanager/cpmanager-4.67.3-fx.xpi...
2020-02-27 11:10:39
8509
2
原创 MAC 7788
显示隐藏文件在终端中输代码“defaults write com.apple.finder AppleShowAllFiles -boolean true;killall Finder”即可显示隐藏文件关闭显示隐藏文件在终端中输代码“defaults write com.apple.finder AppleShowAllFiles -boolean false;killall Finder”...
2020-02-05 18:18:26
235
原创 Sublime取消每次打开升级提示
最近每次打开sublime,总是提示升级,但又不想升级,所以网上搜了下,如何取消Sublime Text升级提示配置如下选择Sublime Text -> Preferences -> Settings进入setting界面:编辑,并保存(OK,搞定)...
2020-01-09 16:19:40
903
原创 位运算
计算机中的位运算操作都是以其补码参与运算正数的三码(原码/反码/补码)一致负数的三码, 反码是原码除符号位取反, 补码是反码加一1.负数原码与反码之间的转化原码 -> 取反(反码) -> 反码+1 -> 补码补码 -> 取反(补码的反码)-> 补码的反码+1 -> 原码-4:原码:10000100反码:11111011补码:11111100...
2019-12-02 16:03:22
959
原创 IDEA中的debug回退
直接点击Drop Frame回退到断点所在function的调用处,无法跨class先在调用栈中选择要回退的方法,再点击Drop Frame,此时再按F9(Resume Program),就可以进入到要回退的方法的断点处了展示调用栈调用栈...
2019-11-19 22:11:16
8799
4
原创 Linux 常用命令
1、exportexport命令用于设置或显示环境变量2、source3、dirname/basenamedirname:命令读取指定路径名删除最后一个“/”(斜杠)及其后面的字符,保留其他部分,并写结果到标准输出。如果最后一个“/”后无字符,dirname 命令使用倒数第二个“/”,并忽略其后的所有字符basename:命令用于去掉文件名的目录和后缀...
2019-08-25 14:27:14
901
原创 Mac 下使用rz/sz
一、下载并安装iTerm2 http://www.iterm2.com/#/section/downloads 二、下载安装lrzsz 1、brew install lrzsz(没有权限的话就使用 sudo brew install lrzsz 试试) 2、ln -s /usr/local/Cellar/lrzsz/0.12.20/bin/sz ...
2019-05-09 11:40:38
627
原创 MySQL
MySQL 将数据导入文件mysqldump --skip-lock-tables -u用戶名 -p密码 数据库名 表名 > 文件名例:mysqldump --skip-lock-tables -u root -p12345678 test user > user.sqlmysqldump -u 用户名-p 数据库名 表明 > 文件名Enter password: *...
2019-05-08 21:43:15
394
原创 消息队列的使用
何时使用消息队列对外: 削峰填谷 业务隔离对内 集群同时数据库,然后读出一条数据进行处理(处理耗时较长)(1)、如果集群同时读,容易出现多台机器同时读出一条数据处理的问题;如果一台机器读出来更改状态,又容易造成数据库压力,且其他机器读到相同机器处理时的资源浪费(2)、如果只用一台机器去处理,处理则处理比较慢,失去集群的意义 这是可以用一台机器读取数据,推入消息队列,多...
2019-04-11 11:00:37
137
原创 tomcat那点事儿
startup.sh 报错Cannot find ./catalina.shThe file is absent or does not have execute permissionThis file is needed to run this program解决方法一:在tomcat 的bin目录下 执行这条命令chmod +x *.sh###方法二:如果配置了环境变量,把...
2019-04-04 18:22:47
154
原创 Java编程规范
基本类型与包装类型的使用以Int类型为例:1、除去需要进行计算的数据外都尽量使用包装类型(Integer) 因为Integer类型默认为null,而基本类型的默认值默认为0,在我们开发过程中,0在很多情况下是有实际意义的(例:status = 0 默认为成功)2、我们只需呀判断Integer id == null ? 来判断id是否有值,而不是if(id != null &amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp...
2018-12-13 16:20:26
266
原创 IDEA 远程debug (Tomcat)
总有有人会问,为什么需要远程debug大部分时间当我们遇到问题时,直接在本地debug就可以,基本用不着远程debug,但是有时候遇到某些问题只能在线上才会复现,又或者只有在开发机或者预览机上才有权限访问的时候就显得十分捉急了本地配置(啥也不说,上图)只为做个记录(如果按一下配置之后还是不能连接,尝试关闭下服务器的防火墙)服务器配置一下以Linux环境为例,进入./tomcat/bin...
2018-11-19 00:30:05
146
原创 学习原型后的总结
下面内容是查询网上关于原型资料之后的总结,图片也是网上截取,想要学习更详细的原型与闭包只是给大家推荐已连接:http://www.cnblogs.com/wangfupeng1988/p/3977924.html明确几个名名词:Object、Array、Function了解几个答案://typeof 返回的结果都是小写字母组成的“字符串”var arr = new Array();
2018-01-22 11:47:05
902
原创 JavaScript中检测对象是否包含某属性
实例demofunction Person(){}Person.prototype.name = "xiaohua";var person1 = new Person();console.log(person1.name); //xiaohuaconsole.log(person1.hasOwnProperty("name")); //falseconsole.log("
2018-01-22 11:38:06
832
原创 module.filename、__filename、__dirname、process.cwd()和require.main.filename
app.js// node E:\node_study\file_path_study\app.jsconsole.log('*** app start ***');console.log('*** module.filename = ' + module.filename + ' ***');console.log('*** __filename =
2018-01-22 11:33:29
343
原创 Node JS中对于module.export的理解
require(“xx.js”)获取的就是export(也就是说(exports后面直接跟等号),export等号后面的东西可以怎么使用,require等号前面的就可以怎么使用,如例:1;也或者是说(export后面不是直接跟等号),exports可以怎么使用,require等号前面的就可以怎么使用,如例:2);如果js文件中有多个export,则通过require获取到的是一个对象类型,如例3:
2018-01-22 11:30:20
410
原创 Git总结
Git简介git的优势:只要将代码clone到本地,每个人电脑都可以是一个版本控制的仓库,可以在本地进行版本管 理,最后在一同提交到远程服务器与svn相比:svn本地做了修改,要想仓库记录这个版本必须提交的远程,才能进行版本管理。本地没有版本管理的仓库,也就是svn修改的每个版本都要提交的远程Git命令:1、常识:(1)、git config --list :查看自己的设置(通过
2017-09-27 14:29:44
329
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人