介绍
介绍
福哥今天带着大家来继续开发我们的TFSpring框架,今天要将的是Java开发的基础设计对象——实体(Entity)。
所谓实体其实就是相对于面向对象开发模式来说的,Java语言是彻头彻尾的面向对象的编程语言,在Java程序里无论是控制器、模型、配置信息、包括数据结构都是使用对象来实现的。我们设计一个系统的模型结构的时候会抽象出很多模型对象出来,这些抽象模型在被填充实际的数据之后就成为了实体对象,实体对象就是有意义的了,它代表着一个用户?一件商品?一条评论?一个订单等等具体内容。
实体对象的数据作为对象的属性存储在对象内部,我们要获取对象的属性或者设置对象的属性都服务对象的属性,虽然通过将对象属性公开化(public)可以满足需要,但是大家都是通过getter/setter方法来访问对象属性的。比如对象有个属性是id,获取id需要使用getId方法,设置id需要使用setId方法,在对象属性非常多的情况下编写getter/setter方法就够我们喝一壶的了。这里面有一个方便的插件可以帮助我们实现这些繁琐的体力劳动,它就是lombok插件。
实体对象
首先我们在entity目录下建立一个Demo实体对象,给它设置一个id和一个label两个属性。
代码
package net.tongfu.tfspring.demo.entity; public class Demo { Integer id; String label; public Integer getId(){ return id; } public void setId(Integer id){ this.id = id; } public String getLabel(){ return label; } public void setLabel(String label){ this.label = label; } }
大家可以看到这么简单的一个实体对象,只包含了两个属性,就要写这么一堆代码。
安装Lombok
现在我们要安装lombok插件,帮助我们解决实体对象的getter/setter方法的问题了。
添加依赖
打开pom.xml文件,在dependencies下面添加如下依赖代码。
<!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.16</version> </dependency>
点击右小角的import changes自己安装lombok库
导入插件
一般情况下安装依赖在pom.xml添加完依赖就可以使用了,因为lombok是非常规库,所以需要安装针对IDEA的插件才行。
打开File > Settings窗口,点开Plugins页,在右边搜索“lombok”,点击“Install”安装它。
安装完成后,点“Restart IDE”重启IDEA。
测试
现在重新打开Demo实体,删除掉全部的getter/setter代码,在class定义前面增加“Data”注解。
package net.tongfu.tfspring.demo.entity; import lombok.Data; @Data public class Demo { Integer id; String label; }
这样Demo实体就自动拥有了getter/setter方法了,是不是很棒啊?
测试
现在我们打开DemoController控制器,把数据类型改成Demo实体试试看。
@RequestMapping ("/demo") public Demo responseDemo(){ Demo demo = new Demo(); demo.setId(1); demo.setLabel("福哥"); return demo; }
可以看到Demo实体自动转换成了JSON数据格式显示出来了,这也是SpringBoot的强大之处了。
总结
今天福哥带着童鞋们了解了什么是实体对象和实体对象的getter/setter方法以及如何通过lombok自动完成实体对象的getter/setter方法的技巧。
实体对象在PHP语言里面一般情况下以array形式出现,PHP的array是一大神器可以随意的组合各种数据结构,不过在PHP7开始福哥在PHP程序里面也使用了实体对象的设计模式了,因为实体对象可以帮助我们实现自动补全的功能,这个太方便了。