摘要:
我们在操作JavaBean的时候 我们可以用Introspector的方式来操作,但是呢这样需要我们写大量的代码 。 Apache小组为我们提供了很有用的工具包来操作JavaBean 也就是BeanUtils工具包 ,这个可以到 apache.org 上面下载 commons-BeanUtils工具包,同时我们也要下载Logging也就是日志工具包 。我们下载好了BeanUtils工具包之后 打开之后 发现你面有一个docs 那个就是帮助文档 介绍了 Beanutils工具包中各种类的使用 ,这里 我们主要用到BeanUtils类BeanUtils类中的所有方法都是静态方法 我们通过它的get 阅读全文
摘要:
2段简单的JavaBean代码演示了简单内省操作以及复杂内省操作 。1、简单内省操作 package me.test;import java.lang.reflect.*;import java.beans.IntrospectionException;import java.beans.PropertyDescriptor;public class IntroSpectorTest{ public static void main(String []args) throws IntrospectionException, IllegalArgumentException, IllegalAc 阅读全文
摘要:
JavaBean的内省操作 跟反射差不多 ,只是内省操作比反射简单,但是原理都一样, 学会了JavaBean的内省操作 那么对于JavaBean在web中的应用就会有很好的理解,并且明白为什么利用动作指令setProperty就可以设置JavaBean的属性 :看下面代码 ,有注释。假设我们有一个JavaBean package me.test;public class IntroSpectorTest {private int x ;public IntroSpectorTest(int x){this.x=x ;}public int getX(){return x ;}public vo 阅读全文
摘要:
我们往常进行文件的加载的时候 用到的都是 FileInputStream进行 文件的加载比如下面一个例子 :InputStream in=FileInputStream("1.properties"); Properties p=new Properties() ;p.load(int) ;//加载输入流 获得键值对 p.getProperties(...) ;////我们通常都是这样来加载配置文件 。我们知道 我们在使用 第三方提供的类的时候 第三方都是以 jar包的形式提供给我们, 并没有给我们提供源文件,提供的只是一个一个的.class字节码文件 。我们可以通过Cla 阅读全文
摘要:
学了反射后,也不知道反射是干什么的,那学了就没什么用了。反射在框架中有很重要的作用,什么是框架呢?大家在做JavaWeb开发的时候 用过JDBC吧,首先上来的时候 我们需要加载JDBC的驱动。Class.forName(...) //每个不同的驱动对应不同的类名字 对于开发人员来说不同的人选择的驱动程序 不一样 。那么我们就需要不同的驱动类 。我们是在JSP标签中进行了 这个类的调用,那么相对来说 JSP就是一个框架,而我们加载的这个类就是一个工具。框架与工具的关系 就是 我们通过框架来调用类。就好像我们在一个main方法中调用另一个类的main方法一样、、下面是从一个配置文件中加载指定的类 阅读全文
摘要:
Java.uitl包中的 ArrayList 和HashSet类 我们都用过,但是我们可能都没有去,深入研究过其内部的结构 。都是实现了Collection的类 ,Collection是一个标准ArrayList 其实就相当与一个动态数组,我们每增加一个元素,他啊都会将元素增加到ArrayList中并且为这个元素分配指定索引 就像一个数组一样 。这个索引就是从0开始 1 2 34 。。。。HashSet 看到Hash我们就知道,它的内部结构了,学过数据结构我们都知道hash表是如何插入元素 和 搜索元素,利用hash表我们可以快速的查找元素,而不用像数组一样进行遍历 。在HashSet中 我. 阅读全文
摘要:
说道剪切板大家都不陌生吧 ,右键粘贴 都用过。其实编程也很简单,但是在进程之间的通信 却有着不可替代的作用 ,剪切板说白了就是一个缓冲区 ,但是这个缓冲区不是某个进程的私有空间,而被全部进程所共享。windows下的每个进程都可以共享剪切板中的数据 。 其实我以前也学过剪切板编程但是一直没有真正理解,于是又学习了一遍。终于明白了。。。写下来分享下。。。。要使用剪切板就要了解剪切板的几个函数 ?BOOL EmptyClipboard(VOID); //清空剪切板并且释放与剪切板相关的数据的句柄 BOOL OpenClipboard( HWND hWndNewOwner ); //打开剪切板... 阅读全文
摘要:
其实对于 windows进程的操作很简单,只要理解了 进程线程的概念 对于 进程的操作 那么就只是 几个函数的 问题了 。下面是 对于进程操作要用到的几个函数 。进程的概念:我们运行了一个程序,那个这个独立的程序就是一个进程。进程有自己的私有地址空间,进程中的线程共享这些私有地址空间 。在一个进程中多个线程共同完成一项功能,可以提高工作的效率。HANDLE WINAPI CreateToolhelp32Snapshot(//这个函数创建一个系统进程列表的快照 并返快照的句柄 用于操作 DWORD dwFlags, DWORD th32ProcessID );BOOL WINAPI Proce. 阅读全文
摘要:
动态链接库是windows下实现数据共享的一种重要方法,它提供了 二进制层上的共享。 动态链接库 可以很好的实现 项目模块之间的分离,如果某一模块出错不需要重新编译整个项目,只需要修改相应的模块 ,以及在产品的升级过程中 我们可以通过替换dll文件来实现产品的升级.动态链接库包含2个文件 lib因入口 和dll动态链接库 ,我们在程序中通过已入库 来调用dll文件中 存储的函数 。DLLMain函数 是DLL文件的入口函数 在dll进行初始化或者释放的时候都会调用这个函数,相对应的就是 LoadLibrary和 FreeLibrary 函数在动态链接库中只有 指定为 _declspec(exp 阅读全文
摘要:
/**这个类可以根据 给定的一个Class字节码文件获取类的所有信息* 编写者:xiaowei * 这个例子仅仅作为反射的练手* 喜欢的朋友继续完善* 只是获得了所有访问权限但是没哟觉得而每个成员的权限类型* */import java.lang.reflect.*;public final class FindClass { private String fieldList ; //成员列表 private String methodList ; //方法列表 private String className;//类的名字 private String showClassInfo; //输. 阅读全文