Java语言
文章平均质量分 77
carson0408
热衷于编程,喜欢研究算法,挑战难题,享受AC的过程,希望自己能够不断进步,不断成长。
展开
-
领域驱动设计vs面向数据库编程
对于现在的大多数场景下,面向数据库编程对于实现功能来说是十分方便的,门槛比较低。主要三把斧,建表,orm框架生成dao方法,然后service层对dao进行复杂操作。最后可以封装接口提供给下游服务使用。但是对于一个复杂的场景来说,对于每张表进行各自的增删改查,这样的模型是松散的。注意点:1.一对多和一对一都需要在被维护端的实例中建立与维护端的相互关系 2.注意@Id注释不要引错包,org.springframework.data.annotation.Id;会带来实体...原创 2021-05-16 15:32:03 · 755 阅读 · 0 评论 -
Java Stream API
jdk1.8中新特性java Stream Api的呈现是java函数式编程引入之后的魔法糖之一。Stram API主要对流进行函数操作,使你的代码更简洁易读,更灵活,性能更好。我们通过以下几方面介绍Stream Api如何让我们的代码更加丝滑。1.创建流 流的创建直接使用Stream类的方法进行创建。1.1.创建空流Stream<Integer> emptyStream = Stream.empty();1.2.根据数组和集合创建流//...原创 2021-04-11 18:10:40 · 383 阅读 · 0 评论 -
聊聊CompletableFuture
自从java8引入了Stream、函数式编程、CompletableFuture等特性之后,给我们码代码提供了不少酷炫的操作。从JDK1.5开始我们就可以通过Future接口实现异步,主要是创建一个线程池,然后提交Runnable或者Callable的任务。然后可以用get来获取返回结果(执行完毕才会返回),传统回调最大的问题就是不能将控制流分离到不同的事件处理器中。而CompletableFuture弥补了缺陷。本文主要讲CompletableFuture相关的特性。 根据下面这行...原创 2021-03-28 21:56:27 · 289 阅读 · 0 评论 -
自定义注解+AOP
在我们日常编程过程中,会用到许多注解,比如@Component、@Bean等注解,这些注解有什么好处呢?最明显的便是简洁代码,省略很多不必要的代码,同时注解也可以实现多样化。一般自定义注解步骤主要是,定义注解类-->注解类使用-->解析注解,在运行时或编译期发现标记进行特殊处理。这样对于整个项目或者多个项目中可以使用自定义注解标记,完成自己需要的特定操作,避免了每个使用处都有大篇幅的解析代码。本文主要讲解自定义注解结合AOP的应用,其中可以利用AOP编程识别注解标记进行处理。 ...原创 2020-08-29 22:38:33 · 2218 阅读 · 0 评论 -
Spring Boot的属性配置
Spring Boot生成项目中有一个application.properties的文件,用于定义属性,那么如何在编程时使用这些属性就涉及到属性配置的问题。这里主要讲解两个方法,一种是直接用@Value("$(属性名)")注解来实现,由于有了@SpringBootApplication这个组合注解,可以直接使用@Value即可;另一种方法就是可以将属性与一个Bean关联起来,只需要...原创 2019-01-10 18:37:56 · 244 阅读 · 0 评论 -
基于Java配置的AOP
本文主要讲解的是AOP的内容,代码中将用Java配置代替xml配置。 Spring的AOP的存在则是为了解耦。虽然OOP是很好的编程思想,但是还是会出现大量的代码复制的情况,从而会造成代码的冗余。在OOP中只能通过继承类和实现接口,来使代码的耦合度增强,且类继承只能为单继承,阻碍更多行为添加到一组类上,而AOP的出现则弥补了OOP的不足,Spring支持Aspec...原创 2019-01-09 22:30:53 · 782 阅读 · 0 评论