- 博客(125)
- 收藏
- 关注
原创 JAVA-报表模糊搜索简易实现
一般文件报表经常会需要搜各个表头对应内容,如果支持全部类型切换搜索,操作起来就不够便捷。而且这个报表是测试自己用的,准确性可以不用太要求,所以更想要那中输入关键字命中任意表记录内容的模糊匹配功能。方法一如果报表查表很单一的话就非常适用,但如果是不同条件查不同表组合那就会非常麻烦,而且查询条件也需要各种拼奏。方法三:通过stream API直接过滤搜索结果,符合的加入搜索结果。相当于搜索结果全文匹配。方法二:遍历搜索结果,解析成json或key-value,逐一匹配,符合则加入搜索结果。
2024-07-12 23:45:19 254
原创 spring+pom-注意多重依赖时的兼容问题[java.lang.NoSuchMethodError]
spring+pom-注意多重依赖时的兼容问题[java.lang.NoSuchMethodError]
2023-11-18 23:05:08 607
原创 20220524-数据库性能优化-选取适合做索引的字段
1、值经常变化(增删改)的字段不适合做索引原因:需要经常重新大量刷索引,增加很多维护成本2、如果希望做索引的值较长时,应该截取部分值做索引。好处:节省索引存储空间 减少比较时间从而提高检索效率原则:截取重复率最低的临界值对应的前n个字符。如:字段值name:abcdddd abe cd acde abcc截取 ab时,有3个重复,截取abc时,0重复,则截取前3个做索引获取临界值的方法select count(*),left(name,3) as sub_name
2022-05-28 14:07:57 475
原创 220416-oracle-基础常用关键字
oracle 包含三大语言DML —— 数据操作语言,如 select查询表, update 更新表DDL —— 数据表结构定义语言,如create table 创建表, drop table 删除表DOL —— 数据控制语言, 如 grant 授权, rollback 回滚;SQL 和 SQL PLUS 的区别:SQL :一种语言,能改变表定义和数据值;SQL plus: 一种环境,用于运行sql。本身不能改变表定义和数据值,关键字可缩写; 如 describe a表:获取a表表定义sql主
2022-05-28 10:13:34 695
原创 20211026-Java-继承和组合
组合是代码复用的一种方式。用法是在类里面声名创建其他类,从而使用后者的属性和方法。即将a对象作为b对象的属性来用。跟继承一样都能实现代码复用,主要是关联关系的内涵的不一样:组合类似于被组合类是零件,组合类是整体(如轮胎和汽车)继承类似于父类是共性,子类是个性的关系。如动物和狗的关系,子类天然具有父类的特性。组合用法示例:class Desk{ int deskArea; public void eat(){ System.out.println("we .
2021-10-31 12:03:37 83
原创 20211026-Java-final关键字特点
用final关键字修饰的变量、方法、类是独一无二的,不可变更(某些重要的属性或行为防止被改动)。即:final修饰的类不能被继承final的方法不能被重写final修饰的变量不能被重新赋值// final 修饰类final class Person{ final int id = 001; // final修饰变量 String name; int age; Person(){ System.out.println("my name is"+
2021-10-29 19:06:26 140
原创 20211025-Java-extend继承的特点
继承是代码复用的一种方式,关键字extend。父类,也叫超类、基类,为被继承对象子类,也叫派生类,为继承对象子类可以使用父全部方法变量,除了构造函数和私有属性和方法java不支持多继承(接口可以)所有的类如果没有特殊定义,都继承自Object(即Object是所有类的源头)instanceof 判断是否来自该类或其子类...
2021-10-29 18:57:12 154
原创 20211012-Java-简单理解静态变量静态方法
我的理解是:静态是属于类的,与类在同一个存储空间,生命周期从有类开始到类被回收;非静态的则属于对象级别的属性,与对象生命周期一致;静态变量和静态方法是类用于对象初始化的手段,是唯一的公共的。因此,静态成员不能访问非静态成员(其仅在初始化时作用,此时无非静态成员),而非静态可以访问静态成员。...
2021-10-16 03:14:40 102
原创 20211001-Java-构造器的基础理解
作用:是一种特殊的方法,在实例创建的同时,初始化对象。(普通方法必须在创建实例后调用才能工作)特点:通过new调用有返回值,但无法自定义返回值类型(返回值即本类)方法名必须与文件名一致如果没有自定义构造器,编译器会默认一个无参的构造器。class Stu{ String name; int age; public Stu(String name, int age){ this.name = name; this.age = age
2021-10-16 03:06:09 78
原创 20210928-JavaScript-原型对象prototype
类,即构造函数,可以生成同一类的对象。JavaScript如果在类里面添加方法,每次创建对象时都会新建一个该方法,非常占用空间;但如果在类外面的全局内创建,则可能会导致不安全,非私有。该问题可以通过原型对象prototype解决。通过prototype创建的函数,每次通过类新建对象时,prototype内的函数不会重新创建。prototype内创建的对象属于该类的公共属性,通过该类创建的对象都可以访问。/* * 每个函数创建时,解析器都会默认添加prototype属性 * 该属性对应着的对象
2021-10-01 16:21:50 65
原创 20210920-JavaScript-函数和方法
函数和方法本质上是同一个东西,都是函数function当函数是对象的属性时,则称这个函数function是对象的方法method调用函数就是调用对象的方法var obj = { func: function(){ console.log('我是对象obj里面的函数,就是obj的方法~') }};obj.fun2 = function(){ console.log('我也是obj对象的方法,可以通过obj调用我')}// 打印调用结果console
2021-10-01 15:58:07 52
原创 20210923-JavaScript-this指向
JavaScript的function调用时,默认会传this参数。this指向的是当前的对象,this.xx即调用当前对象的某个属性。主要有两种指向场景。作为函数调用时,this=windows对象(系统全局对象Windows)作为方法调用时, this=调用方法的对象示例function fun(){ console.log(this);};// 作为函数调用,fun打印结果是Window对象fun();var obj = { name: 'ha',
2021-09-25 12:05:56 62
原创 20210924-Java-方法名可相同(方法重载overlord)
与Python很不一样的是,Java的方法名可以一样。即,方法的重载。构成重载的条件:方法名相同方法传参的个数、顺序、类型,任一个存在不一样意义:提高可读性。做同样事情的方法,只是传参方式不一样,对调用方来说,相同的名称更方便识别和使用。public class Main { public static int add(int a, int b){ return a+b; }; public static float add(float a,f
2021-09-25 12:04:02 637
原创 20210921-JavaScript-变量和函数的提前加载
用var声明的变量会在加载代码块时提前被加载声明,但如果变量语句有赋值,提前加载时不赋值。用函数声明的方式创建的函数,在加载代码块时会被提前加载,所以在创建函数的语句前调用函数。用函数表达式创建的对象不会被提前加载。console.log('b =', b); // b已声明但未赋值,打印结果是undefinedvar b = 100;// 可以在函数创建语句的上方,调用函数fun(obj)function fun(a){ console.log('传参a=', a)}.
2021-09-22 18:58:52 179
原创 20210920-Java-nextIine()未生效
用Scanner()的nextLine获取键盘输入值时,如果nextLine在一个nextInt后面,会出现该nextLine没有机会输入就进入下一个语句了。这是因为其运行机制为:nextInt输入时,同时输入了一个数字+换行符,而nextInt只获取了缓冲区里的数字。下一个nextLine去获取时,缓冲区里已经有换行符可以读取了,就直接拿到值返回了,没有触发系统输入。解决方案:执行nextInt()后,再多执行一次nextLineScanner sc = new Scanner(System
2021-09-20 13:16:00 119
原创 20210917-JavaScript-JavaScript函数特点
JavaScript的函数传参比较灵活,具体如下:传参不校验类型。JavaScript是强类型语言,新建变量时是要定义类型的,但函数传参不需要。而且与Python不一样的是,可以任意传数组和字典对象但形参无需特殊定义。不要求个数返回值为空或无返回时,接收结果=undefinedfunction fun(a, b){ // 函数内JavaScript的传参无需接收可以直接使用! console.log('传参a=', a) // 未传实参的形参,打印结果是undefined.
2021-09-20 11:37:32 115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人