自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 RocketMQ在windows环境下的搭建安装

RocketMQ在windows环境下亲自搭建,记录过程步骤,并记录采到的坑 环境: 1.系统Windows 2.环境 JDK1.8、Maven、Git 3.下载rocketmq-all-4.4.0-bin-release(下载链接:https://rocketmq.apache.org/)&qu...

2019-03-19 11:57:50

阅读数 333

评论数 0

原创 REST API和SOAP API区别

REST API 优点: 1. 轻量级的解决方案,不必向SOAP那样要构建一个标准的SOAP XML。 2. 可读性比较好:可以把URL的名字取得有实际意义。 3. 不需要SDK支持:直接一个Http请求就可以,但是SOAP则可能需要使用到一些Webservice的类库(例如Apache的Axis...

2020-01-22 17:24:02

阅读数 8

评论数 0

原创 java常见工具库

目前项目中常见的工具库有apache commons,google guava,再算上spring的话,需要自己从头开始写工具类的情况大大减少。 为了给广大童鞋普及一下工具库用法,减少无用功(还可能因为实现的不好留后遗症的),这里简单的介绍一下相关工具类。google guava大家应该比较陌生,...

2019-12-28 15:04:27

阅读数 7

评论数 0

原创 mysql中的CONCAT()函数的用法

select CONCAT(null,“aaaa”); select CONCAT(“aaaa”,null); 上面这2种写法,返回的值都为Null 所以如果要把两个变量的值concat的话,需要替换掉Null值,不然的话只要某个变量为null,结果都为null 正确的写法应该是select CO...

2019-12-24 11:50:45

阅读数 8

评论数 0

原创 mysql创建索引的原则

在mysql中使用索引的原则有以下几点: 1、 对于查询频率高的字段创建索引; 2、 对排序、分组、联合查询频率高的字段创建索引; 3、 索引的数目不宜太多 原因:a、每创建一个索引都会占用相应的物理控件;    b、过多的索引会导致insert、update、delete语句的...

2019-12-24 11:36:03

阅读数 7

评论数 0

原创 java实现 json属性赋值 实体属性

json 转化成实体 是将 userId 赋值给 @JsonProperty(“id”) ,最后返回的是个map结构的数据 @Data @ApiModel("用户信息") public class UserInfo { @JsonProperty("id&q...

2019-12-23 19:40:34

阅读数 12

评论数 0

原创 rocketmq使用过程中遇到的问题

rocketmq使用过程中遇到的问题,在这里只作为记录 生产者生产数据流程:调用 中间件遇到的问题: 1.服务器磁盘日志写满,导致服务阻塞 2.网络异常,发送给第三方接口后,返回false导致大量队列数据阻塞,重试发送 3.消费端消费后返回false,导致大量队列数据阻塞,重试发送 4.阿里云云盾...

2019-12-21 17:21:19

阅读数 17

评论数 0

原创 Java工程服务MEM内存过高问题处理方法

搞Java开发的,经常会碰到下面两种异常: 1、java.lang.OutOfMemoryError: PermGen space(Java虚拟机的堆内存不够) (1)Java虚拟机的堆内存设置不够,可以通过参数-Xms、-Xmx来调整。 (2)代码中创建了大量大对象,并且长时间不能被垃圾收集器收...

2019-12-21 09:51:03

阅读数 18

评论数 0

原创 Java工程服务CPU100%问题处理方法

如何定位是哪个服务进程导致CPU过载,哪个线程导致CPU过载,哪段代码导致CPU过载? 简要步骤如下: (1)找到最耗CPU的进程; (2)找到最耗CPU的线程; (3)查看堆栈,定位线程在干嘛,定位对应代码; 步骤一、找到最耗CPU的进程 工具:top 方法: 执行top -c ...

2019-12-21 09:16:25

阅读数 89

评论数 0

原创 使用消息队列规避分布式事务问题

前阵子从支付宝转账10000元到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额宝账户并没有增加10000,数据就会出现不一致状况了。这样的场景在各个类型的系统中都能找到相似的影子,比如在电商系统中,当有用户下单后,除了在订...

2019-12-21 08:53:36

阅读数 6

评论数 0

原创 在windows上搭建redis集群 - 主从复制

Redis主从复制常用的几种方式: 1、一主二扑 A(B、C) 一个Master两个Slave 2、薪火相传(去中心化) A-B-C,B既是主节点(C的主节点),又是从节点(A的从节点) 3、反客为主(主节点down掉后,手动操作升级从节点为主节点) 4、哨兵模式(反客为主的自动版,即主节点dow...

2019-12-20 16:38:37

阅读数 4

评论数 0

原创 windows下搭建安装redis服务器(单节点)

Redis在windows平台下的安装和部署 一、单机部署Redis服务 1、下载Redis,直接解压到任意位置,如:D:\tools\Redis-x64-3.0.504 2、运行cmd命令启动Redis服务。 窗口是服务终端,如果窗口被关闭,对应的服务也会停止。 注意:带后面的启动参数,如果...

2019-12-20 16:27:38

阅读数 7

评论数 0

原创 Java技术的那些事

https://clojars.org/ jar包下载地址 =线程========== 1.实现Runnable接口 implement Runnable 接口 2.任务逻辑代码 Task() 3.重写run函数 override run() 4.调用: Thread t =...

2019-12-20 10:44:52

阅读数 15

评论数 0

原创 IDE使用技巧

IDEA中try/catch快捷键 Ctrl + Alt + t Ctrl+Shift+F12 当大当前编辑框 Alt+7 查看当前文件代码接口 1、Ctrl+N按名字搜索类 抽取方法的快捷键是 Ctrl + Alt + M IDE使用: IntelliJ IDEA隐藏不想看到的文件或文件...

2019-12-20 10:41:02

阅读数 7

评论数 0

原创 http协议

既然TCP/UDP是广泛使用的网络通信协议,那为啥有多出个http协议来呢? 笔者曾自己动手写过一个简单的web服务器处理软件,根据我的推断(不一定准确)。 UDP协议具有不可靠性和不安全性,显然这很难满足web应用的需要。 而TCP协议是基于连接和三次握手的,虽然具有可靠性,但人具有一定的缺陷。...

2019-12-20 10:39:13

阅读数 19

评论数 0

原创 Windows查找查杀被占用端口

Windows常用命令用法: netstat -aon|findstr “端口号” tasklist|findstr “2720” 终止PID进程 taskkill /PID 4276 强制终止PID进程 taskkill /F /PID 4276 kill -F 进程名 加-F参数...

2019-12-20 10:36:35

阅读数 9

评论数 0

原创 MySQL中find_in_set函数

find_in_set()和like的区别: 在mysql中,有时我们在做数据库查询时,需要得到某字段中包含某个值的记录,但是它也不是用like能解决的,使用like可能查到我们不想要的记录,它比like更精准,这时候mysql的FIND_IN_SET函数就派上用场了,下面来看一个例子。 创建表并...

2019-12-17 18:28:58

阅读数 5

评论数 0

原创 RocketMQ消费者配置消费场景

一个producer, 一个consumer1,一个consumer2 1.producer发送消息 3条 DefaultMQProducer producer = new DefaultMQProducer("group"); producer.set...

2019-12-14 16:03:10

阅读数 39

评论数 0

原创 RocketMq ConsumerGroup Tag对消费的影响

官方对consumer的定义如下: Similar to previously mentioned producer group, consumers of the exactly same role are grouped together and named Consumer Group. C...

2019-12-14 14:37:48

阅读数 8

评论数 0

原创 Slf4j和logback.xml配合使用,配置控制台打印日志级别带颜色

在logback.xml文件中添加或覆盖原有的节点: <property name="CONSOLE_LOG_PATTERN" value="%date{yyyy-MM-dd HH:mm:ss} | %highlight(%-5lev...

2019-12-12 19:33:02

阅读数 18

评论数 0

原创 RocketMq使用过程中经验总结

1.如果启动生产者或使用者失败,并且错误消息是生产者组或使用者重复? 原因:使用相同的Producer / Consumer组在同一JVM中启动Producer / Consumer的多个实例可能会导致客户端无法启动。 解决方案:确保与一个生产者/消费者组相对应的JVM仅以一个生产者/消费者实例启...

2019-12-12 19:27:15

阅读数 15

评论数 0

转载 关于inner join 与 left join 之间的区别

关于inner join 与 left join 之间的区别,以前以为自己搞懂了,今天从前端取参数的时候发现不是预想中的结果,才知道问题出在inner join 上了。 需求是从数据库查数据,在前端以柱形图的形式展现出来,查到的数据按行业分组,显示每个行业的户数及户数占比,涉及到的字段有A表的用户...

2019-12-04 10:56:42

阅读数 5

评论数 0

转载 springboot + mybatis + 多数据源

springboot + mybatis + 多数据源 简要原理: 1)DatabaseType列出所有的数据源的key—key 2)DatabaseContextHolder是一个线程安全的DatabaseType容器,并提供了向其中设置和获取DatabaseType的方法 3)DynamicD...

2019-05-15 14:13:40

阅读数 10

评论数 0

转载 Intellij IDEA 修改项目名称

1.在终端或者直接给文件夹重命名 2.重新导入项目 3.重命名项目根目录下原项目名.iml为新项目名.xml 1.1 4.打开.idea文件夹,修改.name的文件内容为新项目名 5.修改compiler.xml中module标签的name属性为新项目名 1.2 5.修改modules.xml中...

2019-04-25 09:36:45

阅读数 433

评论数 0

原创 java8新特性之时间

System.out.println("==================java8新特性之时间====================="); LocalDate dNow = LocalDate.now(); System.out.pri...

2019-04-24 16:32:30

阅读数 37

评论数 0

转载 JAVA8 十大新特性详解

前言: Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级。在Java Code Geeks上已经有很多介绍Java 8新特性的文章, 例如Playing with Java 8 – Lambdas and Concurrency、Java 8 Date Time API...

2019-04-24 16:24:37

阅读数 50

评论数 0

原创 屏蔽 RocketMQ 自己加载日志文件

RocketMQConfiguration(){ System.setProperty(“rocketmq.client.log.loadconfig”,“false”); }

2019-04-23 17:19:18

阅读数 704

评论数 0

转载 rocketmq 中SendCallback有效性检查

Java Code Examples for com.alibaba.rocketmq.client.producer.SendCallback The following are top voted examples for showing how to use com.alibaba.rock...

2019-04-11 12:21:05

阅读数 280

评论数 0

原创 shiro框架的简单登录说明下shiro的用法

控制器对应的登陆方法: @RequestMapping(value = "/login", method = RequestMethod.GET) public String login(@RequestParam("username") String us...

2019-04-08 11:09:47

阅读数 20

评论数 0

原创 MyBatis Mapper.xml中的 $和#

假设参数名为 paramName,类型为 VARCHAR 。 1.优先使用#{paramName,jdbcType=VARCHAR} 写法,除了可以防止sql注入以外,它还能在参数里含有单引号的时候自动转义 而${paramName}由于是类似于拼接sql的写法,不具备此功能。 2.注意,使...

2019-04-03 11:35:01

阅读数 56

评论数 0

原创 配置generatorConfig.xml自动生成的代码,sql

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Gene...

2019-04-03 11:31:40

阅读数 106

评论数 0

转载 mybatis中mapper.xmlSQL手写总结

工作流成简述: mapper.xml–>dao接口–>service–>Controller 查询:   select * from 表名 where …   mapper.xml; <?xml version="1.0" encoding="...

2019-04-03 11:28:18

阅读数 202

评论数 0

原创 RocketMQ入门经验

源码和应用下载 ​ 这里以RocketMQ的4.3.0版本为例,本地环境为windows10,jdk1.8, maven3.2.1. 源码下载地址: http://mirrors.hust.edu.cn/apache/rocketmq/4.3.0/rocketmq-all-4.3.0-source...

2019-04-01 17:31:40

阅读数 50

评论数 0

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