摘要:Nacos是一款集服务注册发现、服务配置和管理于一身的开源软件,这节主要记录Nacos的服务注册发现功能的使用。借助Spring Cloud Alibaba Nacos Discovery,我们可以轻松地使用Spring Cloud编程模型体验Nacos的服务注册发现功能。本节使用的Spring C
阅读全文
摘要:显示隐藏文件、文件夹:Command+Shift+. 最小化全部应用: Command+Option+H+M 显示、隐藏程序坞: command+option+d 设置启动台图标大小: defaults write com.apple.dock springboard-columns -int 10
阅读全文
摘要:package com.test.abc.util; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class Sysconfig { private stati
阅读全文
摘要:1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用 2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,包括子类。 3、protected:protected对于子女(子类)、朋友(同一packa
阅读全文
摘要:面向对象 构造器参数太多怎么办 Java类设计过程中,如果类的构造器或者静态工厂中具有多个参数,并且其中有大量的可选参数时,我们应该怎么办? Telescoping Constructor模式(重叠构造器) 我们首先想到的方法肯定是传统的构造器 /** * Created by itbird on
阅读全文
摘要:整体步骤: 制作要导出的word模板,另存为xml格式,使用idea编辑。 xml模板编辑完成,修改文件格式为ftl格式。 编写代码,封装导出数据,使用模板。 注意:编写模板时,同一行文字应先在记事本中写好复制到模板中,不然生成xml文件后会自动换行。 0.依赖 <!--word导出 --> <de
阅读全文
摘要:线程池(Thread Pool):把一个或多个线程通过统一的方式进行调度和重复使用的技术,避免了因为线程过多而带来使用上的开销。 线程池介绍 线程池(Thread Pool):把一个或多个线程通过统一的方式进行调度和重复使用的技术,避免了因为线程过多而带来使用上的开销。 为什么要使用线程池? 可重复
阅读全文
摘要:线程池的创建分为两种方式:ThreadPoolExecutor 和 Executors description: Executors可以创建6种线程池 Executors可以创建以下6种线程池: FixedThreadPool(n):创建一个数量固定的线程池,超出的任务会在队列中等待空闲的线程,可用
阅读全文
摘要:预.面板简介 1.常用操作快捷键 打开文件:【文件】-【打开】-选择文件 快捷键 Ctrl+O 复制图层:快捷键 Ctrl +」 放大缩小画面:快捷键 Alt+鼠标滚轮 移动画面:按住空格键 ,鼠标变成小手形状,拖动即可 取消选区:快捷键 Ctrl+D 保存文件:【文件】-【存储为】-选择路径 选择
阅读全文
摘要:平日里在项目中处理JSON一般用的都是阿里巴巴的Fastjson,后来发现使用Spring Boot内置的Jackson来完成JSON的序列化和反序列化操作也挺方便。Jackson不但可以完成简单的序列化和反序列化操作,也能实现复杂的个性化的序列化和反序列化操作。 自定义ObjectMapper 我
阅读全文
摘要:本节简单介绍下如何在Spring Boot引入WebSocket,实现简单的客户端与服务端建立长连接并互发送文本消息。 1.框架搭建 新建一个Spring Boot项目,artifactId为spring-boot-websocket-socketjs,项目结构如下图所示: 项目的pom内容如下:
阅读全文
摘要:1.依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 2.配置 # Redis数据库索引(
阅读全文
摘要:全文总览 @Bean: 1.通过@Bean注解注册进IOC容器,也可通过@Bean("myUser")方式指定组件名。 @ComponentScan: 2.@ComponentScan: 2-1:@ComponentScan("cc.mrbird.demo"),路径下(默认注解所在类之路径及子路径)
阅读全文
摘要:全文概览 模式注解 @Component “派生性”:Spring中常见模式注解有@Service,@Repository,@Controller等,都“派生”自@Component注解。我们都知道,凡被@Component标注的类都会被Spring扫描并纳入到IOC容器中,so由@Componen
阅读全文
摘要:启动类上的复合注解@SpringBootApplication是springboot的核心注解, 其中 @EnableAutoConfiguration打开自动配置的功能,给容器导入META-INF/spring.factories 里定义的自动配置类。 @ComponentScan指定扫描路径,s
阅读全文
摘要:第一步:发起请求到前端控制器(DispatcherServlet) 第二步:前端控制器请求HandlerMapping查找 Handler (可以根据xml配置、注解进行查找) 第三步:处理器映射器HandlerMapping向前端控制器返回Handler,HandlerMapping会把请求映射为
阅读全文
摘要:Spring会把你发送的消息序列化为字节发送给MQ,接收消息的时候,还会把字节反序列化为Java对象。 不过,默认情况下Spring采用的序列化方式是JDK序列化。众所周知,JDK序列化存在下列问题: 数据体积过大 有安全漏洞 可读性差 测试 @Test public void testSendMa
阅读全文
摘要:拉取镜像 docker pull rabbitmq:3-management 运行容器 docker run \ -e RABBITMQ_DEFAULT_USER=itcast \ -e RABBITMQ_DEFAULT_PASS=123321 \ --name mq \ --hostname mq
阅读全文
摘要:1.依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> ##2. 配置 spring: rabbitmq
阅读全文
摘要:模式说明 Topic主题模式可以实现Pub/Sub发布与订阅模式和Routing路由模式的功能,只是Topic在配置routingkey 的时候可以使用通配符,显得更加灵活。 Routingkey 一般都是有一个或多个单词组成,多个单词之间以”.”分割,例如: item.insert 符号“#”匹配
阅读全文
摘要:模式说明: 队列与交换机的绑定,不能是任意绑定了,而是要指定一个RoutingKey(路由key) 消息的发送方在向Exchange发送消息时,也必须指定消息的RoutingKey Exchange不再把消息交给每一个绑定的队列,而是根据消息的RoutingKey进行判断;只有队列的Routingk
阅读全文
摘要:安装erlang环境 brew install erlang 安装rabbitmq brew install rabbitmq 安装RabiitMQ的可视化监控插件 // 切换到MQ目录,注意你的安装版本可能不是3.8.0 cd /usr/local/Cellar/rabbitmq/3.8.0/ /
阅读全文
摘要:Homebrew是一款包管理工具,目前支持macOS和Linux系统。主要有四个部分组成: brew、homebrew-core 、homebrew-cask、homebrew-bottles。 安装教程 参考手册
阅读全文