当前位置: 首页 > news >正文

香港特别行政区网站建设_网站建设公司_全栈开发者_seo优化

ps做网站连接,wordpress点赞 1,保健品商城网站模板,wordpress创建多个分类目录在本文中#xff0c;我们将看到如何在常规Java代码中使用lombok来最小化代码长度和冗余。 什么是Lombok#xff1f; Lombok#xff0c;一个编译时注释预处理器#xff0c;有助于在编译时注入一些代码。 在详细介绍之前#xff0c;我要求您应该从他们的网站上观看视频。 … 在本文中我们将看到如何在常规Java代码中使用lombok来最小化代码长度和冗余。 什么是Lombok Lombok一个编译时注释预处理器有助于在编译时注入一些代码。 在详细介绍之前我要求您应该从他们的网站上观看视频。 我不会像这样进行现场演示但是我将展示如何在项目内部使用它包括Maven生命周期。 让我们从基本的了解开始。 如我所知lombok是一个编译时注释预处理器。 那是什么意思 -它将在编译时起作用我们可以在编写代码时看到效果 -在编译过程中使用javac命令执行我们需要类路径中的依赖项 -我们需要插件支持才能在编码时看到IDE的效果。因为IDE在编码/保存过程中会进行编译 Lombok有几个实用程序/功能。 我们将介绍到目前为止我使用过的主要项目。 注意要了解批注您可能会看到我的这篇文章。 安装方式 Eclipse从此链接下载并安装您需要显示eclipse安装目录 我已经检查了STS / eclipse版本3.7.3.RELEASE Intellij IDEA只需安装lombok插件。 文件-设置-插件-搜索/浏览以查看然后安装 或 插件链接 现在基于IDE行为您可能需要启用注释预处理器才能使插件正常工作。 通常现代IDE具有此默认设置 从Eclipse IntelliJ IDEA 项目设置 我将使用Maven您可以以相同的方式使用gradle。 我的Maven版本是3.3.9。 步骤1在pom.xml中添加依赖项 dependenciesdependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.16.8/version/dependency /dependencies 您可能会从Maven Central获得更新的版本。 步骤2如我们所见lombok是编译时预处理器因此我们需要编译器。 因此在build- plugins- plugin内添加maven编译器插件 plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdconfigurationcompilerVersion1.8/compilerVersionsource1.8/sourcetarget1.8/target/configuration /plugin 可以看到我已将源和目标版本定义为1.8。 步骤3现在我们需要添加lombok插件以在项目编译期间工作。 为此我们需要在插件管理中输入内容并在构建部分添加带有参数的插件。 pluginManagementpluginsplugingroupIdorg.projectlombok/groupIdartifactIdlombok-maven-plugin/artifactIdversion1.16.8.0/version/plugin/plugins /pluginManagement 用参数添加插件 plugingroupIdorg.projectlombok/groupIdartifactIdlombok-maven-plugin/artifactIdversion1.16.8.0/versionconfigurationencodingUTF-8/encoding/configurationexecutionsexecutionphasegenerate-sources/phasegoalsgoaltestDelombok/goalgoaldelombok/goal/goals/execution/executions /plugin 这里的空间注释 1.编码是必要的 2.您可以看到我使用了2个目标 这些是为测试和源范围定义为lombok定义的空间目标。 我同时使用两者因为我的测试代码也需要lombok。 因此我的构建部分就是这个。 buildpluginManagementpluginsplugingroupIdorg.projectlombok/groupIdartifactIdlombok-maven-plugin/artifactIdversion1.16.8.0/version/plugin/plugins/pluginManagementpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdconfigurationcompilerVersion1.8/compilerVersionsource1.8/sourcetarget1.8/target/configuration/pluginplugingroupIdorg.projectlombok/groupIdartifactIdlombok-maven-plugin/artifactIdversion1.16.8.0/versionconfigurationencodingUTF-8/encoding/configurationexecutionsexecutionphasegenerate-sources/phasegoalsgoaltestDelombok/goalgoaldelombok/goal/goals/execution/executions/plugin/plugins /build 并且对于日志记录我们需要具有依赖性。 我将添加所有类型的日志示例。 所以将所有这些加在一起 !--Logging external dependencies--dependencygroupIdcommons-logging/groupIdartifactIdcommons-logging/artifactIdversion1.2/version /dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-api/artifactIdversion1.7.21/version /dependency dependencygroupIdorg.slf4j/groupIdartifactIdslf4j-log4j12/artifactIdversion1.7.21/version /dependency dependencygroupIdorg.slf4j/groupIdartifactIdslf4j-ext/artifactIdversion1.7.21/version /dependency dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-slf4j-impl/artifactIdversion2.5/version /dependency 因此最后我的POM的构建部分如下所示 。 现在该看一下每个功能的用法了 注意对于eclipse和IntelliJ我都使用“大纲视图”来查看效果。 要启用大纲 Eclipse窗口-显示视图-大纲 IntelliJ查看-工具按钮将进行结构化。 Getter Setter它使带有变量的getter setter变得麻木。 它还支持访问级别参数以定义getter和setter的范围。 参数采用枚举参数AccessLevel PUBLIC 可公开访问 MODULEPACKAGE 与默认值相同不使用任何修饰符 受保护与受保护相同 私人与私人相同 NONE 不会执行 在课堂上 覆盖类级别的getter ToString这是toString的实现我们只能用于类级别。 参数 includeFieldNames布尔类型定义所有字段包含 callSuper布尔类型调用super doNotUseGetters布尔类型避免使用字段的获取器。 exclude字段名称的字符串数组定义字段排除 of字段名称的字符串数组定义要添加的字段显式 Data它是多个注释的组合。 哪里我们可以在类/类型之前使用 参数 注意数据包括 1. Getter 2. Setter。 3. RequiredArgsConstructor 4. Tostring 5. EqualsAndHashCode 范例 蚀 IntelliJ Value这只是Data的不可变值类型。 参数staticConstructor条目将默认构造函数设为私有 Builder向您的班级添加默认的构建器类。 它只是一个构建器如构建器模式带有参数请参见图像中的示例 Singular用于通知集合仅支持guava和Java util。 它包括2种加法器方法一次添加全部添加。 val这使局部最终变量内部方法 紧接在this或super之后 用途 1.像varjs / c一样使用它将作为最终版本 2.在foreach循环中。 public class ValExample {val items;public void aMethod() {val store new HashtableString, String();store.put(one, new String(Shantonu));val func store.get(one);System.out.println(func.toLowerCase());store.put(two, Andrii);store.put(three, Oleks);for(val v: store.entrySet()){System.out.println(KEY v.getKey(), VAL v.getValue());}} } NotNull这将对变量添加null检查并引发null指针异常。 使用范围方法参数局部变量 无需检查 与NotNull EqualsAndHashCode它简单地将equalsObject other和hashCode添加到类中。 因此它是类级别的注释。 它支持参数以自定义那些equals和哈希码方法。 所有参数均与ToString相同。 Cleanup这是清理资源的简单方法。 实际上它确保资源try方法将在try的finally块中调用。 仅局部变量 调用资源的关闭方法。 如果您有另一个方法名称则需要调用value thatMehtodName例如exit 您可以从这里看到一个简单的示例。 无需尝试捕获。 public class CleanupEx {public static void main(String[] args) throws IOException {String pom System.getProperty(user.dir) /pom.xml;String io System.getProperty(user.dir) /logs/io.txt;Cleanup InputStream in new FileInputStream(pom);Cleanup OutputStream out new FileOutputStream(io);int reading;char c;while ((readingin.read())!-1){c(char)reading;out.write(c);}out.flush();} } 注意我认为当您不关心管理资源时最好使用此功能。 如果您想按逻辑使用资源最好避免这种情况。 例如多线程资源的用法。 使用lombok记录 log这是最好的可用功能之一。 此图显示了要收集的所有记录器。 我在github中的示例将显示详细信息。 我们需要在上课之前设置日志仅此而已。 它会提供一个静态变量日志我们可以根据使用的日志类型来使用它。 Parameter它将主题作为参数默认情况下是类名。 我们可以设置日志主题。 注意对于不同的日志实现我们需要不同类型的配置。 Lombok不提供任何配置帮助仅注入代码。 因此我们需要添加取决于我添加的日志类型。 我在github中的示例包含所有6种日志配置类型。 仔细查看pom文件以了解依赖关系以及配置文件的资源。 Lombok示例github链接 https://github.com/sarkershantonu/practice-projects/tree/master/lombok-examples 注意由于没有测试范围我跳过了更多常规功能和实验功能在空间上为Synchronized。 我将在github存储库中一一添加其他内容并在此处添加参考注释。 翻译自: https://www.javacodegeeks.com/2016/06/lombok-compile-time-java-annotation-preprocessor-minimize-code-size.html
http://www.lebaoying.cn/news/87649.html

