reflectutils

一点一点实现一个RPC框架三 -- 学习dubbo spi

最后都变了- 提交于 2020-08-14 01:23:47
前言 了解过java spi后, 马上来看看dubbo spi有什么特殊之处 dubbo spi demo 还是以一个运行的demo开始, 基本和 官网 一样 public static void main(String[] args) { ExtensionLoader<Robot> extensionLoader = ExtensionLoader.getExtensionLoader(Robot.class); Robot r = extensionLoader.getExtension("r"); r.sayHello(); Robot t = extensionLoader.getExtension("t"); t.sayHello(); } // 暴露的接口 @SPI public interface Robot { void sayHello(); } // 实现类 public class R2Robot implements Robot { @Override public void sayHello() { System.out.println("r2"); } } public class T1Robot implements Robot { @Override public void sayHello() { System.out.println("T1")

关于高淇JAVA中SORM总结学习笔记详细个人解释

醉酒当歌 提交于 2020-04-19 07:57:24
代码来源于高淇JAVA教学视频 谢谢高淇老师的教学。 因为自己在学习的过程中发现了很多困难点,总结下希望对自己接下来学框架提升。给像我一样得初学者方便。 SORM框架是一个简单的ORM,关系对象映射,可以通过这个框架方便的更改和操作一些数据库的东西,在框架运行的时候也会根据数据库中的表生成相应的Javabean在po包下。通过直接对po包下的操作在运用query中的一些操作就可以实现对数据库的操作。思路会在代码中注释。 QueryFactory直接生产出Query给用的人调用,Query作为一个接口是更好的让多种数据库提供各自的操作。实现mySQLQuery或者OracleQuery,conventor是个转换不同语言数据类型的工具 TableContext就是核心的程序连接数据库表的类。DBManager钟放的是一些配置资源文件和一些加载处理。 明确主要思路,就是通过factory制作一个query,然后直接set方法然后将对象传入query的方法实现功能。查询的话也是通过queryrows方法传入select语句进行查询,因为查询语句的多样性简单的框架没有进一步封装。 先从最底层的tablecontext和DBManage说起: 解释会在代码中标识 public class DBManager { private static Configuration conf;      

使用Apache POI写的一个生成/解析 Excel的工具类

帅比萌擦擦* 提交于 2019-12-07 01:51:43
2016年10月24日15:47:51 更新,发布了最新版本,修改了一些BUG。另外在最后加上了调用的示例代码 package com.eya.util.office; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.text.NumberFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; import java.util.List; import java.util.Set; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel

ReflectUitls类的编写和对反射机制的解析

和自甴很熟 提交于 2019-12-04 18:02:53
ReflectUitls类的编写和对反射机制的解析 反射相关的类   反射相关的类,最基本的当然是 Class 类。   获取了Class对象之后,就可以接着生成对象实例、调用方法、查看字段等等。   字段( Field )、方法( Method )和构造方法( Constructor<T> )各有相应的类来表示,它们共同继承于 java.lang.reflect.AccessibleObject 类:   这三个类共同实现的还有 Member 接口:   获取字段、方法和构造方法时,需要调用Class类的 getXXX() 和 getDeclearedXXX() 方法,需要注意二者区别。   比如对于方法: getMethods();//获取public (包括父类中的) getDeclaredMethods();//获取本类声明(包括各种修饰符public、private)   相关博文: Java中的反射机制(一)   API 文档: http://docs.oracle.com/javase/7/docs/api/ 访问权限相关   利用反射,可以访问一些SDK、API中的私有方法。   相关博文: Java中的反射机制(四) 利用反射访问私有   访问私有方法有一个关键点: setAccessible(true); // 抑制Java对修饰符的检查 这个方法是