前言上次我们工具类对传入的时间数据进行了切割,这次就是使用date_format()函数对数据库存储的事件类型数据进行切割,并查出符合条件的数据。DATE_FORMAT()函数介绍DATE_FORMAT()函数接受两个参数:date:是要格式化的有效日期值/字段名format:是由预定义的说明符组成的格式字符串,每个说明符前面都有一个百分比字符(%)例如:SELECTstudent_name,DATE_FORMAT(created_time,'%Y')FROMstudentWHEREdeleted=0ANDDATE_FORMAT(created_time,'%Y')='2019'即是将创建时间
SpringBoot2.4版本开始,配置文件加载方式进行了重构,只会识别application.*配置文件,并不会自动识别bootstrap.yml;因此如果springboot工程引入的是2.4以上的版本,则在resource下配置文件为application.yml如果写入bootstrap.yml则不生效,显示为如下:解决方案:方案一:spring-boot-starter-parent依赖降级,降到2.4以下版本;方案二:resource下写application.yml,不写bootstrap.yml方案三:在pom.xml中引入如下依赖,并在启动类上添加注解@EnableDisco
问题描述在使用mybatis-plus的过程中,有一个jsonb字段使用了jsonb_exists_any(field_name,text[])作为where条件查询,执行sql如下:SELECT* FROMtable_name WHERE jsonb_exists_any(field_name,ARRAY['110544709344','12564892357'])上面的sql在navicat中执行正常,所以sql没有问题,但是在mybatis-plus的xml文件中使用就会报错,异常信息如下:Causedby:net.sf.jsqlparser.JSQLParserException:E
目录前言:事务的相关问题1、什么是事务?2、事务的特点(ACID)3、什么时候想到使用事务?4、通常使用JDBC访问数据库,还是mybatis访问数据库,怎么处理事务?5、问题中事务处理的方式有什么不足?6、怎么解决不足?7、处理事务,需要怎么做,做什么?8、事务的隔离级别9、事务的超时时间10、事务的传播行为springboot中配置事务以及使用:1、进行配置类的处理2、创建数据资源配置类:3、实际代码里面调用实践:总结:前言:目前大多数的项目都是通过spring或者springboot来开发的,并且项目里面操作数据库常用的有mybatis\mybatis-plus等,在操作数据库的时候,经
1.思路分析:批量插入是我们日常开放经常会使用到的场景,一般情况下我们也会有两种方案进行实施,如下所示。方案一就是用for循环循环插入:优点:JDBC中的PreparedStatement有预编译功能,预编译之后会缓存起来,后面的SQL执行会比较快并且JDBC可以开启批处理,这个批处理执行非常给力。缺点:很多时候我们的SQL服务器和应用服务器可能并不是同一台,所以必须要考虑网络IO,如果网络IO比较费时间的话,那么可能会拖慢SQL执行的速度。再来说第二种方案,就是生成一条SQL插入:优势:这种方案的优势在于只有一次网络IO,即使分片处理也只是数次网络IO,所以这种方案不会在网络IO上花费太多时
SpringBoot-配置文件application.yml使用详解(附:Profile多环境配置)1,基本介绍(1)YAML 是 JSON 的超集,简洁而强大,是一种专门用来书写配置文件的语言,可以替代 application.properties。(2)在创建一个 SpringBoot 项目时,引入的 spring-boot-starter-web 依赖间接地引入了 snakeyaml 依赖, snakeyaml 会实现对 YAML 配置的解析。(3)YAML 的使用非常简单,利用缩进来表示层级关系,并且大小写敏感。2,YAML配置与Properties配置的比较可以使用 @Propert
前言在系统运行过程中,可能由于一些配置项的简单变动需要重新打包启停项目,这对于在运行中的项目会造成数据丢失,客户操作无响应等情况发生,针对这类情况对开发框架进行升级提供yml文件实时修改更新功能项目依赖项目基于的是2.0.0.RELEASE版本,所以snakeyaml需要单独引入,高版本已包含在内org.yamlsnakeyaml1.23网上大多数方法是引入spring-cloud-context配置组件调用ContextRefresher的refresh方法达到同样的效果,考虑以下两点未使用开发框架使用了logback日志,引入spring-cloud-context会造成日志配置读取错误引
SpringBoot中的yml文件中读取自定义配置信息开发中遇到的问题,百度的答案我都没有找到,去找大佬获取到的经验总结,这只是其中的一种方法,如果其他大佬有新的方法,可以分享分享。一、非静态属性1.1yml文件自定义配置信息,通过我们编写的代码读取。image:path:E:\image#存储文件的磁盘目录server:http://localhost:8082/image/#文件访问基础路径1.2类非静态属性中@Value生效ps:不是在控制层中拥有@Controller注解,说明没有把该类放进IOC容器中,启动类时会找不到@Value,在其他类中可以用@Component注解,将该类注册
本文只介绍修改方案,没有对方案的可靠性进一步分析。如果涉及的nacos配置项很多,更建议采用数据库表单独存储,并对其进行增删改查。1、需求假设nacos上有一个test-dev.yml配置文件,其内容如下:#快递相关配置,accessToken每月需要更新一次express:appKey:xxxappSecret:xxxaccessToken:123456789现在需要把accessToken字段的值修改成1234。2、实现方式一第一种方式使用snakeyamldependency> groupId>org.yamlgroupId> artifactId>snakeyamlartifactId
Mybatis的插件,主要用于在执行sql前后,对sql进行封装加工,或者在sql执行后,对数据进行加工处理。常用于一些公共数据操作处理,例如:分页插件,在执行sql查询前增加分页参数多租户系统中,增加租户ID参数。增加更新时间、创建时间、更新人、创建人的参数信息。数据权限中,增加参数查询。插件开发过程确定需要拦截的签名指定需要拦截的方法,通过方法签名来指定,方法签名即指定哪个类的哪个方法+方法参数。这里的类不能随便写,只能从以下几个类中选,也就是说,MyBatis插件可以拦截四大对象中的任意一个。Executor 是执行SQL的全过程,包括组装参数,组装结果集返回和执行SQL过程,都可以拦截