相关文章:

  • 个人网站设计源代码搜索企业的软件哪个好
  • 网站内容建设方法步骤奉化网站建设怎么样
  • 某网站网站的设计与实现电商详情页图片
  • 如何改wordpress网站图标wordpress萧涵主题
  • 免费建站还用学做网站吗东莞ppt免费模板下载网站
  • 西安网站制作价格长沙网上房地产官网
  • 免费网站部署免费中文WordPress主题
  • 网站的文章参考文献怎么做蓝色系 网站
  • 网站后台的目录在哪南京网站制作系统
  • 做美食网站的背景甘肃城乡建设局网站
  • 做银行设计有好的网站参考吗网络规划与设计就业前景
  • 企业网站申请流程新浪云sae免费wordpress网站
  • 代发货网站建设小木桥路建设工程招投标网站
  • c 可以做网站关于学院网站建设的通知
  • 怎么看网站做没做seo大学生网站建设方案
  • 可信验证网站成品网站 免费
  • 莱芜网站优化加徽信xiala5效果好温州哪里有做网站的公司4000-262-
  • 杭州做公司网站哪家好排行榜123网
  • 网站开发与管理论文网站要挂工商标识怎么做
  • 注册网站安全吗重庆建设工程交易中心官网
  • 房地产建设网站的意义网络技术服务包括哪些范围
  • 帝国cms 网站搬家wordpress 广告插件下载
  • 关注网站怎么做邯郸比较有名的网络推广公司
  • 东莞网站开发方案天津网站推广外包
  • 成都灯箱广告制作公司青岛seo精灵
  • 网站搜索框用ps怎么做网站制作超链接怎么做
  • 做免费网站网站建设属于什么资产
  • 企业北京响应式网站制作广州天河区景点
  • 手机如何制作网站和网页在网站建设工作会议上的讲话
  • 做一个网站一般费用做网站要源代码