这个内容有点儿水了。但是将springboot启动时的banner修改一下是个蛮好玩的事情。比如,不知道什么时候,我们组的springboot应用的banner就被改成了这个样子: 据说改了之后BUG真的少了耶!(*/ω\*) 修改方式也比较简单,创建一个名为banner.txt的文件,写入图标字符,然后将这个文件放到resource目录下。搞定了。就这样。 不过,springboot还是提供了一些配置信息的。下面是可以在banner.txt中使用的一些替换宏: ${AnsiColor.BRIGHT_RED}:设置控制台中输出内容的颜色 ${application.version}:用来获取MANIFEST.MF文件中的版本号 ${application.formatted-version}:格式化后的${application.version}版本信息 ${spring-boot.version}:Spring Boot的版本号 ${spring-boot.formatted-version}:格式化后的${spring-boot.version}版本信息 还有一些其它替换宏,在idea中编辑banner.txt文档的时候这些都有动态提示。 还有一些在application中使用的配置: 最后记录几个生成ascii字符图像的网站(话说这也是我写这篇文的初衷): 图像转字符图像:https://www.degraeve.com/img2txt.php 文字转字符图像:http://patorjk.com/software/taag End!
[阅读更多...]-
springboot入门10 – 修改banner
-
rz上传出错解决办法
先记录下rz / sz 的安装指令: 使用rz上传文件使用的是这个指令: 这个指令传递小文件问题不大,但是传稍微大点儿的文件传到一半就会崩溃,会在终端输出一些莫名其妙的内容,同时也会导致终端不可用。 解决方式是使用的时候添加参数b: 涉及到的几个参数意义如下: 这个问题以前遇到过,也解决了,但是过了一段时间再遇到就忘了。所以记录下来。
[阅读更多...] -
Linux下修改时区
我使用的机器操作系统是centOS8。所以这里使用的指令也是centOS8上的指令(不过也没差别)。 1. 首先要确定时区 确定时区需要执行tzselect指令 输入完成指令后提示选择大洲。我这里选了4-亚洲。 然后就是选择 国家->市,确认等操作: 2. 配置时区 执行完成选择后并不会直接生效,还需要我们做些操作。根据提示,需要将下面的内容添加到profile文件中: 执行vim指令打开profile文件: 在profile文件尾部追加上面的配置信息。然后执行source指令使配置生效。 执行date查看时间: 可以看到和当前时间是一致的。说明配置已经生效。 End!
[阅读更多...] -
Linux 下安装MySQL并迁移备份
简单记录下在centOS上安装MySQL(MariaDB)的过程。 这里我并没有选择特定的MySQL版本,使用的是源默认提供的版本。 1. 执行安装命令: 执行如下指令安装MySQL数据库。 注意这里同时安装了mysql和mysql-server。 在输出一长串信息后,期间可能会需要输入y表示确认,MySQL就安装好了。 安装结束后还需要手动启动MySQL。 2. 启动MySQL 执行如下指令启动MySQL。 启动MySQL后会输出日志到/var/log/mysql/mysql.log。 在日志中可以看到下面这一句: 日志提示mysql root用户的初始密码是空的。据说有的时候会生成一个随机密码写入到日志中,但这次安装明显不是这样的。 另外在日志中也可以看到mysql的版本是8.0.17: 然后,执行如下指令,设置MySQL数据库开机启动 3. 设置root用户密码 执行如下命令设置root用户密码: 执行命令后会提示输入密码并确认。 4. 修改数据库时区 执行如下命令后输入密码进入MySQL数据库: 切换到目标数据库: 查看数据库时间: 查看时区设置: system_time_zone 表示系统使用的时区是EDT即北美的东部夏令时(-4h)。 time_zone 表示 MySQL 采用的是系统的时区。 之前以为如果在安装MySQL就通过tzselect并在profile中修改了时区设置会起到作用,后来测试发现是无效的。 ╮(╯▽╰)╭ 临时修改时区执行如下指令: 永久修改时区需要修改mysql配置文件。执行如下指令打开MySQL配置文件: 在条目[mysqld]下添加时区配置信息: 当然直接编辑/etc/my.cnf也不是不行,不过讲究点儿还是好的。 重启MySQL服务: 再看时间会看到时区修改成功。 5. 创建用户并授权 为MySQL数据库添加一个新用户zhyea,并将密码设置为zhyPass,指令如下: 授予用户zhyea对数据库chobit的所有权限: 6. 数据备份 如需要执行数据迁移,先回到原数据库服务器上,进入MySQL命令行,执行如下命令完成数据备份: 用户为zhyea;密码为zhyPass;目标数据库 chobit。备份文件存储到了/root/zhyea/zhy.sql这个位置。 下载备份文件zhy.sql。 7. 数据迁移 将备份的sql文件 zhy.sql 挪到现服务器上。可以考虑使用rz指令上传数据文件,如未安装该工具可以用如下指令安装: 进入MySQL命令行,切换到目标数据库,执行如下命令完成数据迁移: 8. 删除已安装的版本 执行如下指令: 一切搞定。 End!
[阅读更多...] -
springboot入门09 – 实现伪静态
最近想了下springboot前端路径的伪静态实现。 通过百度最容易找到的方案是使用urlrewritefilter这个依赖。不过一想到要为这么一件事情就添加一个依赖,还要再添加一个配置文件,还要挨个写一遍所有的路径映射就觉得头疼,所以pass。 跟踪了一下springboot WEB请求处理的过程,找到了一个关键类:UrlPathHelper。在获取Handler之前,由这个类负责解析请求路径。正好可以在WebMvcConfigurer中配置UrlPathHelper类的实例,这就给了我们动些手脚的空间。 更贴心的是,springboot获取请求路径的第一选择不是调用HttpServletRequest.getRequestURI()方法或者HttpServletRequest.getServletPath()方法,而是从HttpServletRequest的attribute中获取,这样能省下不少力气。 来看下实现方式。 1. 实现伪静态路径解析类 伪静态路径解析类是UrlPathHelper类的一个子类,通过重写getRequestUri()方法实现了伪静态路径的处理。 代码如下: 代码中的核心部分是下面两句: 在后面处理中,springboot会优先从Attribute中获取请求路径。 2. 添加WebMvcConfigurer配置类 然后需要在WebMvcConfigurer中配置PseudoStaticPathHelper实例。 实现方式如下: 然后——这样就可以了。 不写示例应用了。在 Calf 这个项目中有类似的用法,有需要就看看。 End!
[阅读更多...]