- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 Spring中JdbcTemplate各个方法的使用介绍(持续更新中....)
目录execute 系列1.execute(final String sql)2.execute(StatementCallback action)3.execute(ConnectionCallback action)4.execute(String sql, PreparedStatementCallback action)5.execute(String callString, CallableStatementCallback action)6.execute...
2020-10-07 19:43:28 6330 3
原创 elasticsearch实现根据某一个字段去重后并求总数
版本说明:elasticsearch:elasticsearch-7.12.1kibana:kibana-7.12.1-windows-x86_64原始数据: _index _type _id ▲ _score address age bir id name
2022-04-18 23:04:26 3673 4
原创 树形选择排序
树形选择排序一个很重的条件就是:所排序的数组个数必须是2的次幂,这样才能满足完全二叉树的形态,如果不是2的次幂,则用无穷大值去填充,使其个数称为2的次幂。代码如下: /** * 树形选择排序。 * 注意:datas的长度必须满足2的k次幂。 * * @param datas 待排序数据 */ public static void treeSelectionSort(int[] datas) { int length = d
2021-08-03 22:28:53 453
原创 关于ORACLE删除分区
业务需求:定期删除表中三个月之前的数据说明:由于表采取一个月一个分区的设计,所以删除三个月之前的数据也就是删除三个月之前的分区。但需要注意的是删除分区后全局索引会失效,而本地local索引不会受到影响。删除分区的语法:ALTER TABLE TABLE_NAME TRUNCATE PARTITION (PARTITION_NAME);假如表名是:T_GOODS_RECORD_DETAIL需要删除的分区分别是:PAR_G001,PAR_G002。则删除分区的SQL:ALT...
2021-08-03 22:24:55 4104
原创 JAVA中的一些运算符使用。(^ | & || && >> >>> << )
在java的源码中我们会经常看到一些这些特殊的运算,了解这些运算的规则可以帮助我们更好的理解代码的意义。以下我整理的是一些运算的含义。希望对你们有用,如有错误之处还请各位大佬指正,谢谢。目录|(或运算符)&(与运算符)^(异或运算符)|| (或逻辑运算符)&& (且逻辑运算符)>> 位运算符>>><<>>> (无此表示符)|(或运算符)| 是针对二进制的二目运算符。..
2020-12-15 15:41:58 5521 1
原创 关于SpringBoot中设置全局路径的问题
springboot默认的全局路径是:/可以通过在application.properties中改变全局路径,如果是2.0以下版本是:server.context-path=/路径名字,如果是2.0以上的版本是:server.servlet.context-path=/路径名字。
2020-12-06 16:45:47 1621
原创 Lambda中Function函数接口(二)——Function系列接口
函数式接口汇总链接Function系列函数式接口主要作用是表示的是参数类型和其结果返回类型不一致。源码:可以看到Function接口中有四个函数,这四个方法很重要,其中只有一个抽象方法apply()。apply():compose():andThen():identity():...
2020-12-04 17:28:40 1531
原创 Lambda中Function函数接口(一)——基本介绍
在JDK8中加入了Lambda表达式,使用函数接口编程。是一个匿名函数,即没有函数名的函数。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。,使用它设计的代码会更加简洁。使用Lambda语法来代替匿名的内部类,代码不仅简洁,而且还可读。需要注意的是只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导。以下是lambda表达式的重要特征:可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。 可选的参数圆括号:一个参数无需定义圆括号,但多个
2020-12-04 17:28:30 1686
原创 SpringBoot项目多环境配置
常用的环境有开发环境dev、测试环境test、生产环境prod。多环境配置可以有效的进行数据库及其他数据的配置,是常用的手法。多环境配置常用的有两种方式:一、复制多个application.properties文件,并根据环境重命名。二、将不同环境的配置文件放在不同的文件目录下。目录方式一、复制多个application.properties文件,并根据环境重命名。方式二、将不同环境的配置文件放在不同的文件目录下。下面我们逐个介绍。本项目使用的SpringBoot版本是:2.2.
2020-11-08 17:07:13 6693
原创 基于ConstraintValidator自定义校验注解
开发中经常会碰到很多校验,如:空校验、长度校验、手机号校验、数值校验等。通过注解去做这些校验能省不少事。事实上我们也会用这些注解,但有时候自带的注解不能满足我们的业务需求,这时候就需要我们自定义一些注解去使用。具体如下:1.自定义注解import javax.validation.Constraint;import javax.validation.Payload;import java.lang.annotation.*;/** * 自定义字节长度校验注解 * * @au
2020-10-12 22:24:11 2074
原创 Stream的使用
目录Stream流的创建Stream流的之间的转换map的使用filter 的使用flatMaplimit、skip、distinctsorted 排序reducesum、count、max、minfindFirst、findAny、allMatch、anyMatch、noneMatchiterate参考文章:https://www.cnblogs.com/xuwujing/p/10145691.html使用到的数据实体类:public c.
2020-10-06 16:33:44 325
转载 Lambda表达式的使用
摘自:虚无境的博客目录Lambda介绍Lambda表达式的结构Lambda 表达式的使用Lambda介绍Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式的结构 一个 Lambda 表达式可以有零个或多个参数 参数的类型既可以明确声明,也可以根据上下文来推断。例如:(i
2020-10-05 16:38:52 140
原创 Oracle——存储过程 procedure 的创建
被内容来自《oracle从入门到精通——明日科技》一书 存储过程是一种命名的PL/SQL程序快,存储过程被保存在数据库中,它不可以被SQL语句直接执行或调用,只能通过EXECUT命令执行或在PL/SQL程序快中内部调用。由于存储过程是已经编译好的代码,所以在被调用或引用时,其执行效率非常高。本次所有操作均在Oracle 19c本版。目录1.创建存储过程 1.1.创建存储过程的语法 1.2.下面通过一个实际例子来解释如何创建一个存储过程。 1.3.执行存储过程2.存储过程
2020-09-27 15:54:09 11944
原创 trunc()格式化函数的使用
trunc是oracle数据库中一种格式化函数。1.处理日期 1.1.当年第一天:SELECT TRUNC(SYSDATE,'YYYY') FROM DUAL;SELECT TRUNC(SYSDATE,'YY') FROM DUAL;SELECT TRUNC(SYSDATE,'YEAR') FROM DUAL;--返回结果是2019/1/1 1.2.当月第一天:SELECT TRUNC(SYSDATE,'MM') FROM DUAL;SELECT TRUNC(SYSDA.
2020-09-27 14:26:47 1443
原创 NVL()、NVL2() 函数的用法
NVL和NVL2两个函数虽然不经常用,但是偶尔也会用到,所以了解一下。语法:--如果表达式1为空则显示表达式2的值,如果表达式1不为空,则显示表达式1的值NVL(表达式1,表达式2);--如果字段1为空,则显示字段2的值,如果字段1不为空则显示字段1的值NVL(字段1,字段2);--如果表达式1为空,则显示表达式2的值,如果不为空则显示表达式3的值NVL2(表达式1,表达式2,表达式3)--如果字段1为空则显示字段2的值,如果字段1不为空则显示字段3的值NVL2(字段1,字段...
2020-09-26 22:06:51 2613
原创 截取日期时间的函数EXTRACT() 使用
目录1.截取日期的年:2.截取日期的月份:3.截取日期的哪一天:4.截取时间的小时:5.截取时间的分钟:6.截取时间的秒:注:测试时的系统时间是:2019-03-041.截取日期的年:--使用方法--EXTRACT(YEAR FROM DATE)SQL> SELECT EXTRACT( YEAR FROM SYSDATE ) FROM DUAL;--结果:2019SQL> SELECT EXTRACT(YEAR FROM TO_DA...
2020-09-26 22:02:05 2826
原创 获取随机数 - DBMS_RANDOM
在oracle中获取一个指定的随机数:--(DBMS_RANDOM.VALUE(INT NUM1,INT NUM2),比如:SELECT DBMS_RANDOM.VALUE(0,10) FROM DUAL;--结果:8.23602331029803使用这种方法获取的随机数会默认带有14位的小数,我们可以使用TRUNC函数来截取:SELECT TRUNC(DBMS_RANDOM.value(0,10)) FROM DUAL;-- 6需要注意的是产生的随机数会包含前后的数字(0...
2020-09-26 21:53:12 164
原创 spring batch (四) Job的配置及配置文件说明介绍
内容来自《Spring Batch 批处理框架》,作者:刘相。目录一、Spring Batch提供了独立的标签用来定一个Job配置,分别是job、step、tasklet、chunk等。共有6个外层标签使用,如下:二、Job配置的标签和属性介绍 三、Job的高级特性 一、Spring Batch提供了独立的标签用来顶一个Job配置,分别是job、step、tasklet、chunk等。共有6个外层标签使用,如下:<batch:job id=""></batch
2020-09-26 21:48:33 3310
原创 Spring Batch(三) 详细介绍Job Launcher、ItemReader、ItemProcessor、ItemWriter各个实现类和用途
内容来自《Spring Batch批处理框架》,作者:刘相。1.JobLauncher JobLauncher(作业调度器)是SpringBatch框架提供的运行Job的能力。用过给定的JobName和JobParameters,可以通过JobLauncher执行Job。通过JobLauncher可以在Java程序中调用批处理任务,也可以在通过命令或者其他的框架(如定时调度框架Quartz)中调用批处理任务。 JobLauncher接口:public interface JobLau.
2020-09-26 21:34:51 1630
原创 Spring Batch(三) Job Launcher、ItemReader、ItemProcessor、ItemWriter各个实现类和用途
内容来自《Spring Batch批处理框架》,作者:刘相。1.JobLauncher JobLauncher(作业调度器)是SpringBatch框架提供的运行Job的能力。用过给定的JobName和JobParameters,可以通过JobLauncher执行Job。通过JobLauncher可以在Java程序中调用批处理任务,也可以在通过命令或者其他的框架(如定时调度框架Quartz)中调用批处理任务。 JobLauncher接口:public interface JobLau.
2020-09-26 21:27:17 715
原创 spring batch (二) 元数据表
内容来自《Spring Batch批处理框架》,作者:刘相。注:所有SQL均是基于Oracle。一、spring batch框架进行元数据管理共有六张表,三张SEQUENCE用来分配主键的,九张表分别是: BATCH_JOB_INSTANCE BATCH_JOB_EXECUTION BATCH_JOB_EXECUTION_PARAMS BATCH_STEP_EXECUTION BATCH_STEP_EXECUTION_CONTEXT BATCH_JOB_EXE..
2020-09-26 21:22:07 1872 1
原创 spring batch (一) 常见的基本的概念介绍
SpringBatch的基本概念介绍内容来自《Spring Batch批处理框架》,作者:刘相。目录 SpringBatch的基本概念介绍一、配置文件二、基本介绍三、spring batch主要对象四、对象介绍一、配置文件 在项目中使用spring batch需要在配置文件中声明: 事务管理...
2020-09-26 21:16:35 836
原创 日志——log4j.properties配置文件说明
###############################################################################Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下:## %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。# 举例:Testlog4.main(TestLog4.java:10)## %c 输出所属的类目,通常就是所在类的全名## %d 输出日志时间点的日期或时间,默认格式为ISO86
2020-09-26 21:14:20 232
原创 删除ORECLE表主键ID的索引
假如有个表:T_GOODS_LIST,主键索引是:PK_GOODS_LIST_ID,有个普通索引:IDX_GOODS_TYPE。删除普通索引SQL:DROP INDEX IDX_GOODS_TYPE 删除主键索引:因为通常我们会给主键ID一些约束,索引直接删除的话会出错,我们应该先接触ID的约束关联:ALTER TABLE T_GOODS_LIST DROP CONSTRAINT PK_GOODS_LIST_ID我的博客源地址...
2020-09-26 21:11:13 182
转载 事务的特性及隔离级别、Spring中的事务传播特性
内容复制于:https://blog.csdn.net/weixin_38070406/article/details/78157603spring事务:什么是事务:事务逻辑上的一组操作,组成这组操作的各个逻辑单元,要么一起成功,要么一起失败.事务特性(4种):原子性 (atomicity):强调事务的不可分割.一致性 (consistency):事务的执行的前后数据的完整性保持一致.隔离性 (isolation):一个事务执行的过程中,不应该受到其他事务的干扰持久性(durabilit
2020-08-23 14:28:31 189
原创 JAVA不常用的方法——System.arraycopy()
System中有很多不常用的方法,基本上都是native修饰方法,虽然不常用,但是可以有助于我们理解JDK的源码。比如:arraycopy()在ArrayList中就用到了。先说明一下该方法作用是:从一个数组中选择一些元素赋值到另一个数组中。arraycopy源码: public static native void arraycopy(Object src, int srcPos,Object dest, int destPos, int length);解释一下参数是什么
2020-08-10 21:34:14 224
原创 JVM内存及其启动参数简单认识
首先了解一下JVM是什么?在java中:JDK:是java在开发中所需用到的jar包等,相当于我们常说的工具类一样。JRE:是我们的java程序运行时所需要的环境,一般JRE包含JDK。JVM:是java程序或者jar包运行时所需要的内存,就像windows系统一样,需要划分出一定的内存空间才能运行。JVM(基于JDK1.7)内存主要分为三个:新生代区域、老年代区域、永久代区域。其中新生代区域约占整个堆内存的1/3,老年代区域约占整个堆内存的2/3 。新生代区域又可以分为三部分:
2020-08-03 21:37:40 361
原创 Oracle中使用order by 排序是空值null排在前面的问题
Oracle版本:Oracle 19c需求:根据某个字段降序排序,空值排在后面。数据如下:select * from T_JASON_HOT_FILM order by star_level desc; 会发现空值会自动排在前面,而这不是我想要的,所以解决的办法就是在后面加上 nulls last。-- 空值在后面select t.film_score,t.star_level,t.one_star from T_JASON_HOT_FILM t order by ...
2020-08-02 21:49:51 2951 1
原创 分组函数sum()、max()等和group by 的使用
假如有数据:表中数据1.单个字段分组-- 根据 user_name 分组select user_name from T_JASON_TEST group by user_name;-- 根据 telphone分组select telphone from T_JASON_TEST group by telphone;结果如下,左是 user_name,右是telphone : 2.多个字段分组-- 根据 us...
2020-07-29 23:26:45 1984
原创 查找字符的位置 instr()、截取字符串 substr()
解释:在resources中从start位置查找第num次出现的aim位置。解释:截取resources,从start开始,截取length长度字符串。解释:在resources中查找aim的位置。
2020-07-28 14:55:18 1027
原创 取两个集合List的交集、补集、并集、差集的几种方式
import org.apache.commons.collections.CollectionUtils;public class Test { public static void main(String[] args) { String[] arr1 = new String[]{"A", "B", "C", "D", "E", "F", "G"}; ...
2020-04-14 10:42:39 22065
原创 RSA加密、解密、签名、验签
package demo.test;import javax.crypto.Cipher;import java.security.*;import java.security.spec.PKCS8EncodedKeySpec;import java.security.spec.X509EncodedKeySpec;import java.util.Base64;public ...
2019-12-14 20:06:37 288
原创 Oracle中常用的函数
1.NVL(expr1,expr2)解释:如果参数一expr1为空(包括null和‘’),则结果为expr2的值,如果expr1不为空,则结果为expr1的值。SQL> SELECT NVL(NULL,'1') FROM DUAL;NVL(NULL,'1')-------------1SQL> SELECT NVL('','1') FROM DUAL;NVL...
2019-12-01 17:22:22 225
原创 ORACLE中for循环中使用if条件
declare req_user varchar2(200); req_url varchar2(200); req_name varchar2(100);begin for i in 1..50 loop req_user :='阿里巴巴'; req_name := '登录接口'; req_url := 'whx.test.com/inde...
2019-11-28 22:29:45 1998
原创 oracle的 表(创建、删除)、字段(新增、删除、修改)等
oracle表的创建,创建表的同时一定要指定表空间:-- 创建表语句CREATE TABLE T_HAO_COALA_REQUEST_LOG( ID VARCHAR2(50) NOT NULL, CREATE_TIME DATE NOT NULL, CREATE_USER VARCHAR2(100) NOT NULL, REQUEST_TIME DATE, REQUES...
2019-11-27 22:44:58 265
原创 Oracle创建新用户-oracle19c版本
基于oracle19c版本新建用户:从12c开始,oracle引入了容器数据库,在安装数据库时特别注意,根据需要是否安装为容器数据库,有一个勾选项。可以参考我的另一篇https://www.cnblogs.com/whx20100101/p/10201726.html本人安装时选择了安装容器数据库,oracle规定容器数据库的用户名必须是c##开头。安装oracle时会默认有个管理...
2019-11-27 21:21:52 9825 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人