摘要: vimperator是firefox下的插件,是的firefox可以像 vim一样被操作:vimperator安装之后,其配置路径在:C:\Users\{用户名}\vimperator\中,在其中建立一个colors文件夹,然后建一个 test.vimp的文件使用文本编辑器打开::highlight... 阅读全文
posted @ 2015-07-20 16:56 a ray of sunshine 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 1.为什么会出现设计模式 我们将一个功能模块,使用OO来抽象为不同的类,然后这些类协作完成功能。类协作的时候就产生了类与类之间的耦合。类和类的协作产生耦合其实就是new导致的。 例如: class A{ public void method(){ B b = new B(); C c = new C(); D d = new D(); ... 阅读全文
posted @ 2015-07-19 15:49 a ray of sunshine 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 一:输入流, 字节流(二进制字节) 1. InputStream 类,抽象类代表一输入流 2. 具体的流类: AudioInputStream, ByteArrayInputStream, FileInputStream, FilterInputStream, ObjectInputStream, PipedInputStream, SequenceInputStream, StringB... 阅读全文
posted @ 2015-07-19 15:46 a ray of sunshine 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 1. Proxy类的 newProxyInstance 的实现: 1. 获得代理类,这个代理类有点类似与Proxy类的子类。这个代理类有一个接受 Proxy(InvocationHandler h) 的构造函数。 public static Object newProxyInstance(ClassLoader loader, ... 阅读全文
posted @ 2015-07-19 15:42 a ray of sunshine 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 1. js中的函数 1.1 函数定义的方法有三种 第一种: function box(num1, num2){ return num1 + num2; } 第二种: var box = function(num1, num2){ return num1 + num2; } 第三种: ... 阅读全文
posted @ 2015-07-19 15:38 a ray of sunshine 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1. 每一个easyui组件都有一个以其组件名称命名的函数例如:linkbutton: 这个函数的功能有三部分: $.fn.linkbutton = function(options, param){ // 第一个功能:这个函数可以接受一个字符串参数,这个字符串参数通常就是 // 这个组件所提供的函数的名称,通过下面的代码就实现了,对该函数的调用 // 其实这里可以这样实现的原因是,js 不是一种... 阅读全文
posted @ 2015-07-19 15:35 a ray of sunshine 阅读(1493) 评论(0) 推荐(1) 编辑
摘要: 场景:com.dll 没有声明其套件类型: 1. CoInitialize(0); CoInitializeEx(0, COINIT_APARTMENTTHREADED); 只有一个线程: 2. CoInitializeEx(0, COINIT_MULTITHREADED); 进入套件前,只有主线程。 CoInitializeEx(0, COINIT_MULTITH... 阅读全文
posted @ 2015-07-19 15:27 a ray of sunshine 阅读(474) 评论(0) 推荐(0) 编辑
摘要: 1. 不处理异常:如果代码发生异常,而没有进行 try...catch 则代码执行到此处就直接中断了,不会继续执行了。由于没有异常处理器,则这个异常被throw给了JVM,JVM处理异常的方法是:调用异常的 printStackTrace 方法,在标准输入设备中打印出上面的信息,然后JVM就shutdown了。 public void exception(){ i... 阅读全文
posted @ 2015-07-13 14:48 a ray of sunshine 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 1. FileInputStream 类直接继承了InputStream 的方法mark, markSupported, reset 方法而这几个方法都是空实现markSupported直接返回false所以对于FileInputStream类不支持随机访问文件,只能顺序的读写文件。2. NIO中的... 阅读全文
posted @ 2015-07-13 14:35 a ray of sunshine 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 1.常用快捷键ctrl + shift + r打开myeclipse中的资源搜索对话框,可以以正则表达式的方法搜索所有工程中的任何文件ctrl _+ shift + t按照类型信息(类名,接口名)搜索打开文件ctrl + h打开关键字搜索对话框,在这里可以搜索指定文件类型(使用正则表达式)在搜索关键... 阅读全文
posted @ 2015-07-13 10:49 a ray of sunshine 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1. Eclipse/MyEclipse atl+/ 快捷键失效当把操作系统语言设置为英文时,eclipse/myeclipse的atl+/快捷键失效了,解决办法:Eclipse下进入Windows ->Preperences ->General ->keys或者Ctrl+Shift+LL1、把wo... 阅读全文
posted @ 2015-07-12 21:41 a ray of sunshine 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 1. case .. when .. then .. end Oracle CASE WHEN 用法介绍 1 select nvl(sum(case p.need_mistake_audit_level 2 when 1 then 3 ... 阅读全文
posted @ 2015-07-10 18:49 a ray of sunshine 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 使用with as实现嵌套查询和递归查询:使用WITH AS提高性能简化嵌套SQL在MySQL中可以使用sql server中可以使用上面的语句进行递归查询但是在oracle中却不行,oracle中使用下面的语句来进行递归查询:1 select *2 from permission_sgdac ... 阅读全文
posted @ 2015-07-10 10:18 a ray of sunshine 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 缘起:网上下载了一份源代码,但是由于其中的存在某些空文件夹,而且文件夹特别多,且目录也比较深,所以写一个批处理,用来查找出这份源代码中的空文件夹,使其可以在github上提交 1 @echo off 2 cls 3 rem --- main program --- 4 set baseDir=C:\... 阅读全文
posted @ 2015-07-09 16:22 a ray of sunshine 阅读(983) 评论(0) 推荐(0) 编辑
摘要: 1. pl/sql连接oracle必须首先安装oracle客户端:精简版的oracle客户端,可以在这里下载:Instant Client Downloads for Microsoft Windows (32-bit)Instant Client Downloads for Microsoft W... 阅读全文
posted @ 2015-07-07 18:32 a ray of sunshine 阅读(157) 评论(0) 推荐(0) 编辑
摘要: data1 = encodeURI(JSON.stringify(data.rows[0]));moduleInfo = encodeURI(JSON.stringify(data.rows[1]));targetHref "/XXX/&data='"+data1+"&moduleInfo="+mo... 阅读全文
posted @ 2015-07-07 12:13 a ray of sunshine 阅读(3227) 评论(0) 推荐(0) 编辑
摘要: 1. 创建 maven 工程 mvn archetype:generate -DgroupId=com.sunshine.learn -DartifactId=sunshine.learn -DarchetypeArtifactId=maven-archetype-quickstart -Dinte 阅读全文
posted @ 2015-06-16 11:35 a ray of sunshine 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 1.使用线程同步机制,达到先支出后收入的效果。 1 public class AccountTest{ 2 3 public static void main(String[] args){ 4 final Account acc = new Account... 阅读全文
posted @ 2015-06-12 18:01 a ray of sunshine 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 1. synchronized的作用synchronized类似于win32中的临界区,临界区的作用:对于共享的全局变量,在多个线程并发的情况下,对这样的全局变量的读写就会发生读写的冲突,使得全局变量的读写,能够以原子的方式被执行,而不是一个线程要读取全局数据时候,由于线程调度,而另一个线程则此时被... 阅读全文
posted @ 2015-06-12 15:16 a ray of sunshine 阅读(2395) 评论(0) 推荐(0) 编辑
摘要: 1.启动两个线程 1 public class ThreadTest { 2 3 public static boolean isRun = false; 4 5 @Test 6 public void mainTest(){ 7 System.o... 阅读全文
posted @ 2015-06-12 11:38 a ray of sunshine 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 1 String source = "ABCDEF123456"; 2 int mid = source.length() / 2; 3 4 ByteArrayInputStream bytesIS = new ByteArrayInputStre... 阅读全文
posted @ 2015-06-09 18:49 a ray of sunshine 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 1 // short start = (short) 0xB0A0; 2 short start = (short) 0xA1A0; 3 // gbk gb2312 big5 gb18030 4 String encoder = "gb... 阅读全文
posted @ 2015-06-08 18:14 a ray of sunshine 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 1. JSON数据的读写,以及字符串,JAVA对象互转常用的JSON库,:gson, json,利用JSON构造,树结构等等,应用gson的使用 2. xml, properties配置的读写解析,properties文件的解析,可以使用 java.util.Properties来读写xml文件的解... 阅读全文
posted @ 2015-06-05 22:30 a ray of sunshine 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 1.下载文件download Zip下载工程文件2.将该工程文件解压到文件夹中3.在命令行下执行 mvn eclipse:eclipse这个命令执行之后,只是生成了一个 myeclipse/eclipse可以识别的普通工程(java工程),此时我们就可以导入该工程了,但是导入之后,MyEclipse... 阅读全文
posted @ 2015-05-29 22:27 a ray of sunshine 阅读(1808) 评论(0) 推荐(0) 编辑
摘要: 一:请求的分发过程1. 请求的接管 spring org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1 spring *.h... 阅读全文
posted @ 2015-05-26 16:24 a ray of sunshine 阅读(177) 评论(0) 推荐(0) 编辑
摘要: // var express = "num1+num2*(num3-num_4)"; // var express = "num1+num2*(num3*(num_4-num5))"; var express = "(num1+num2)*(num3*(num_4-num5))-78";... 阅读全文
posted @ 2015-05-12 20:56 a ray of sunshine 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 1. (function($){})(jQuery)这个的函数其实: function($){}是一个匿名函数,这个函数的有一个形参 $ ,定义函数之后后面的 (jQuery) 其实就是对改函数的调用,传递了 jQuery 参数,给前面定义的匿名函数:等价于:定义函数:foovar foo = fu... 阅读全文
posted @ 2015-05-05 19:21 a ray of sunshine 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 1. 在工程中引入 ueditorueditor其实就是一个js插件,所以一般将其,放到工程的js目录下面如上图所示的目录,直接将下载下来的ueditor发到js目录中,特别要注意的是此时要吧 jsp 中的 lib 中的这几个包全部复制到WEB-INF下的lib目录中,特别注意,在复制时前4个jar... 阅读全文
posted @ 2015-03-20 11:00 a ray of sunshine 阅读(956) 评论(0) 推荐(0) 编辑
摘要: 1. sql的执行过程(相关的博文:SQL语句的解析过程)关于sql的执行过成,参考:Reference : Inside Microsoft® SQL Server™ 2005 T-SQL Querying Publisher: Microsoft Press Pub Date: March 07... 阅读全文
posted @ 2015-03-20 09:05 a ray of sunshine 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1. 清理原有的mysql 1.1 查看是否安装了MySQL rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库 1.2 删除数据库 rpm -e mysql // 普通删除模式 rpm -e --nodeps mysql //... 阅读全文
posted @ 2015-03-18 11:51 a ray of sunshine 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 结合设计模式之禅,总结的设计模式的使用 阅读全文
posted @ 2015-02-28 18:08 a ray of sunshine 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是一门编程语言 一门编程语言应该具备一下基本要素: 1. 类型系统(可以定义变量) 2. 复合类型(例如:结构体,枚举,类,接口) 3. 循环结构 4. 判断结构 5. 函数,及其调用规范 6. 编译器,可以将这种语言编译的源代码,编译成,特定平台上可... 阅读全文
posted @ 2015-02-10 20:55 a ray of sunshine 阅读(523) 评论(0) 推荐(0) 编辑
摘要: Visual Studio 2012的帮助系统采用了新的帮助查看器,其名称是Microsoft Help View但是这个查看器有一个缺点就是,无法更改页面的默认字体,在初始安装好查看器时,其默认的字体是宋体,在显示英文时非常难看。所以现在使用下面的方法来修改这个查看器的默认字体。1. 找到查看器的安装位置一般就是这个位置: C:\Program Files\Microsoft Help Viewer\v1.0在这个路径下有一个名称为 Help3Branding.mshc 的文件,这个文件其实是一个压缩文件,我们可以使用WinRar打开。2. 将这个名称为 branding-zh-CN.css 阅读全文
posted @ 2014-03-24 20:07 a ray of sunshine 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 参考文章:硬盘知识 阅读全文
posted @ 2014-03-12 16:06 a ray of sunshine 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 批处理中用到的一些命令:1. echoecho off 表示关闭回显echo on 表示打开回显@echo off 关闭回显,同时连这一行也不回显2. pause暂停批处理程序的执行并显示一条消息,提示用户按任意键继续执行。4. rem/::这两个都是用了进行注释的5. %[1-9]%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格或者Tab分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。6. goto和汇编中的goto类似7. callcall [dirve:][paht]filename [batch-parameters] 阅读全文
posted @ 2014-03-09 00:37 a ray of sunshine 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 使用dll启动的组件,将和客户程序共享一个进程地址空间。所以组件的接口指针我们可以直接使用。但是如果服务器是以exe形式提供的,则客户端和服务器运行在不同的地址空间中,客户端调用服务器端的方法时就要跨越进程边界。对于调用跨进程边界的接口,我们需要考虑以下问题:6.1 问题一的解决 要想在一个进程中调用另一个进程中的函数,其实就是一种进程间通信。操作系统提供了多种执行进程间通信的方法,其中COM所使用的是本地过程调用(LPC)。那么LPC是如何实现的,这一点看似比较神奇,实际上并非如此。虽然不同的进程在不同的虚拟地址空间中,通过进程自身的能力是无法跨越进程边界的。但是进程是由操作系统创建的,进程 阅读全文
posted @ 2014-03-07 23:16 a ray of sunshine 阅读(1529) 评论(0) 推荐(0) 编辑
摘要: 5. COM中的线程 Win32中的线程,典型的Win32程序具有两种不同类型的线程:用户界面线程和工作者线程。用户界面线程是同一个或者多个窗口关联着的,这些线程具有自己的消息循环,以便能对用户输入做出反应。工作者线程用于后台处理,它们没有任何窗口与之相关联,通常也没有消息循环。 COM中使用的线程类型与Win32的两种类型的线程是相同的,只不过换了不同的名称而已。在COM中与Win32中的用户界面线程相对应是“套间线程”,而与工作者线程相对应的是自由线程。 既然COM线程与Win32线程并没有什么差别,那么为什么COM还需要定义自己的线程呢?其原因在于参数调整与线程同步。5.1 套间线程: 阅读全文
posted @ 2014-03-07 23:10 a ray of sunshine 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 1. 每一个COM对象都有一个其支持的线程模型的标识,这个标示被称之为套间(apartment),常见的线程模型有单线程,多线程。则套间也被分为单线程套间(STA)和多线程套间(MTA)。如果一个COM对象属于STA,则该COM对象不支持并发操作。如果一个COM对象属于MTA,则该COM对象支持并发和重入,可以多个线程同步访问。2. 每一个COM对象都必然属于某一个套间,然而一个套间可以被多个对象所共享。每一个进程中最多可以有1个MTA, 但是一个进程可以包含多个STA。3. 同一时刻,一个线程只在一个套间中执行。一个线程要想使用COM对象,它必须先进入一个套间。① 什么叫线程进入一个套间?所 阅读全文
posted @ 2014-03-07 23:02 a ray of sunshine 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 1. DIB & DDBhttp://www.codeproject.com/Articles/7443/DFB-vs-DIB2. 内存设备描述表 (Memory DC)http://www.codeproject.com/Articles/224754/Guide-to-Win32-Memory-DC3. win32中的区域http://www.codeproject.com/Articles/1944/Guide-to-WIN-Regions4. win32中的裁剪区域http://www.codeproject.com/Articles/2095/A-Guide-to-WIN-C 阅读全文
posted @ 2014-03-06 19:07 a ray of sunshine 阅读(902) 评论(0) 推荐(0) 编辑
摘要: 1. what is DC?Windows中的设备描述表,实际上就是对显示设备的一种抽象,而显示设备其实就是将内中的像素颜色数据渲染出来,所以设备描述表本质上就是一块内存,我们可以使用GDI函数来在该内存区域内进行绘制,所谓的绘制实际就是在该内存区域中添加像素的颜色信息,同时,Windows提供的GDI函数中,使用Pen来绘制线段,使用Brush来填充该DC,使用Font来写文字,所以如果我们要使用GDI函数在DC中,就必须首先设置这些参数,这些参数被称为DC的属性,显然如果这样使用GDI函数来进行绘图将非常繁琐,所以Windows将这些DC属性也抽象到设备描述表(DC)这个概念中,所以我们可 阅读全文
posted @ 2014-03-06 12:21 a ray of sunshine 阅读(935) 评论(0) 推荐(0) 编辑