Что такое Ломбок? Это метод, который может помочь нам устранить тот код, который должен быть написан, но повторяется, например, сеттеры, Getters, конструкторы и т. Д.
Во -первых, давайте кратко поговорим об установке Ломбока для идеи. Есть два способа:
1. Загрузите его непосредственно с http://plugins.jetbrains.com/, затем поместите в плагины ниже файла установки Idea, а затем перезапустите идею
2. В соответствии с настройками (Windows) или настройки (Mac) идеи найдите меню плагинов и нажмите «Обзор репозитории», как показано на рисунке
Затем найдите Lombok, нажмите «Право на загрузку», «Скачать и перезапустить», как показано на картинке
Создайте новый проект, добавьте зависимости Lombok в файл POM, а полный POM заключается в следующем:
<? xml version = "1.0" Encoding = "utf-8"?> <project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <doliderversion> 4.0.0 </modelversion> <groupid> com.dalaoyang </GroupDsion> 4.0.0 <ratifactid> springboot_lombok </artifactid> <sersive> 0.0.1-snapshot </version> <duckaging> jar </упаковка> <mame> springboot_lombok </name> <sescription> springboot_lombok </description> <parent> <groupid> org.spramework.boot </GroupId> <ratfactid> Spring-Boot-Starter-parent </artifactid> <sersion> 1.5.9.reelease </version> <venterativePath/> <!-Поиск родителя от репозитория-> </parent> <properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <project.reporting.outputencoding> UTF-8 </Project.Report.OutputEncoding> <java.version> 1.8 </java.version> </свойства> <Depertiencies> <dependency> <groupid> org.springframework.boot </Groupid> <ArtifactId> Spring-boot-starter-web-web <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </depertive> <dependency> <groupid> org.projectlombok </GroupId> <artifactid> lombok </artifactid> <sersive> 1.16.20 </version> </depertive> </depertive> <buld> <blicins> <bricin> <groupid> org.spramework.boot </GroupD> <Artifactid> Spring-boot-maven-plugin </artifactid> </placin> </plugins> </build> </project>
Создайте новый класс пользователя, это класс, который использует Lombok, код выглядит следующим образом:
Пакет com.dalaoyang.entity; импорт lombok.allargsconstructor; импорт lombok.data; импортировать lombok.noargsconstructor;/** * @author dalaoyang * @description * @project springboot_learn * @package com.dalaoyang * @email yangyant@dalaoy * @package com.dalaoyang * @email yangyang @dalaoyang. */@Data@allargscstructor@noargscstrontruprupublic class user {private Integer id; Приватное название строки; Private String Password;}Создайте новый класс пользователя, такой же, как и раньше, чтобы сравнить преимущества использования Lombok, код заключается в следующем:
пакет com.dalaoyang.entity; import java.util.objects;/** * @author dalaoyang * @description * @project springboot_learn * @package com.dalaoyang.entity * @email [email protected] * @date 2018/5/7 */public usernolbok @dalaoyang.cn * @date 2018/7/7 */public usernolbok {private. Приватное название строки; Private String Password; public integer getId () {return id; } public void setId (Integer id) {this.id = id; } public String getName () {return name; } public void setName (string name) {this.name = name; } public String getPassword () {return пароль; } public void setPassword (String password) {this.password = password; } public usernolombok (целочисленный идентификатор, имя строки, String пароль) {this.id = id; this.name = name; this.password = пароль; } public usernolombok () {} @Override public boolean equals (Object o) {if (this == o) вернуть true; if (o == null || getClass ()! = o.getClass ()) вернуть false; Использование, что = (Usernolombok) o; return objects.equals (id, that.id) && objects.equals (name, that.name) && objects.equals (пароль, warpsword); } @Override public int hashcode () {return objects.hash (id, имя, пароль); } @Override public String toString () {return "usernolombok {" + "id =" + id + ", name = '" + name +'/'' + ", password = '" + password +'/'' + '}'; }}
Затем создайте новый тест UserController, код заключается в следующем:
Пакет com.dalaoyang.controller; import com.dalaoyang.entity.user; import org.springframework.web.bind.annotation.getMaping; импорт org.springframework.web.bindtation.restcontroller;/** * @author dalaoyang * @description * @probood * com.dalaoyang.controller * @email [email protected] * @date 2018/5/7 */ @restcontrollerpublic class usercontroller {@getmaping ("/testuser") public user getUser () {user user = new user (); user.setid (1); user.setname ("dalaoyang"); user.setpassword ("123"); System.out.println (user.toString ()); вернуть пользователь; }}
Посетите http: // localhost: 8080/testuser, как показано на рисунке
Ломбок аннотации Введение:
@Data Tag, генерируйте Getter/Setter toString () и другие методы
@Nonnull: заставьте вас не волноваться и влюбиться в NullPointerException
@Cleanup: Автоматическое управление ресурсами: наконец не нужно добавлять ресурсы
@Setter/@getter: автоматически генерировать настройки и получить методы
@ToString: автоматически генерировать метод ToString
@Equalsandhashcode: генерируйте реализации хэшкода и равны полям объекта
@Noargsconstructor/@requiredargsconstructor/@allargscstrontructor
Автоматически генерировать метод строительства
@Data: автоматически генерировать метод SET/GET, метод ToString, Equals Method, метод хэшкода, метод конструктора без параметров
@Value: используется для аннотирования окончательных классов
@Builder: генерировать классы API комплексных строителей
@Sneakythrows: обработка исключений (с осторожностью используйте)
@Synchronized: Синхронизированный метод безопасного преобразования
@Getter (lazy = true):
@Log: поддерживает различные объекты регистрации и используйте соответствующие аннотации при их использовании, например: @log4j
Скачать исходный код: Большой Лао Ян Маюн
Локальный исходный код Адрес: springboot-lombok_jb51.rar
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.