最新要闻
- 当前关注:双拖布+超大吸力!小米米家扫拖机器人3S发售:千元旗舰
- 世界视点!特斯拉一体化压铸工艺被质疑增加修车成本 一个小碰撞可能要修11万
- 精彩看点:追上Intel AMD锐龙7000处理器终于用上192GB内存:频率满血
- 环球看热讯:315全景观察:深情主播“连哄带骗” 爸妈的钱就没了
- 最新:无解了!微软将推出基于GPT-4的Office 365服务 实用性拉满
- 【焦点热闻】北京通州区汽车消费券活动时间是什么时候?
- 【世界播资讯】重庆龙凤胎熊猫宝宝取名“渝可”“渝爱”
- 速看:《小美人鱼》剧照还原动画经典场景:就是肤色不太对
- 头条焦点:中国制造!索尼第四代降噪豆XM5佩戴/音质/快充全面升级:AirPods Pro2劲敌
- 老人墓中藏13万现金全部霉变 专业能手全力抢救:官方科普纸钞如何保管
- 海底捞部分门店取消免费美甲:只能付费购买穿戴甲
- 今热点:五菱电动“吉姆尼” 宝骏悦也续航里程公布:能跑303公里
- 董明珠要玩大的?格力成立房地产新公司 投资数亿元
- 东方甄选称被骗了 虾品供应商发声:不认可甩锅行为
- 热点在线丨百度文心一言申请页被挤爆:预约1小时涌入3万企业
- 环球快讯:现实版GTA!美劫匪偷直升机因操作失误当场坠毁:一地碎片
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
day05-Lombok、SpringInitializer
Lombok、Spring-Initializer
1.Lombok
1.1Lombok介绍
- Lombok的作用是:
- 简化Javabean的开发,可以使用Lombok的注解让代码更加简洁
- Java项目中,很多没有技术含量又必须存在的代码:比如POJO类的getter、setter、toString方法;异常处理;IO流的关闭操作等等。这些代码既没有技术含量又影响着代码的美观,因此Lombok应运而生。
- SpringBoot和IDEA的官方支持
- IDEA2020已经内置了Lombok插件
- SpringBoot2.1.x之后的版本也在Starter中内置了Lombok依赖
1.2Lombok常用注解
https://www.modb.pro/db/138770
https://www.cnblogs.com/zwbsoft/p/16124806.html
注解 | 解释 |
---|---|
@Data | 只能标注到类上,综合@Getter、@Setter、@RequiredArgsConstructor @ToString、@EqualsAndHashCode五个注解的功能。 |
@Setter | 可标注到类或属性上,标注到类上表示此类中的所有属性生成setter方法,标注到某个属性上,表示此属性生成setter方法。 |
@Getter | 可标注到类或属性上,标注到类上表示此类中的所有属性生成getter方法,标注到某个属性上,表示此属性生成getter方法。 |
@Log4j | 注解在类上,为类提供一个属性名为log的log4j日志对象 |
@NoArgsConstructor | 只能标注到类上,生成无参的构造方法。 |
@AllArgsConstructor | 只能标注到类上,生成包含所有属性的构造方法,使用此注解时建议和@NoArgsConstructor结合使用,否则此类将没有无参的构造方法。 |
@RequiredArgsConstructor | 写在类上可以代替@AutoWired注解,需要注意的是在注入时需要用final定义,或者使用@notnull注解 |
@Cleanup | 可以关闭流 |
@Builder | 被注解的类加个构造者模式 |
@Synchronized | 加同步锁 |
@SneakyThrows | 等同于try/catch捕获异常 |
@NonNull | 如果修饰于参数,当参数为null时会抛出空指针异常 |
@Value | 只能标注到类上,综合@Getter,@Setter,@ToString,@EqualsAndHashCode,@NoArgsConstructor五个注解的功能,和@Data不同的是,默认将所有属性定义成final的,也就是只会生成getter方法,不会生成setter方法,如果不需要final,则给属性加上@NonFinal注解即可。 |
3.应用实例
(1)使用Lombok要先引入相关库
(资料图片仅供参考)
org.projectlombok lombok
(2)User.java
package com.li.springboot.bean;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import lombok.ToString;/** * @author 李 * @version 1.0 *///@ToString //在编译时,生成toString方法,默认情况下也会生成一个无参构造器//@Data //等价于@Getter+@Setter+@RequiredArgsConstructor+@ToString+@EqualsAndHashCode//@NoArgsConstructor //编译时会生成无参构造器,它的意义在于显式定义,防止会有参构造器覆盖//@AllArgsConstructor //编译时生成全参构造器(注意如果没有声明无参构造器时,全参构造器会覆盖它)public class User { private Integer id; private String name; private String address;}
4.安装插件
- 不安装插件也可以使用基本的注解,比如@Data,@Getter等
- 但是不能使用其扩展功能,比如日志输出
演示使用Lombok-@Slf4j
(1)User.java
package com.li.springboot.bean;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import lombok.ToString;import org.springframework.stereotype.Component;/** * @author 李 * @version 1.0 */@Component@ToString @Getter@Setter@NoArgsConstructorpublic class User { private Integer id; private String name; private String address;}
(2)控制器
package com.li;import com.li.springboot.bean.User;import lombok.extern.slf4j.Slf4j;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;/** * @author 李 * @version 1.0 */@Slf4j@Controllerpublic class HiController { @Resource private User user; @RequestMapping("/user") @ResponseBody public User user() { //使用@Slf4j日志输出 //普通方式输出: log.info("user="+user); //占位符方式输出: log.info("user={},myuser={}",user,user); return user; }}
注意,如果以json格式返回,那么Javabean中需要设置Getter和Setter方法。
2.Spring-Initializer
2.1Spring Initializer介绍
Spring Initializer的作用
- 程序员通过Maven Archetype 来生成Maven项目,项目原型相对简陋,需要手动配置,比较灵活。
- 通过Spring官方提供的Spring Initializer来构建Maven项目,能完美支持IDEA和Eclipse,让程序员来选择需要的开发场景(starter),还能自动生成自动类和单元测试代码
- Spring Initializer对IDEA版本有要求,还需要注意网络问题
2.2使用演示
演示使用Spring-Initializer创建SpringBoot项目,并支持web应用场景,支持mybatis
2.2.1方式1-IDEA创建
(1)File-New-Project 创建项目
(2)选择Spring Initializer(如果没有看到这个选项,需要安装Spring Initializer插件)
(3)选择版本和依赖
(4)项目创建好之后自动生成启动类和单元测试代码
2.2.2方式2-官网创建下载
(1)直接到官网去创建项目然后下载
(2)下载完毕,使用idea打开,它的结构和方式一生成的一样
2.3注意事项和使用细节
如果通过Spring Initializer创建的pom.xml文件报错,可能是版本问题。解决方式是:指定版本和当前的SpringBoot一致,再刷新maven即可解决
关键词:
-
day05-Lombok、SpringInitializer
Lombok、Spring-Initializer1 Lombok1 1Lombok介绍Lombok的作用是:简化Javabean的开发,可以使用Lomb...
来源: 世界观速讯丨点积、内积、外积、叉积、张量积——概念区分
day05-Lombok、SpringInitializer
【世界聚看点】国家推出稳定2023年大豆生产一揽子支持政策
当前关注:双拖布+超大吸力!小米米家扫拖机器人3S发售:千元旗舰
世界视点!特斯拉一体化压铸工艺被质疑增加修车成本 一个小碰撞可能要修11万
精彩看点:追上Intel AMD锐龙7000处理器终于用上192GB内存:频率满血
环球看热讯:315全景观察:深情主播“连哄带骗” 爸妈的钱就没了
最新:无解了!微软将推出基于GPT-4的Office 365服务 实用性拉满
【焦点热闻】北京通州区汽车消费券活动时间是什么时候?
Redis监控
sed文本处理工具常见用法
每日看点!Prometheus 监控系统1
Java中的NIO
环球快报:带你全方面了解字节 A/B 实验的文化与工具
世界新资讯:【金融街发布】交易商协会发布企业资产证券化基础性制度
【世界播资讯】重庆龙凤胎熊猫宝宝取名“渝可”“渝爱”
速看:《小美人鱼》剧照还原动画经典场景:就是肤色不太对
头条焦点:中国制造!索尼第四代降噪豆XM5佩戴/音质/快充全面升级:AirPods Pro2劲敌
老人墓中藏13万现金全部霉变 专业能手全力抢救:官方科普纸钞如何保管
海底捞部分门店取消免费美甲:只能付费购买穿戴甲
视讯!SQLMap 源码阅读
今日观点!abc285G
环球精选!JVM -Xss
【高端访谈·城市力量】“双碳”背景下农商银行如何“点绿”成金?——访秦农银行党委书记、董事长李彬
今热点:五菱电动“吉姆尼” 宝骏悦也续航里程公布:能跑303公里
董明珠要玩大的?格力成立房地产新公司 投资数亿元
东方甄选称被骗了 虾品供应商发声:不认可甩锅行为
热点在线丨百度文心一言申请页被挤爆:预约1小时涌入3万企业
环球快讯:现实版GTA!美劫匪偷直升机因操作失误当场坠毁:一地碎片
国宝大熊猫的视频_国宝大熊猫的故事
66.类型转换
快讯:【0基础学爬虫】爬虫基础之抓包工具的使用
天天热头条丨制作学生信息管理系统
文心一言正式对标GPT-4,是青铜还是王者?
全球播报:恒生指数16日收跌1.72% 互联网科技股集体走低
每日速看!铁匠用30年给猫和老鼠做铠甲:一套比一套帅!
戴尔推出了灵越14 ARM版:骁龙8cx Gen 2、16小时长续航
世界播报:卡布达归来!《铁甲小宝》高清修复版将至:已开通B站账号
两败俱伤:比亚迪海豹街头铲翻宝马X5
块级元素和行内元素
天天实时:SublimeREPL设置详解——实现代码传递(Eval in REPL)
天天观速讯丨JavaScript 实现异步任务循环顺序执行
自定义 Spring 通用日志注解
精彩看点:日债市场继续消化欧美银行风险扰动 收益率曲线陡峭化下移
即时焦点:【财经分析】债市利空反应钝化 后市操作存分歧
每日快报!【新华500】新华500指数(989001)16日跌1.29%
【环球时快讯】小伙爆改特斯拉Model 3:加装120寸轮毂、增加“逆天”功能
【新要闻】百度文心一言问答测试为视频演示 李彦宏:为保证效果提前录制
全球实时:深蓝SL03车主联合声明:长安雇水军打压车主 要求车辆终身质保加补偿
国内首款天玑9000旗舰平板!OPPO Pad 2官宣:下周发布
【世界时快讯】曾投资一亿美元:马斯克痛批OpenAI成为营利组织
冰墩墩钥匙扣(冰墩墩多少钱一只)
最新消息:76.qt qml-QianWindow开源炫酷界面框架(支持白色暗黑渐变自定义控件均以适配)
今热点:Markdown用法解析
世界微动态丨得物从0到1自研客服IM系统的技术实践之路
天天看热讯:性能优化搞得好,Tomcat少不了。| 博学谷狂野架构师
世界观天下!笔记本水冷改造记录
世界球精选!创维造车:主打座舱养生续命、碰撞测试0分!真是讽刺他妈给讽刺开门
环球即时:反转!国内油价明晚大概率下跌 预计下调0.07元/升
《暗黑4》本周末开测 世界BOSS刷新时间公布
天天关注:巴奴火锅下架富硒土豆!消费者可获赠500元储值卡:领取有条件
天天热推荐:百度发布文心一言AI模型:可实现文字、图片与视频智能生成
喝的人越来越少!星巴克向中国三四线城市进军:30多一杯咖啡县城青年能爱多久
麦芒11什么时候上市的?麦芒11手机参数配置
华为电视怎么投屏?华为电视怎么下载第三方软件?
孙海洋是湖北哪里人?
鲶鱼效应是什么意思?鲶鱼效应的经典案例是什么?
首店经济是什么意思?首店经济是谁提出的?
快报:权志龙演唱会门票多少钱2020_权志龙演唱会门票多少钱
环球讯息:用图技术搞定附近好友、时空交集等 7 个典型社交网络应用
GPT-4测评,大家先别急,图片输入还没来
全球时讯:C#使用ObjectPool提高StringBuilder性能
今头条!RTX 40笔记本新品翻车?别急 先升级NVIDIA新驱动再说
每日精选:官宣!《炉石传说》被移出杭州亚运会项目:职业选手难过
环球快消息!360发布年度手机安全报告:受骗男性占七成 女性三成
天天最资讯丨800V电气架构打造 全新起亚EV9发布:二三排可面对面乘坐
扣上的安全带会自动打开?本田在美国召回近45万辆汽车
【独家焦点】虹科案例|虹科Visokio商业智能平台在疫后帮酒店业打好翻身仗!
环球今热点:python 二分法查找
环球实时:面试问题-密码
Fortran语言在线代码运行编译工具推荐
Scrapy中的response对象的属性及方法,附加mate属性的使用方法
每日短讯:强冷空气来袭!河南三门峡3月下雪:厚厚一层一夜回冬
环球要闻:爱立信CEO:印度是全球推出5G速度最快的国家之一
上映25周年纪念:3D重制版《泰坦尼克号》国内定档
真凉了!暴雪网易闹掰 《炉石传说》或被移出杭州亚运会项目
世界快看:B站投资 网红爆款:理然男士沐浴露29.9元狂促
更改 ESX 或 ESXi 主机的主机名称
每日快讯!作业DNS服务配置
NOI 2008 志愿者招募 题解 (神奇费用流)
NutUI-React 京东移动端组件库 2月份上新!欢迎使用!
传递“坚持”背后的感人力量
环球新资讯:恒生中国发布2022年ESG报告 持续提升绿色金融产品与服务质量
日本央行削减购债引发政策转向猜测 超长端日债收益率显著回升
天天精选!中银香港完成5亿绿色人民币逆回购交易
世界今日讯!预购玩家可抢先游玩:《暗黑破坏神4》已开启Beta测试预载
天天看点:8999元 联想小新Pro27 2023一体机来了:13代i9、锐炫A370M独显
苦情戏直播涉事公司被查处!央视315点名诱骗老人直播间均已被封
比降价还狠!最帅国产猎装车极氪001限时福利:数万元升级包免费选
398元烫发烫完变成3980元 商家:把头发分成10个区域 每个区域398元