自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 java8 stream动态分段筛选数据

【代码】java8 stream动态分段筛选数据。

2023-06-05 15:49:58 397

原创 【第9条】try-with-resources优先于try-finally

try-with-resources优先于try-finallyJava类库中包含许多必须通过调用close方法手动关闭的资源。例如InputStream,OutputStream和java.sql.Connection。客户经常会忽略资源的关闭,造成严重的性能后果也就可想而知了。虽然这其中的许多资源都是用终结方法作为安全网,但是效果并不理想(详见第8条)。根据经验,try-finally语句是确保资源会被适时关闭的最佳方法,就算发生异常或者返回也一样// t...

2020-11-04 17:26:47 437

原创 【第8条】避免使用终结方法和清除方法

避免使用终结方法和清除方法最终方法(finalizer)通常是不可预测的,也是很危险的,一般情况下是不必要的。它们的使用会导致不稳定的行为,糟糕的性能和移植性问题。Finalizer机制有一些特殊的用途,我们稍后会在这个条目中介绍,但是通常应该避免它们。从Java 9开始,Finalizer机制已被弃用,但仍被Java类库所使用。Java 9中Cleaner机制代替了Finalizer机制。清除方法没有终结方法那么危险,但仍然是不可预测、运行缓慢,一般情况下也是不必要的...

2020-11-04 17:25:17 308 1

原创 【第7条】消除过期的对象引用

消除过期的对象引用当你从手工管理内存的语言(比如C或C++)转换到具有垃圾收集功能的比如Java语言时,程序员的工作会变得更加容易,因为当你用完了对象之后,它们会被自动回收。当你第一次经历对象回收功能的时候,会觉得这简直有点不可思议。它很容易给你留下这样的印象,认为自己不再需要考虑内存管理的事情了,其实不然。考虑以下简单的栈实现:// Can you spot the "memory leak"? public class Stack { private Object[] eleme.

2020-11-04 17:11:26 283 1

原创 【第6条】避免创建不必要的对象

避免创建不必要的对象一般来说,最好能重用单个对象,而不是在每次需要的时候就创建一个相同功能的新对象。重用方式既快速,又流行。如果对象是不可变的(immutable)(详见第17条),它就始终可以被重用作为一个极端的反面例子,看看下面的语句:String s = new String("bikini"); // DON'T DO THIS!语句每次执行时都会创建一个新的String实例,而这些对象的创建都不是必需的。String构造方法("bikini")的参数本身就是一...

2020-11-04 17:09:43 108

原创 【第5条】引用资源请优先考虑依赖注入

优先考虑依赖注入来引用资源许多类依赖于一个或多个底层资源。例如,拼写检查器依赖于字典。将此类类实现为静态工具类并不少见:// Inappropriate use of static utility - inflexible & untestable! public class SpellChecker { private static final Lexicon dictionary = ...; private SpellChecker() {} // Nonins...

2020-11-04 17:06:20 179

原创 【第4条】用私有构造器强化不可实例化的能力

