随笔分类 - Java
摘要:1. 概述 泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。 什么是泛型?为什么要使用泛型? 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法
阅读全文
摘要:什么是幂等性 HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。 这里需要关注几个重点: 幂等不仅仅只是一次(或多次)请求对资源没有副作用(比如查询数据库操作,没有增
阅读全文
摘要:首先,我们看一个局部内部类的例子: 这里有一个外部类 OuterClass 和一个内部类 InClass,内部类访问了外部类的一个方法中的一个局部变量 x,在这里,x 必须是 final 的,否则会报错: 下面来分析下这个问题: 追究其根本原因就是作用域中变量的生命周期导致的; 首先需要知道的一点是
阅读全文
摘要:一、 序列化和反序列化概念 Serialization(序列化)是一种将对象以一连串的字节描述的过程;反序列化deserialization是一种将这些字节重建成一个对象的过程。将程序中的对象,放入文件中保存就是序列化,将文件中的字节码重新转成对象就是反序列化。 二、 序列化和反序列化的必要性 当两
阅读全文
摘要:单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该
阅读全文
摘要:抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模
阅读全文
摘要:工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。我们只关注创建工厂对象。通过给工厂对象传递不同参
阅读全文
摘要:这是因为maven项目默认编译使用的是jdk1.5。我们可以在pom文件中进行如下配置,来改变。
阅读全文
摘要:前言需求 使用freemarker生成的静态文件,统一存储在某个服务器上。本来一开始打算使用ftp实现的,奈何老连接不上,改用jsch。毕竟有现成的就很舒服,在此介绍给大家。 具体实现 引入的pom 建立实体类 建立文件上传工具类 属性我都写在Spring的配置文件里面了。将这个类托管给spring
阅读全文
摘要:在java中final关键字标识无法被修改。接下来从final修饰数据、方法和类进行介绍。 final数据 final用来告知编译器这一块数据是恒定不变的。数据恒定不变又如下作用: 1、一个永不改变的编译时常量。 2、一个在运行时被初始化的值,而你不希望他改变。 编译器常量的情况,编译器可以将常量值
阅读全文
摘要:前言 相信大家在平时的工作中对于public和private的修饰权限是用的比较多的。对于protected和无修饰符用的是比较少的。我也一样,在读书的时候,又看到了这个问题,于是,在此进行总结和详细的钻研,来认真区分这些修饰符。分享给大家,供大家参考。 导图 我们先来看一张总体的导图,对这几个访问
阅读全文
摘要:前言 今天重读了一下向上转型与向下转型,有些新的体会,了解了向上转型的好处,及如何向下转型。在此分享给大家。 向上转型 向上转型是用来表现新类和基类之间的关系。在传统中,由导出类转型成基类,在继承图中是向上移动的。因此称作向上转型。由于向上转型是从一个较专用类型向较通用类型转换,所以总是安全的。也就
阅读全文
摘要:Java 复用代码的两种方式组合与继承。 组合 组合只需将对象引用置于新类中即可。 比如我们有一个B类,它具有一个say方法,我们在A类中使用B类的方法,就是组合。 在 java编程思想中,还介绍了四种初始化引用的方式。 1、在定义对象的地方。 2、在构造器中 3、在使用对象的时候,进行初始化,也叫
阅读全文
摘要:Java 中,我们用访问权限修饰词确定库中的哪些类对于使用者是可以使用的。 访问权限修饰词有 public,protected,private 和什么都不写。 那么对于类来说,我们只可以用 public 和什么都不写两种。 protected 和 private 是不可以直接修饰类的。 我们在编译器
阅读全文
摘要:对于初学者来说,要想把这个问题回答正确,是比较难的。在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的是,我也没有在网上找到哪篇文章可以把这个事情讲解的通俗易懂。所以,就有了我写这篇文章的初衷。这篇文章中,我从什么是方法的实际参数和形式参数开始,给你讲解为什么说
阅读全文
摘要:背景 有个小伙伴问我你以前发邮件功能怎么弄的。然后我就给他找了个demo,正好在此也写一下,分享给大家。 理清痛点 发送邮件,大家可以想一下,坑的地方在哪? 我觉得是三个吧。 第一:邮件白名单问题。 第二:邮件超时问题。 第三:邮件带附件问题。 我下面的demo都会介绍这些问题及解决。 实现方案 准
阅读全文
摘要:背景 改一个以前的项目,项目里只有这个包,虽然我想用gson或者fastjson,然而并不想引入新的jar。于是使用这个,特此记录,感觉贼不好用。 实现代码 entity.getData()的值:{aaa:bbb}
阅读全文
摘要:前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选择功能强大的freemarker+固定格式之后的wordxml实现导出功能。导出word的代码是可以直接复用的,于是在此贴出,并进行总结,方便大家拿走。 实现过程概览 先在word上,调整好自己想要
阅读全文
摘要:单例模式可以说只要是一个合格的开发都会写,但是如果要深究,小小的单例模式可以牵扯到很多东西,比如:多线程是否安全?是否懒加载?性能等等。还有你知道几种单例模式的写法呢?如何防止反射破坏单例模式? 一、 单例模式 1.1 定义 单例模式就是在程序运行中只实例化一次,创建一个全局唯一对象。有点像 Jav
阅读全文
摘要:什么是PO PO(Persistence Object 持久化对象)是直接跟持久层数据库打交道的java Bean (model,entity,bean等叫法都是可以的),里面除了私有的成员变量之外,就只有其对应的set/get方法, 而且其变量一般跟数据库表中的列几乎(除了名字)一样。 什么是VO
阅读全文

浙公网安备 33010602011771号