JAVA扩展
liao1990
这个作者很懒,什么都没留下…
展开
-
Java通过URLClassLoader让程序支持插件扩展
插件(Plugin)是什么不用多说。常用的软件,例如Eclipse、Photoshop、VisualStudio,都支持插件扩展。插件可以动态给软件添加一些功能,也可以随时删除,这样的好处是任何人都可以给这个软件进行功能上的扩展,而不用去改软件本身的代码。为什么使用插件模式 使用插件模式实现某些功能的好处在于能够在不重新编译主程序的情况下,动态为主程序添加一些其他的功能。 插件的存在形式 在Jav...转载 2018-06-08 17:52:21 · 751 阅读 · 1 评论 -
Protobuf协议的Java应用例子
Protobuf协议,全称:Protocol Buffer 它跟JSON,XML一样,是一个规定好的数据传播格式。不过,它的序列化和反序列化的效率太变态了……来看看几张图你就知道它有多变态。 Protobuf的Java实例一、 安装Protobuf去Protobuf的GitHub下载,解压。如果你是Windows环境,则还要下载多一个东西。protobuf-2.5.0-windows.zip。解压...转载 2018-06-08 18:17:14 · 176 阅读 · 0 评论 -
Java SPI(Service Provider Interface)简介
SPI 简介SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。一个服务(Service)通常指的是已知的接口或者抽象类,服务提供方就是对这个接口或者抽象类的实现,然后按照SPI 标准存放到资源路径META-INF/services目录下,文件的命名为该服务接口的全限定名。如有一个服务接口:package com.ricky.codela...转载 2018-06-09 14:41:16 · 181 阅读 · 0 评论 -
java中的SPI机制
1 SPI机制简介 SPI的全名为Service Provider Interface.大多数开发人员可能不熟悉,因为这个是针对厂商或者插件的。在java.util.ServiceLoader的文档里有比较详细的介绍。简单的总结下java spi机制的思想。我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块的方案,xml解析模块、jdbc模块的方案等。面向的对象的设计里,我们一...转载 2018-06-09 15:01:54 · 132 阅读 · 0 评论 -
java spi与dubbo spi区别
java spi与dubbo spi区别java spi :是上游产商给服务供应商提供的接口,供应商遵循接口契约提供自己的实现.。提供了服务接口的一种实现之后,在jar包的META-INF/services/目录里同时创建一个以服务接口命名的文件。该文件里就是实现该服务接口的具体实现类。而当外部程序装配这个模块的时候,就能通过该jar包META-INF/services/里的配置文件找到具体的实现...转载 2018-06-09 15:06:20 · 1191 阅读 · 0 评论 -
Javassist字节码技术
Java动态编程的作用: 通过配置生成代码,减少重复编码和维护成本 我们常用到的动态特性主要是反射,在运行时查找对象属性、方法,修改作用域,通过方法名称调用方法等。在线的应用不会频繁使用反射,因为反射的性能开销较大。其实还有一种和反射一样强大的特性,但是开销却很低,它就是Javassit。 Javassit其实就是一个二方包,提供了运行时操作Java字节码的方法。大家都...转载 2018-06-09 15:26:24 · 354 阅读 · 0 评论 -
Lombok 介绍
Lombok使用介绍在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。IDEA中的安装打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse repositories –> 搜索lombok –> 点击安装 –> 安装完成重启IDEA –> 安装成功...转载 2018-07-26 17:51:00 · 180 阅读 · 0 评论