看完这一篇后我同事说我写代码像写诗,java商城项目面试

本文介绍了SpringBoot中的@ConfigurationProperties替代@Value,推荐使用构造器注入,强调代码模块化、减少异常返回、优化数据库查询、分离controller业务代码以及利用IDEA工具的价值。此外,还提到了Kafka技术的学习资源。
摘要由CSDN通过智能技术生成

用 @ConfigurationProperties 代替@Value

使用方法

定义对应字段的实体

@Data

// 指定前缀

@ConfigurationProperties(prefix = “developer”)

@Component

public class DeveloperProperty {

private String name;

private String website;

private String qq;

private String phoneNumber;

}

使用时注入这个bean

@RestController

@RequiredArgsConstructor

public class PropertyController {

final DeveloperProperty developerProperty;

@GetMapping(“/property”)

public Object index() {

return developerProperty.getName();

}

}

  1. 用@RequiredArgsConstructor代替@Autowired

我们都知道注入一个bean有三种方式哦(set注入, 构造器注入, 注解注入),spring推荐我们使用构造器的方式注入Bean

我们来看看上段代码编译完之后的样子

  RequiredArgsConstructor:lombok提供

3.代码模块化


阿里巴巴Java开发手册中说到每个方法的代码不要超过50行(我没记错的话)

在实际的开发中我们要善于拆分自己的接口或方法, 做到一个方法只处理一种逻辑, 说不定以后某个功能就用到了, 拿来即用

4. 抛异常而不是返回


在写业务代码的时候,经常会根据不同的结果返回不同的信息,尽量减少返回,会显得代码比较乱

反例

正例

4. 减少不必要的db


尽可能的减少对数据库的查询

举例子

删除一个服务(已下架或未上架的才能删除)

之前有看别人写的代码,会先根据id查询该记录,然后做一些判断

反例

正例

5. 不要返回null


反例

 正例

别处调用方法时,避免不必要的空指针

6. if else


不要太多了if else if

可以试试策略模式代替

还在if else else if ? 看看策略模式吧_Fighter-CSDN博客别再大量的if else了, 代码太简陋了, 可读性太差了.策略模式的定义定义一组算法,将每个算法都封装起来,并且使他们之间可以互换简单来说 互相独立 互不影响举栗子 if (“花呗支付”.equals(type)) {// 花呗支付的业务逻辑处理} else if (“微信支付”.equals(type)) {// 微信支付业务逻辑} else if (“云闪付”.equals(type)) {// 云闪付支付业务逻辑}外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传https://blog.csdn.net/weixin_44912855/article/details/117706343

7. 减少controller业务代码


业务代码尽量放到service层进行处理,后期维护起来也好操作而且美观

反例

正例

8. 利用好Idea


目前为止市面上的企业基本都用idea作为开发工具了吧

举一个小例子

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
img

Kafka进阶篇知识点

image

Kafka高级篇知识点

image

44个Kafka知识点(基础+进阶+高级)解析如下

image

由于篇幅有限,小编已将上面介绍的**《Kafka源码解析与实战》、Kafka面试专题解析、复习学习必备44个Kafka知识点(基础+进阶+高级)都整理成册,全部都是PDF文档**

[外链图片转存中…(img-rcsHShvG-1711183712101)]

Kafka高级篇知识点

[外链图片转存中…(img-Y87OzfcC-1711183712101)]

44个Kafka知识点(基础+进阶+高级)解析如下

[外链图片转存中…(img-4VhIHtEy-1711183712101)]

由于篇幅有限,小编已将上面介绍的**《Kafka源码解析与实战》、Kafka面试专题解析、复习学习必备44个Kafka知识点(基础+进阶+高级)都整理成册,全部都是PDF文档**

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 16
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值