自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 2021-09-12

ConcurrentHashMap 采用CAS和synchronized保证线程安全。 synchronized只锁定当前链表或红黑二叉树首节点,支持并发访问,修改。 put key和value都不能为null,否则会抛出nullPointerException。 HashMap的key和value都可以为null。 map.get(key)==null有两种可能。 1,该key在Map中不存在。 2,Key在Map中存在,但是value为null。 通过map.contains(key)==true判断是

2022-04-17 13:07:09 508

原创 FastJson

参考文章 Pom依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.43</version> </dependency> 说明 Bean的属性是私有的,一定要有set,get方法,否则序列化失败。 常用方法 字符串-》JSONObject: JSONOb

2020-10-29 22:53:22 789

原创 MapStruct

参考文章 pom依赖: <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>1.3.1.Final</version> </dependency> <dependency> <groupId>org.mapstruct</group

2020-10-29 22:04:39 2675

原创 Mybatis-select

Select: 属性: resultType: 类的完全限定名或者别名。如果是集合,应该设置为集合包含的类型而不是集合本身。 内置类型别名。如map。 <select id="selectPerson" parameterType="int" resultType="hashmap"> SELECT * FROM PERSON WHERE ID = #{id} </select> 返回一个 HashMap 类型的对象,其中的键是列名,值便是结果行中的对应值。 resultT

2020-10-29 09:06:57 322 1

原创 Mybatis-关联和集合

关联: <association property="author" column="blog_author_id" javaType="Author"> <id property="id" column="author_id"/> <result property="username" column="author_username"/> </association> 处理一对一关系。 association标签属性: property :

2020-10-27 22:41:00 498

原创 分布式

CAP原则: C一致性: Consistency 一致性。数据在多个副本之间是否能够保持一致的特性。即在分布式系统中,向某个服务中写入了输入,保证所有服务针对该数据保持一致,从任意一个服务获取该数据都是一致的,宏观上看保持一致。 A-可用性: Availability 可用性。分布式系统提供的服务必须一直处于可用状态。对每一个操作的请求必须在有限时间内返回非错误结果。如手机支付,提示“支付失败”,就是没有保证可用性。 P-分区容错性: Tolerance of network Partition 分区容错性

2020-10-27 00:09:29 205

原创 参数校验

参数校验: 单个参数校验: @RestController @Validated public class PingController { @GetMapping("/getUser") public String getUserStr(@NotNull(message = "name 不能为空") String name, @Max(value = 99, message = "不能大于99岁") Integer age) {

2020-10-25 20:29:46 1973

原创 SpringBoot单元测试

pom依赖: &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt; &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&

2020-10-25 11:36:58 679

原创 JAVA基础-异常捕获

异常捕获: try: 可能产生异常的代码。try代码块某条语句产生异常,跳到catch语句块,try中未执行完的语句直接跳过。 catch: 发生异常并且被捕获,才执行catch中代码块。没有产生异常或异常不匹配导致捕获失败,跳过相关catch代码快。 异常捕获失败,没有catch语句块捕获成功,执行完finally语句块,异常继续向上抛出。 try代码块可能会引发多种类型的异常,引发异常时,按顺序来查看每个 catch 代码块,执行第一个与异常类型匹配的catch块,其后catch块将忽略。 异常捕获原则

2020-10-24 18:00:40 2977

原创 Lombok

项目链接 Lombok: 简介: 通过注解,在编译阶段生成相关方法和类。 依赖: <!-- Lombok依赖,不属于springboot,cloud家族,版本号自行指定 --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope>

2020-10-21 00:16:06 378

原创 AOP

项目链接 AOP: AOP介绍: 什么是AOP: Aspect Oriented Programming面向切面编程。OOP中遇到的一些问题。是OOP的延续和扩展 在程序运行期间。 优势: 将某段代码动态的切入到指定方法的指定位置进行运行的这种编程方式,面向切面编程。AOP可以进行权限校验,日志记录,性能监控,事务控制。 Spring的AOP: AOP思想最早是由AOP联盟组织提出的。Spring是使用这种思想最好的框架。 Spring两套AOP开发方式: Spring传统开发方式(弃用)。 Spring基

2020-10-18 15:54:50 316

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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