先简单概括下这个项目:外卖订餐平台Web,这个是承接我的这篇博文来续写的https://www.cnblogs.com/yycjavastudy/articles/12666104.html,在这一篇随笔中,将完成配料表的构造,用户视图的简单构造,外加上订单表单的输入及验证(不含数据库部分)

好了,进入正题,配料表的编写,在这里我体会到Spring编写JavaWeb的代码简洁之道,自从学习java以来,比较重视各个属性文件的起名,个人对于如i,ii,iii,a,b等让人抓狂的魔法命名方式是深恶痛觉的,除了学校里布置的简单Java小程序,内容有限,稍稍读下还是通的。废话不说了,上代码才是王道!

以下是我们初步的配料表:

 package tacos;

 import lombok.Data;
import lombok.RequiredArgsConstructor; @Data
@RequiredArgsConstructor
public class Ingredient {
private final String id;
private final String name;
private final Type type; public static enum Type{
CHICKENHOTPOT,PAIDAKIA,CHIPS,COLA,COFFE;
} }

保存后9-11行三个显眼报错!但无伤大雅,我们暂时先不管,首先说明一下这两个注解的来源是:Lombok,这个Lombok库呢并不是必需品,但它会让代码变得简洁。发现没有,private的三个属性,竟然没有setter,getter,还有一些常见的方法。提炼下《Spring实战》这本书上的意思,其一节省空间,其二短小简洁减轻开发难度时间。那么它是如何调用的呢,没错就是这个两个没有见过的注解@Data和@RequiredArgsConstructor。

其中@Data:告诉编译器,生成缺失方法(equals(),toString()等)并且将final属性生成构造器。(程序员偷懒福音!)

@RequiredArgsConstructor:会生成一个包含常量,和标识了NotNull的变量的构造方法。生成的构造方法是私有的private。(这个地方暂时有点疑惑)

关于STS引入这个依赖只需在pom.xml右键选择Edit Start并找到即可,如下图所示。

好了,现在还差最后一步也就是关于属性定义报错的问题。有人一看很简单final属性必须初始化嘛,所以呢我们还要把我们的STS给它装上Lombok(有点迷惑。。。)

这个神器库——Maven比较好(个人挺多jar包和插件都是上面扒的)直接甩链接:https://mvnrepository.com/artifact/org.projectlombok/lombok,选择顺眼的版本即可,然后按图片中顺序点击。最后检查STS文件夹中是否多出了个Lombok.jar,ini文件是否成功加入

No ERROR!!!

Spring Taco Cloud——配料表(Lombok的安装及其注解)的更多相关文章

  1. Eclipse中Lombok的安装和注解说明

    Lombok 可用来帮助开发人员消除 Java 的重复代码,尤其是对于简单的 Java 对象(POJO),比如说getter/setter/toString等方法的编写.它通过注解实现这一目的. 官网 ...

  2. Spring Taco Cloud——Controller的创建(含SpringMVC执行过程&SpringBoot&Spring三者解释及关联)

    在记录这次控制器编写前,对于Spring的感觉就是经常提这样代码好简洁,这样好方便,这个是用来干嘛的诸如之类的话. What is Spring ?这是我想问自己的,一直认为是简化代码利于工程的开源框 ...

  3. Spring Taco Cloud——design视图的创建(含thymeleaf模板遇到的一些小问题)

    先来看下综合前两篇内容加上本次视图的成果   可能不是很美观,因为并没有加css样式,我想等整个项目有个差不多的功能实现后再进行页面优化,请谅解 下面我贴上自己定义修改过的Taco的design视图代 ...

  4. spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法

    spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法 前言 本篇接着<spring boot / cloud ...

  5. spring boot / cloud (五) 自签SSL证书以及HTTPS

    spring boot / cloud (五) 自签SSL证书以及HTTPS 前言 什么是HTTPS? HTTPS(全称:Hyper Text Transfer Protocol over Secur ...

  6. spring boot / cloud (十五) 分布式调度中心进阶

    spring boot / cloud (十五) 分布式调度中心进阶 在<spring boot / cloud (十) 使用quartz搭建调度中心>这篇文章中介绍了如何在spring ...

  7. spring boot / cloud (十六) 分布式ID生成服务

    spring boot / cloud (十六) 分布式ID生成服务 在几乎所有的分布式系统或者采用了分库/分表设计的系统中,几乎都会需要生成数据的唯一标识ID的需求, 常规做法,是使用数据库中的自动 ...

  8. spring boot / cloud (十八) 使用docker快速搭建本地环境

    spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...

  9. spring boot / cloud (十九) 并发消费消息,如何保证入库的数据是最新的?

    spring boot / cloud (十九) 并发消费消息,如何保证入库的数据是最新的? 消息中间件在解决异步处理,模块间解耦和,和高流量场景的削峰,等情况下有着很广泛的应用 . 本文将跟大家一起 ...

随机推荐

  1. django使用户名和邮箱都能登录

    为了能够让邮箱也能登录,需要重新定义认证功能,需要把email添加成username用于认证 定义的class继承ModelBackend,使用Q方法并集 然后在settings.py里面添加 这样既 ...

  2. 数据结构 5 哈希表/HashMap 、自动扩容、多线程会出现的问题

    上一节,我们已经介绍了最重要的B树以及B+树,使用的情况以及区别的内容.当然,本节课,我们将学习重要的一个数据结构.哈希表 哈希表 哈希也常被称作是散列表,为什么要这么称呼呢,散列.散列.其元素分布较 ...

  3. js 实现简易留言板功能

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. (转)C++ 虚函数表解析

    原文地址:http://blog.csdn.net/haoel/article/details/1948051 C++ 虚函数表解析 陈皓 http://blog.csdn.net/haoel 前言 ...

  5. sql 语句系列(null 值处理)[八百章之第二章]

    查找只存在一个表中的数据 有两张表: EMP: select * from emp DEPT: 他们有共同的属性:deptno 现在要查询EMP 中的deptno不等于DEPTNO的deptno项. ...

  6. golang超级mapper包 - coven

    coven介绍 你可以把它理解成.NET 的 AutoMapper,java的modelmapper 一个快速的转换器去,支持结构到结构,切片到切片和映射到映射非反射转换,类型与嵌套指针支持. 不支持 ...

  7. Postman从入门到入门

    1.Postman简介 Postman是一个接口测试工具,在做接口测试的时候, Postman相当于一个客户端,可以发送请求到服务器端.Postman分为Chrome插件版本(不再更新维护)和Nati ...

  8. rest_framework之认证与权限 token不存数据库认证

    1. 认证 : 介绍: UserInfo表包含name , pwd , user_type三个字段 UserToken表包含token与user(关联UserInfo表) 当用户登录成功将随机字符串写 ...

  9. [ICRA 2019]Multi-Task Template Matching for Object Detection, Segmentation and Pose Estimation Using Depth Images

    简介         本文作者提出新的框架(MTTM),使用模板匹配来完成多个任务,从深度图的模板上找到目标物体,通过比较模板特征图与场景特征图来预测分割mask和模板与检测物体之间的位姿变换.作者提 ...

  10. 【2019多校第一场补题 / HDU6582】2019多校第一场E题1005Path——最短路径+网络流

    HDU6582链接 题意 在一张有向图中,有一个起点和一个终点,你需要删去部分路径,使得起点到终点的最短距离增加(并不要求需要使得距离变成最大值),且删除的路径长度最短.求删去的路径总长为多少 分析 ...