Java注解的介绍和反射使用
功能:Java注解的介绍和反射使用
一、注解
1、注解介绍
java注解==(Annotation)==,又称为java标注,是jdk5.0引入的一种机制。
Java 语言中的类、方法、变量、参数和包等都可以被标注,对这些代码段进行解释,编译时生成class时,标注也可以被编译。在运行时,java可以通过反射获取到注解内容,进行一些骚操作,进而简化开发。
2、注解分类
Java 定义了一些注解,有些比较常见
@Override:检查方法是否重写父类方法
@Deprecated:标记方法过时
@SuppressWarnings:忽略警告
元注解,标注注解的注解,一切注解的开始
@Retention:使用范围,是只在代码中,还是编入class文件中,或者是在运行时可以通过反射访问
@Documented:标记这些注解是否包含在用户文档中
@Target:作用范围,可以标记哪些代码块,方法,类或者是字段等其他
@Inherited:标记这个注解是继承于哪个注解类
java7后加入的注解
@SafeVarargs:Java 7 开始支持,忽略任何使用参数为泛型变量 ...
git企业级版本管理
git企业级版本管理
一、介绍
git大家都知道,是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。它和SVN最大的不同,在与git分支的遍历。
但往往企业在使用git时,也仅仅把git当做SVN来使用,并没有很好的利用起git的分支,每个人都提交一堆commit,建立一堆杂乱无章的分支,导致项目的管理混乱。
所以需要企业根据实际的开发需要,定义一个git版本规范,是很有必要的。
二、分支命名
分支线
master:主分支,始终与线上发布的版本保持一致,只做合并,不做提交
test:测试分支,对应测试环境的分支
dev:开发分支,对应开发环境的分支
hotfix:火速修复分支,当线上代码出现bug,基于master分支创建出一个新的分支,进行修复bug
命名规则:[分支线]_[年月日 ]_信息
如开发权限代码:dev_20211128_auth
如线上支付出现bug:hotfix_20211128_pay
三、开发发布流程
3.1)正常版本需求开发
当开发人员需要开发新需求,开发人员需要基于master创建出一个新分支,注意分支名称要规范,例 ...
Java8新特性stream流
Java8新特性stream流
一、包装数据类型
123456789101112131415161718192021222324252627@Testpublic void main22() { List<Integer> list = new ArrayList<Integer>(){{ add(7); add(5); add(1); add(2); add(8); add(4); add(3); add(6); add(3); add(6); add(3); add(6); }}; // 过滤 List<Integer> filterList = list.stream().filter(a -> a < 5).collect(Collectors.toList()); // 排序(正序) List<Integer> sortList1 = list.stream().sorted().colle ...
SpringBoot日志配置详情
SpringBoot日志配置详情
一、介绍
在所有的项目中,日志是必不可少的,为了高效清晰的查找日志,可以配置日志输出的等级和格式。
在配置后,可以自定义输出日志到指定目录,可以按照天数来分割日志,可以按照日志级别分割日志,可以按照大小来进行分割日志。
输出的日志方式,可以说五花八门,但总有一款适合你的项目
二、简单配置
1、日志的级别
关于日志的级别打印,需要搞清楚日志等级的优先级
12345678910111213141516171819import lombok.extern.slf4j.Slf4j;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;@Slf4j@Componentpublic class LoggerTask { @Scheduled(cron = "0/30 * * * * ?") public void logTask(){ // ...
SpringBoot整合rabbitMq
SpringBoot整合rabbitMq
一、介绍
消息队列(Message Queue)简称mq,本文将介绍SpringBoot整合rabbitmq的功能使用
队列是一种数据结构,就像排队一样,遵循先进先出的原则。
而消息队列是一种消息中间件,在项目中我们可以将消息打包放入队列,再由消费者监听进行处理数据,再进行业务的处理
那么使用队列可以带来哪些好处呢
解耦
异步
流量削峰/限流
原本的程序再装上了消息中间件后,有哪些事需要特别注意的呢
高可用:简单点就是说,要保证消息中间件不要那么容易崩溃。作为桥梁的消息中间件崩溃了,那整个系统就相当于崩溃的情况的
数据丢失
重复消费
顺序性
话不多说,优缺点的例子以后补上,先来开始使用rabbitmq吧
二、rabbitmq的安装,项目依赖和相关配置
安装我就不多说了,我是通过这篇博客安装成功的,大家可以试试。
本文rabbitmq使用的版本是3.8.5,在不同版本下可能会出现与本文不同的结果,甚至是报错
创建springBoot项目,引入项目依赖,本文使用的springBoot版本为2.4.2,算是比较新的 ...