随笔分类 -  Java

摘要:一:Java类加载和初始化 1.1 类加载器(类加载的工具) 1.2 Java使用一个类所需的准备工作 二:Java中RTTI 2.1 :为什么要用到运行时类型信息(就是RTTI) 2.2 :RTTI在运行时如何表示 2.3 : Class对象 2.3 : RTTI形式总结: 三:Java利用反射获 阅读全文
posted @ 2018-01-05 22:09 HelloSUN 阅读(821) 评论(0) 推荐(0) 编辑
摘要:Java NIO提供了与标准IO不同的IO工作方式: Channels and Buffers(通道和缓冲区):标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。 Asynchrono 阅读全文
posted @ 2018-01-01 20:25 HelloSUN 阅读(204) 评论(0) 推荐(0) 编辑
摘要:变量和常量 在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量。 在实际的程序中,可以根据数据在程序运行中是否发生改变,来选择应该是使用变量代表还是常量代表。 变量 变量代表程序的状态。程序 阅读全文
posted @ 2017-12-21 08:35 HelloSUN 阅读(4447) 评论(0) 推荐(1) 编辑
摘要:不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序 阅读全文
posted @ 2017-10-10 12:23 HelloSUN 阅读(232) 评论(0) 推荐(0) 编辑
摘要:以前解析json用的惯的就是Google的gson了,用惯了基本就用它了,一直也没发现什么大问题,因为都是解析简单的json数据。但是最近学习springboot,要解析一个比较复杂的json数据。就照之前的用gsonformat自动生成实体类,让gson直接解析,本想着一切ok了,可是确报错了,刚 阅读全文
posted @ 2017-08-22 15:52 HelloSUN 阅读(10490) 评论(0) 推荐(0) 编辑
摘要:0 预备知识 1 不正确的调用exitValue 2不正确的调用waitFor 3 一种可接受的调用方式 4 调用认为是可执行程序的时候容易发生的错误 5 window执行的良好示例 6 不良好的重定向命令输出 7 良好的重定向输出示例 8 总结 9 问答 0 预备知识 Runtime类是一个与JV 阅读全文
posted @ 2017-08-07 07:58 HelloSUN 阅读(793) 评论(0) 推荐(0) 编辑
摘要:Java并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得 阅读全文
posted @ 2017-07-30 09:48 HelloSUN 阅读(197) 评论(0) 推荐(0) 编辑
摘要:JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。 让我们来假想一下一个场景。在A用户关注了B用户的时候,系统发邮件给B用户,并且附有一个链接“点此关注A用户”。链接的地址可以是这样的 1 https://your.aweso 阅读全文
posted @ 2017-07-07 14:43 HelloSUN 阅读(265) 评论(0) 推荐(0) 编辑
摘要:上次在《JSON Web Token - 在Web应用间安全地传递信息》中我提到了JSON Web Token可以用来设计单点登录系统。我尝试用八幅漫画先让大家理解如何设计正常的用户认证系统,然后再延伸到单点登录系统。 如果还没有阅读《JSON Web Token - 在Web应用间安全地传递信息》 阅读全文
posted @ 2017-07-07 14:32 HelloSUN 阅读(189) 评论(0) 推荐(0) 编辑
摘要:FutureTask类是Future 的一个实现,并实现了Runnable,所以可通过Excutor(线程池) 来执行,也可传递给Thread对象执行。如果在主线程中需要执行比较耗时的操作时,但又不想阻塞主线程时,可以把这些作业交给Future对象在后台完成,当主线程将来需要时,就可以通过Futur 阅读全文
posted @ 2017-07-06 09:10 HelloSUN 阅读(1789) 评论(0) 推荐(0) 编辑
摘要:Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK。 系统要求 步骤 1:检查 Java 安装 现在打开控制台,执行下面的 java 命令。 我们来验证一下所有平台上的输出: 如果你没有安装 Java,从以下网址安装 Java 软件开发套件(SDK):http://www 阅读全文
posted @ 2017-05-31 21:16 HelloSUN 阅读(172) 评论(0) 推荐(0) 编辑
摘要:问题背景 公司项目中应用到的jdk环境为1.6,最近在家学习IntelliJ IDEA中sdk多环境配置时,想安装Jdk1.8,作为学习基础。那么问题来了,公司项目扩展不支持jdk1.8,为了既能满足公司项目开发环境,又能满足学习jdk1.8的需要,当然不能每一次都进行jdk的安装和卸载,需要探索另 阅读全文
posted @ 2017-05-29 14:41 HelloSUN 阅读(8566) 评论(0) 推荐(2) 编辑
摘要:不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序 阅读全文
posted @ 2017-05-27 09:08 HelloSUN 阅读(36065) 评论(0) 推荐(3) 编辑
摘要:地址:http://www.cnblogs.com/davenkin/archive/2013/02/16/java-tranaction-1.html 阅读全文
posted @ 2017-05-20 19:26 HelloSUN 阅读(137) 评论(0) 推荐(0) 编辑
摘要:如基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法 MD5(Message Digest algorithm 5,信息摘要算法) SHA(Secure Hash Algorithm,安全散列算法) HMAC(Hash Message Authentication Code,散 阅读全文
posted @ 2017-05-03 19:50 HelloSUN 阅读(2349) 评论(0) 推荐(0) 编辑
摘要:引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而且要满足需求和设计预期的效果。单元测试正是验证代码行为是否满足预期的有效手段之一。但不可否认,做测试是件很枯燥无趣的事情,而一遍又一遍的测试则更是让人生畏的工作。幸运的是,单元测试工具 JUnit 使这一切变得简单 阅读全文
posted @ 2017-04-18 11:30 HelloSUN 阅读(321) 评论(0) 推荐(0) 编辑
摘要:在maven工程中,我们会将配置文件放到,src/main/resources 下面,例如 我们需要确认resource 下的文件 编译之后存放的位置 它编译的路径直接位于classes下面,这个路径其实就是classPath的路径,所以,在resources 根目录下的配置文件其实就是 class 阅读全文
posted @ 2017-04-12 14:53 HelloSUN 阅读(10220) 评论(0) 推荐(1) 编辑
摘要:关于GSON的入门级使用,这里就不提了,如有需要可以看这篇博文 《Google Gson的使用方法,实现Json结构的相互转换》 ,写的很好,通俗易懂。 我为什么写这篇文章呢?因为前几晚跟好友 xiasuhuei321 探讨了一下GSON解析复杂的JSON的时候,能不能只解析源数据中的数组,甚至只解 阅读全文
posted @ 2017-03-30 17:20 HelloSUN 阅读(97467) 评论(0) 推荐(10) 编辑
摘要:摘要: 背景 Greenplum是一个MPP的数据仓库系统,最大的优点是水平扩展,并且一个QUERY就能将硬件资源的能力发挥到极致。 但这也是被一些用户诟病的一点,因为一个的QUERY就可能占光所有的硬件资源,所以并发一多的话,query相互之间的资源争抢就比较严重。 Greenplum资源隔 背景 阅读全文
posted @ 2017-03-27 16:56 HelloSUN 阅读(2238) 评论(0) 推荐(0) 编辑
摘要:工作负载及资源管理 查询分析-查看EXPLAIN输出 查询分析-查看EXPLAIN ANALYZE输出 执行查询花费的总时间 参与每个节点计划的节点数,只有返回记录的segment实例被统计 操作中的segment实例返回的最大结果数量及其ID 返回最大结果数量的segment实例产生记录的开始时间 阅读全文
posted @ 2017-03-27 16:55 HelloSUN 阅读(1744) 评论(0) 推荐(0) 编辑