ApplicationRunner和CommandLineRunner

在SpringBoot中org.springframework.boot下提供了两个接口来实现其需求:
ApplicationRunner和CommandLineRunner
这两个接口中都提供了一个run方法,在实现接口时进行覆盖,他们会在容器启动完成后自动执行其中的内容。

90237-lgt7b73m78.png

ApplicationRunner和CommandLineRunner的区别

两者作用是一样的,区别在与前者run方法参数为ApplicationArguments**对象,是对原始参数做了封装,而后者为原始String数组。注:这些参数都是传递给main方法的参数。

package org.springframework.boot;
@FunctionalInterface
public interface ApplicationRunner {
    void run(ApplicationArguments args) throws Exception;
}
package org.springframework.boot;
@FunctionalInterface
public interface CommandLineRunner {
    void run(String... args) throws Exception;
}

执行顺序

在SpringBoot中,不止一个Bean可以实现ApplicationRunner或CommandLineRunner,为了能控制其run方法的执行顺序,支持使用@Order注解来进行执行排序。注:在均实现ApplicationRunner和CommandLineRunner时,ApplicationRunner的run方法会先执行。

一、个人缴费标准
根据全省统一安排部署,2023年度我市城乡居民医保(含大学生)个人缴费标准为350元/人。
二、缴费方式
按照分类组织参保的原则,采取集中收缴和零散收缴相结合的办法,各县(区)组织农村居民、被征地农民先行以家庭为单位到户籍所在地村或社区进行集中缴费。
采取零散缴费的城乡居民可通过以下方式自助缴纳参保费用:银行网点实时缴费,税务办税服务厅自助终端缴费,河南税务APP缴费,微信“河南税务”小程序缴费、支付宝“河南税务”小程序缴费等多元化缴费方式。

城乡居民医保

三、缴费时间
参保缴费期为:2022年9月26日到2022年12月31日。

以上是河南,其他省份地市应该同步开始缴纳了。

Notepad++ 是一种流行的源代码编辑器,也是 Windows 用户的可靠记事本替代品。它是一个功能强大的实用程序,可在不占用大量存储空间的情况下提供最佳性能。

github地址:https://github.com/dail8859/NotepadNext

作为文本编辑工具,有比 Notepad++ 更好的替代工具吗?今天,再给大家推荐一款它的替代工具:Notepad Next。

Notepad Next 是 Linux 上 Notepad++ 用户的替代品,它是一个跨平台的应用程序,不仅支持 Linux,还适用于 Windows 和 MacOS。

Notepad Next 是一个 C++ 应用程序使用 Qt5 工具包作为其用户界面。与 Notepadqq(另一个类似 Notepad++ 的编辑器)相比,这个应用程序看起来与 Notepad++ 几乎相同。

Notepad Next 旨在模仿 Notepad++ 提供的功能和用户界面。但不应期望提供相同级别的产品,因为 Notepad Next 仍在积极开发中(截至目前为 0.5 版)并且需要一些改进。话虽如此,Notepad Next 在大多数情况下都是可用且稳定的。

Notepad Next 特点

Notepad Next 是一个功能丰富的源代码编辑器,您也可以使用它来替换您的默认文本编辑器。

一些关键功能包括:

文件夹作为工作区。
支持多种语言,如 C++、YAML、XML、LaTeX、PHP、Python、R、Rust 等。
调整以禁用/启用部分 UI。
支持录制宏,运行它,保存录制的宏。
文件中的查找和替换功能。
线操作。
编辑检查器以获取有关文档的详细信息。
缩进指南。
撤消/重做按钮。
放大/缩小。
Lua 控制台。
EOL 操作。
能够转换大写 ↔ 小写。跨平台
还值得注意的是,目前,macOS 版本是实验性的。但是,它适用于 Windows、Linux 和 macOS。因此,一旦开发人员解决了问题,它应该是一个完美的跨平台开源文本编辑器应用程序。

Arthas
Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。

官网地址:https://arthas.aliyun.com/

Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:
1、这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
2、我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
3、遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
4、线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
5、是否有一个全局视角来查看系统的运行状况?
6、有什么办法可以监控到JVM的实时运行状态?
图片

上面是Arthas的官方简介,这次我只需要用他的一个小功能 trace 。动态计算方法调用路径和时间,这样我就可以定位时间在哪个地方被消耗了。
1、trace 方法内部调用路径,并输出方法路径上的每个节点上耗时
2、trace 命令能主动搜索 class-pattern/method-pattern
3、对应的方法调用路径,渲染和统计整个调用链路上的所有性能开销和追踪调用链路。
有了神器,那么该追踪什么方法呢?由于我对Tomcat源码不是很熟,所以只能从spring mvc下手,先来trace一下spring mvc的入口:

Arthas的官方简介

功能介绍

stack 输出当前方法被调用的调用路径
很多时候我们都知道一个方法被执行,但这个方法被执行的路径非常多,或者你根本就不知道这个方法是从那里被执行了,此时你需要的是 stack 命令。

watch方法执行数据观测
让你能方便的观察到指定方法的调用情况。能观察到的范围为:返回值、抛出异常、入参,通过编写 OGNL 表达式进行对应变量的查看。

近日,微信键盘已更新至0.9.2测试版,不仅安装包变小了(113M),还带来了几个新变化。

wechat keybord

本次新版本支持上滑数字/符号功能,大家可以根据自己的需要在设置中开启。小雷觉得吼,这个功能咋跟iPhone自带键盘一样呢。另外,候选字体也支持大小调节了哦!

最后一个发现更新的地方是,当用户输入数字+符号组成计算公式,键盘会自动进行简单的计算,在候选栏中提供计算结果并显示公式。(数学不好的人举手表示这功能还可以...)

另外,总有朋友问小雷有没有iOS 版微信键盘。根据网友反馈,iOS版在小范围测试中了,预计很快就会上线,iOS用户专心做一个等等党就好。微信输入法后续应该也会不断更新,功能慢慢完善。

目前使用的是百度输入法,感觉还不错,你现在使用的什么输入法呢,可以留言评论

最新版下载地址:

搜索关注公众号:“小任班长”,回复“键盘”即可。

https://wetype.weixin.qq.com/apk/download/64
更新内容:
1.键盘支持进行基础数字计算
2.显示设置中可进行候选字大小调节
3.可单独开启上滑输入数字或符号

免责声明
本博客部分内容来自于互联网,不代表作者的观点和立场,如若侵犯到您的权益,请联系[email protected]。我们会在24小时内进行删除。