抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Java 版本的Redis 工具类

@PropertySource 加载 properties配置文件

1、通过《Spring Boot @ConfigurationProperties 、@Value 注值》知道使用“@Value”与“@ConfigurationProperties”可以从全局配置文件“application.properties”或者“application.yml”中取值,然后为需要的属性赋值。

2、当应用比较大的时候,如果所有的内容都当在一个配置文件中,就会显得比较臃肿,同时也不太好理解和维护,此时可以将一个文件拆分为多个,使用 @PropertySource 注解加载指定的配置文件,注解常用属性如下:

Spring Boot自带了一个轻量级的HTTP客户端工具,该工具基于Java的标准HTTP库 java.net.URLConnection。您可以使用它来发送HTTP请求并与外部的HTTP资源进行通信。 下面是使用Spring Boot默认的HTTP工具进行HTTP请求的基本示例: 123456789101112131415161718import org.springframework...

在web开发中,静态资源的访问是必不可少的,如:图片、js、css 等资源的访问。
spring Boot 对静态资源访问提供了很好的支持,基本使用默认配置就能满足开发需求。

一、默认静态资源映射

Spring Boot 对静态资源映射提供了默认配置

Quartz 的简单介绍和使用

Quartz 是一个开源的 Java 调度框架,可以用来实现在指定的时间或时间间隔触发任务执行的功能。以下是使用 Quartz 的主要方式和基本概念。

在对老代码重构过程中发现使用如下方式传参报错 Parameter ‘arg0’ not found …

1
2
@Select("SELECT COUNT(*) AS num FROM USER WHERE username=#{arg0} AND PASSWORD=#{arg1}")
public int isUserExists(String username,String password);

查阅资料发现如下问题

mybatis从3.4.1开始支持java 8 的反射获取入参名了,所以入参不再是arg0,arg1了,不过仍然可以使用param1,param2的这种形式,在java8 编译时指定 -parameters 选项,可以直接使用#{username} #{password},而不用改变你的接口入参

Springboot项目中的静态资源文件存放在static文件下面,当通过浏览器访问这些静态文件时,发现必须要添加static作为前缀才能访问,折腾了一番后发现,这个前缀跟 spring.mvc.static-path-pattern 这个配置项有关。

1
2
spring:
mvc: static-path-pattern: /static/

项目中application.yml配置文件中,存在如上配置项时,访问静态资源文件要加static才行,当把这个配置项除掉时,不用加static作为前缀亦可进行正常访问。image (https://fastly.jsdelivr.net/gh/byronlau/imgs/doc/202307091688879498890392.png).png当spring boot自动装配 org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration,当执行到org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#addResourceHandlers方法时,类org.springframework.boot.autoconfigure.web.WebMvcProperties#staticPathPattern的默认值为 “/“。如果配置项文件中存在spring.mvc.static-path-pattern 配置项,默认的配置项将会被覆盖。

今天我的Ubuntu Linux 笔记本突然别人ssh 无法登录,查看防火墙是关闭状态,并且端口我也开放22了,但就是连不上。后边我突发奇想使用宝塔登录进去看一下,结果宝塔报错如下。

什么是protobuf

它是一个灵活、高效、结构化的序列化数据结构,它与传统的XML、JSON等相比,它更小、更快、更简单。

ProtoBuf是由Google开发的一种数据序列化协议(类似于XML、JSON、hessian)。ProtoBuf能够将数据进行序列化,并广泛应用在数据存储、通信协议等方面。protobuf压缩和传输效率高,语法简单,表达力强。

引用:python redis 之连接池的原理

什么是连接池

通常情况下, 当我们需要做 redis 操作时, 会创建一个连接, 并基于这个连接进行 redis 操作, 操作完成后, 释放连接,

一般情况下, 这是没问题的, 但当并发量比较高的时候, 频繁的连接创建和释放对性能会有较高的影响

。于是, 连接池就发挥作用了

连接池的原理是, 通过预先创建多个连接, 当进行 redis 操作时, 直接获取已经创建的连接进行操作, 而且操作完成后, 不会释放, 用于后续的其它 redis 操作

这样就达到了避免频繁的 redis 连接创建和释放的目的, 从而提高性能了