通过私有构造器强化不可实例化的能力偶尔你会想写一个只包含静态方法和静态字段的类。这些类的名声非常不好,因为有些人滥用这些类从而避免以面向对象方式思考从而编写过程化的程序,但是它们确实有着特殊的用途。它们可以用来按照java.lang.Math或java.util.Arrays的方式,把基本类型的值或数组类型上的相关方法组织起来。我们也可以通过java.util.Collections的方式,把实现特定接口上面的静态方法进行分组,也包括工厂方法。(从Java 8开始,你也可以将这些方...

2020-11-04 17:03:01 127

原创 【第3条】用私有构造器或者枚举类型强化单例(Singleton)属性

用私有构造器或者枚举类型强化Singleton属性单例是一个仅实例化一次的类。单例对象通常表示无状态对象,如函数或一个本质上唯一的系统组件。使类称为Singleton会使它的客户端测试变得十分困难,因为不可能给Singleton替换模拟实现,除非实现一个充当其类型的接口有两种常见的方法来实现单例。两者都基于保持构造方法私有和导出公共静态成员以提供对唯一实例的访问。在第一种方法中,成员是final修饰的属性:// Singleton with public final field pu...

2020-11-04 17:00:05 93

原创 【第2条】当构造方法参数过多时使用builder模式

第2条:当构造方法参数过多时使用builder模式静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数。比如用一个类表示包装食品外面显示的营养成分标签。这些标签中有几个域是必需的:每份的含量、每罐的含量以及每份的卡路里。还有超过20个的可选域:总脂肪量、饱和脂防量、转化脂防、胆固醇、钠,等等。大多数产品在某几个可选域中都会有非零的值。对于这样的类,应该用哪种构造器或者静态工厂来编写呢?程序员一向习惯采用重叠构造器(telescopingconstructor)模式,在这种模..

2020-11-04 16:52:45 193

原创 【第1条】尽量使用静态工厂方法而不是构造器

【第1条】用静态工厂方法代替构造器一个类允许客户端获取其实例的传统方式,是提供一个公共构造方法。其实,还有另一种技术应该成为每个程序员工具箱的一部分。一个类可以提供一个简单的、只返回该类实例的公共静态工厂方法。下面是一个Boolean简单的例子( 基本类型boolean的包装类)。此方法将基本类型boolean转换为Boolean对象引用:public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : B...

2020-11-04 16:41:41 127

原创 Elasticsearch核心概念

文章目录NodeElasticsearch集群不同节点角色ClusterShardsReplicasIndexTypeDocumentSettingsMappingAnalyzerNode节点是组成Elasticsearch集群的基本服务单元,集群中的每个运行中的Elasticsearch服务器都可以称之为节点,它们共同承担数据和负载压力Elasticsearch集群不同节点角色主节点: 负责管理集群范围内的所有变更通过配置node.master:true(默认)使节点具有被选举称为Ma

2020-10-31 12:31:33 120

原创 彻底掌握UML类图

UML(Unified Modeling Language)统一建模语言由于UML类图的精确、无歧义、完整的建模,通常我们通过使用UML类图来详细的描述系统中的对象和他们的关系。认识UML类图也能帮助我们快速了解、理清系统中对象之间的关系类图表示方式在UML类图中,包含类名、属性和方法三块如下图所示,包含了name、age、email三个属性以及方法userInfo()属性和方法前面的符号表示了可见性,UML类图中表示可见性的符号如下+ : 表示public- : 表示private#

2020-10-31 11:59:36 583

原创 ORACLE设置自增ID ,序列【最简单版】

创建序列:CREATE sequence 序列名 minvalue 1 maxvalue 9999999999999999999999999999 start with 2 increment by 2 cache 20 order;引用:ALTER TABLE 表名MODIFY ("ID" DEFAULT "序列名".nextval )...

2020-04-29 17:26:20 2725 1

原创 ORACLE 查询库下的所有表以及表中字段的详细信息

SELECT t1.Table_Name || chr(13) || t3.comments AS "表名称及说明", ROWNUM , t1.Column_Name AS "字段名称", t1.DATA_TYPE AS "数据类型", t1.DATA_LENGTH AS "长度", t1.NullAble AS "是否为空"...

2020-04-29 17:14:10 558

原创 mysql 数据表和excel的导入导出(springboot)

参考文档 :https://blog.csdn.net/weixin_42548384/article/details/83507612

2019-08-15 17:32:59 440

原创 bootstrap.min.js:6 Uncaught TypeError: this.showue is not a function错误

自己报错的时候也看了很多,找了很多篇文章。看网上有人说是:缺少支持库我自己的情况是 ,之前是可以的,第二天早上起来运行就报错了最终解决的办法是 :把导入 的bootStrap的 js、css 什么的全删了,重新导入...

2019-08-07 14:48:35 1157

原创 封装工具类 BaseDao连接数据库

封装工具类 BaseDao连接数据库方法一:普通连接public class BaseDao {private Connection conn = null;private PreparedStatement ps = null;private ResultSet rs = null;/** * 获取连接 */public boolean getCollection(){ ...

2019-03-26 22:07:30 640

原创 EL表达式输出问题

EL表达式输出问题<%String username = "admin";//将变量添加到作用域中request.setAttribute("username",username);request.setAttribute("student.name","张三");ArrayList list = new ArrayList();list.add("北京红火");list...

2019-03-25 10:58:19 742

原创 idea创建Maven项目和 配置Tomcat

idea创建Maven项目和 配置Tomcat1.选中Maven,选择所圈处2.创建项目名此处省略3.选择maven目录及setting.xml文件,此处2步骤可以默认不改4.maven项目创建完成配置Tomcat1.点击右上角的此处2.会出现以下页面,再点击“+” 选择 TomcatServer-----local| 3.完成后出现此页面,Name起个tomcat别...

2019-03-21 10:09:42 320

原创 idea使用git工具项目上传到码云

idea使用git工具项目上传到码云项目配置git ,先找 File-Setting 搜索Git2.把本地仓库变为git项目3.内容全选加到本地仓库暂存区 右击4.内容全选提交到本地厂库5.Commit后添加码云地址6.选中项目右击 ,添加码云地址7.从码云上,点击克隆,复制地址8 、 6.之后出现此页面,点击+号,填写复制的url路径9、先pull...

2019-03-21 10:07:08 368

原创 MySql中如何设置时间默认为当前日期

MySql中如何设置时间默认为当前日期本人是这样写的:1. 把考试日期的类型修改为TIMESTAMP2. 把默认值改为DEFAULT NOW()如下:examDate TIMESTAMP DEFAULT NOW() NOT NULL COMMENT ‘考试日期’...

2019-03-13 09:53:16 16930

原创 如何用cmd窗口开启和关闭mysql

**如何用cmd窗口开启和关闭mysql**第一步:输入cmd找到命令,右击选择以 ‘管理员身份运行 ’第二部:输入 net start mysql 进行开启mysql第三部:输入net stop mysql 进行关闭mysql注:最重要的一定要以管理员身份进行运行...

2019-03-12 09:17:48 4984 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除