08 2024 档案

摘要:Reference Core Features JSON 支持Gson、Jackson、JSON-B。 SpringBoot提供了组件spring-boot-starter-json。 注解,如下: @JsonComponent @JsonMixin 重要的类,如下: JsonSerializer 阅读全文
posted @ 2024-08-25 15:12 jackieathome 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Dependency Versions 维护开源软件清单,并不是一个轻松、愉快的工作。 很好奇SpringBoot的开发团队使用什么方式来管理、维护依赖清单,完成兼容性验证工作等。 Managed Dependency Coordinates SpringBoot集成的开源软件的清单,以及版本号。 阅读全文
posted @ 2024-08-25 11:44 jackieathome 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Configuration Metadata 现代的IDE通过解析配置项的元数据信息,从而可以为开发者提供提示信息和补齐能力,提高维护配置文件的效率。 SpringBoot支持的配置文件,比如application.properties或者application.yaml。 对于一般的开发者而言,只 阅读全文
posted @ 2024-08-25 11:38 jackieathome 阅读(11) 评论(0) 推荐(0) 编辑
摘要:The Executable Jar Format 使用spring-boot-maven-plugin构建项目时,生成的目标jar文件的格式的说明。 Nested JARs 以JarLauncher为例: META-INF/MANIFEST.MF,定义jar的元数据。 org.springfram 阅读全文
posted @ 2024-08-25 11:27 jackieathome 阅读(13) 评论(0) 推荐(0) 编辑
摘要:市面上常见的日志记录框架,如下: Logback Log4j2 Log4j 1.X 官方维护已停止,基本上只有老旧项目在使用。 JUL Commons Logging SLF4J 新项目启动时,通常集成SLF4J和Log4j2,代码中使用SLF4J的日志API来记录日志,使用Log4j2来管理日志的 阅读全文
posted @ 2024-08-25 11:00 jackieathome 阅读(7) 评论(0) 推荐(0) 编辑
摘要:Web 基于SpringBoot框架开发应用,支持内嵌Tomcat/Jetty/Undertow/Netty来提供HTTP服务器。 SpringBoot当前封装了如下组件: spring-boot-starter-web spring-boot-starter-webflux Servlet Web 阅读全文
posted @ 2024-08-25 10:36 jackieathome 阅读(65) 评论(0) 推荐(0) 编辑
摘要:Data Databases SQL Databases SpringBoot提供组件: spring-boot-starter-data-jpa spring-boot-starter-jdbc spring-boot-starter-data-jdbc 关键类,如下: JdbcClient Jd 阅读全文
posted @ 2024-08-24 21:34 jackieathome 阅读(7) 评论(0) 推荐(0) 编辑
摘要:IO Caching Caching SpringBoot提供组件spring-boot-starter-cache,提供缓存能力。 关键类,如下: CacheManager CacheResolver CacheManagerCustomizer ConcurrentMapCacheManager 阅读全文
posted @ 2024-08-24 21:02 jackieathome 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Messaging JMS JMS 关键类,如下: jakarta.jms.ConnectionFactory jakarta.jms.Connection JmsTemplate ActiveMQProperties ActiveMQConnectionFactoryCustomizer JmsL 阅读全文
posted @ 2024-08-24 20:17 jackieathome 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Testing SpringBoot提供了组件spring-boot-test供开发者集成。 Test Scope Dependencies 组件spring-boot-test导入了对如下测试工具的依赖。 JUnit 5: The de-facto standard for unit testin 阅读全文
posted @ 2024-08-24 15:19 jackieathome 阅读(6) 评论(0) 推荐(0) 编辑
摘要:Packaging Spring Boot Applications Efficient Deployments Efficient Deployments 默认情况下,基于SpringBoot框架开发应用时,构建插件spring-boot-maven-plugin将项目打包为fat jar。 执行 阅读全文
posted @ 2024-08-24 14:59 jackieathome 阅读(40) 评论(0) 推荐(0) 编辑
摘要:Reference Core Features Profiles 类似Maven的Profile特性,限定配置项取值的生效场景。 在代码中,对于使用注解@Component、@Configuration、@ConfigurationProperties标记的类,可以增加@Profile,限定前述类的 阅读全文
posted @ 2024-08-19 23:11 jackieathome 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Reference Core Features Externalized Configuration SpringBoot应用可以从properties文件、yaml文件、环境变量、命令行参数中得到配置参数。 代码里可以使用注解@Value读取配置项的值。 配置项参数的加载顺序,后加载的属性,可以覆 阅读全文
posted @ 2024-08-18 22:59 jackieathome 阅读(56) 评论(0) 推荐(0) 编辑
摘要:Reference Core Features SpringApplication 使用SpringBoot开发应用,最简单的启动类,代码内容如下: import org.springframework.boot.SpringApplication; import org.springframewo 阅读全文
posted @ 2024-08-18 17:00 jackieathome 阅读(49) 评论(0) 推荐(0) 编辑
摘要:Reference Developing with Spring Boot Build Systems SpringBoot官方提供的starter的列表。 Structuring Your Code 避免使用的默认包。 应用的入口类,推荐放置在顶层包下。 Configuration Classes 阅读全文
posted @ 2024-08-18 15:39 jackieathome 阅读(35) 评论(0) 推荐(0) 编辑
摘要:Overview Documentation Requirements Spring Boot 3.3.2需要配套Java 17及以上的版本使用。 Installing Upgrading 对于使用1.X版本的项目,升级至当前的2.X及3.X版本时,需要详细阅读迁移指导。 升级SpringBoot版 阅读全文
posted @ 2024-08-18 11:58 jackieathome 阅读(42) 评论(0) 推荐(0) 编辑
摘要:入行的时候,构建项目的工具为Ant,后来在新项目中引入了Maven。 Ant类似于C语言,构建过程的每个环节,都需要详细指定,虽然功能很强大,但是写构建脚本的过程,开发体验和维护体验比较差。 Maven类似于C++语言,基于项目模型、约定大于配置等理念,重新定义了构建过程,分离框架和插件的交互和职责 阅读全文
posted @ 2024-08-18 00:02 jackieathome 阅读(35) 评论(0) 推荐(0) 编辑
摘要:官网 代码仓库 Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas 官方文档-中文 官方文档-英文 使用指导 常见问题 常见的现象,如下: CPU占用率高,接口的响应时延大。 CPU占用率低,接口的响应时延大或者无响应。 功能测试的场 阅读全文
posted @ 2024-08-14 23:01 jackieathome 阅读(99) 评论(0) 推荐(0) 编辑
摘要:约法三章 引用自约法三章,内容如下: 西汉·司马迁《史记·高祖本纪》:“与父老约,法三章耳;杀人者死,伤人及盗抵罪。余悉除去秦法。” 十七禁律 十七禁律,中国古代军法律令,内容如下: 闻鼓不进,闻金不止,旗举不起,旗按不伏,此谓悖军,犯者斩之。 呼名不应,点时不到,违期不至,动改师律,此谓慢军,犯者 阅读全文
posted @ 2024-08-14 22:32 jackieathome 阅读(24) 评论(0) 推荐(0) 编辑
摘要:刚入行的时候,项目组使用的是Rational Purify,使用方法参考Rational Purify 使用及分析实例。Rational Purify功能强劲,部门的高手使用Rational Purify分析和定位了相当多的问题,美中不足的是其为商用软件,License过期就不可用了,因此后续引入了 阅读全文
posted @ 2024-08-12 08:00 jackieathome 阅读(63) 评论(0) 推荐(0) 编辑
摘要:交付进度紧张,为什么还要花费精力写单元测试代码,如下是之前的笔记。 写单元测试代码有什么好处 为什么程序员讨厌写单元测试代码 工欲善其事,必先利其器。使用Java语言交付项目时,需要掌握单元测试框架和Mock工具的使用。 如下是当年交付项目过程中,使用过的测试框架和工具,可供参考。 JUnit 测试 阅读全文
posted @ 2024-08-10 14:59 jackieathome 阅读(84) 评论(0) 推荐(0) 编辑
摘要:代码仓库 Seamless operability between C++11 and Python. pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mai 阅读全文
posted @ 2024-08-10 09:58 jackieathome 阅读(54) 评论(0) 推荐(0) 编辑
摘要:代码仓库 预构建软件的仓库 The JavaCPP Presets modules contain Java configuration and interface classes for widely used C/C++ libraries. 项目wiki A guide on how to r 阅读全文
posted @ 2024-08-10 09:57 jackieathome 阅读(152) 评论(0) 推荐(0) 编辑
摘要:JNA即Java Native Access。 官方主页 代码仓库 官方样例 maven中心仓库主页 官方文档 Getting Started Functional Description. Mapping between Java and Native Using Pointers and Arr 阅读全文
posted @ 2024-08-09 22:46 jackieathome 阅读(127) 评论(0) 推荐(0) 编辑
摘要:JDK版本升级,通常引入新的语言特性、新的API,废弃一些API,从而导致一些不兼容的现象。 因此在升级产品使用的JDK版本时,通常有如下考虑: 新产品包括新建设的项目以及刚启动不久的项目,使用高版本的JDK。 对于生命周期中间的产品,依据人力预算和团队的技能,决策是否升级。 对于进入生命周期尾部的 阅读全文
posted @ 2024-08-08 00:28 jackieathome 阅读(463) 评论(1) 推荐(0) 编辑
摘要:在对象存储服务中集成压缩算法,可以有效节省最终占用的空间,提升介质的利用效率,提高存储的收益。 选择压缩算法时,通常综合考虑对象的格式、访问频率、访问时延、存储服务的负载、存储服务器的硬件规格、存储介质的规格等。 对于高压缩比的文本类数据,通常建议在客户端应用侧完成压缩,这样除节省存储空间,还节省了 阅读全文
posted @ 2024-08-07 23:08 jackieathome 阅读(39) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示