
java
文章平均质量分 66
JarvisHuang
亦步亦趋的走,既要前行,也要欣赏沿途风景。
展开
-
5、HotSpot的算法实现
前面了解关于对象的生死判定和垃圾收集算法,而在HotSpot中是怎么实现的呢?枚举根结点根据可达性分析算法,GC的时候从GC Roots节点开始找引用链的,而做为GC Roots的节点主要是在全局性引用与执行上下文中,如果逐个检查的话,必然是需要耗费很多时间的。而执行GC的时候,所有线程是必然要停顿的。因为在执行时,如果对象的引用关系还在不断变化,就无法准确的进行GC了。不过,主流的虚拟机现在都是采原创 2017-05-13 10:06:33 · 442 阅读 · 0 评论 -
properties工具类
包含读取参数、读取全部参数返回一个map、修改/写入新的参数、获取文件路径的方法原创 2017-05-09 19:56:05 · 249 阅读 · 0 评论 -
SpringMVC+MyBatis+MySql环境搭建
第一次搭建springmvc+mybatis框架踩了不少坑,比如缺少jar包,配置参数出错,路径问题等等。通过不断的搜索和比对别人的搭建过程,还是让我搭建出来了。于是,打算总结一下我的搭建过程,并附上所需的jar包。希望能帮到有打算自己搭建SpringMVC框架的人。搭建框架的大致步骤是: - 导入相关jar包; - 添加并配置springmvc、mybatis文件; - 在web.xml中配原创 2017-05-09 19:51:59 · 800 阅读 · 0 评论 -
在linux下安装jdk
在官网上下载了最新的jdk1.8.0_111.tar.gz。可以用CRT(或者其他ssh工具)的FTP直接拷进去了debian中。然后移动到了usr/jdk下面,并解压mv jdk1.8.0_111 ../usr/jdktar -zxvf jdk1.8.0_111然后通过命令vi ~/.bashrc进入bashrc中添加环境变量 - 首先,移动光标到最后一行,并按a,即可输入 - 输入如下环境原创 2017-05-09 19:49:43 · 375 阅读 · 0 评论 -
1、创建和销毁对象
何时以及如何创建对象,何时以及如何避免创建对象,如何确保它们能够适时地销毁,以及如何管理对象销毁之前必须进行的各种清理动作。原创 2017-05-08 22:06:24 · 312 阅读 · 0 评论 -
4、垃圾收集之垃圾收集算法
导读垃圾收集器回收内存是根据定义的条件来收集的,有了条件就需要算法来实现这些条件了。垃圾收集算法垃圾收集主要的算法有标记-清楚算法、复制算法、标记-整理算法、分代收集算法这四种。1、标记-清除算法从名字就可以看出这个算法比较简单,首先标记出所有要回收的对象,在标记完成后统一回收被标记的对象。它有两个不足的地方: - 效率不高,标记和清除两个过程的效率都不高; - 会产生大量不连续的内存碎片,这会原创 2017-05-08 10:46:35 · 254 阅读 · 0 评论 -
3、垃圾收集之回收的对象
导读关于垃圾收集需要做的是3件事: - 哪些内存需要回收? - 什么时候回收? - 如何回收?我们已经了解到,程序计数器、虚拟机栈、本地方法栈(忘记的话,请重新看前两篇内容)这3个区域是随着线程生灭的;这几个区域的内存分配和回收是可以确定的,在方法结束或者线程结束时,内存就跟着被回收了。而JAVA堆和方法区不一样,它们只有在程序运行时才会动态的创建对象,动态的对内存进行分配和回收,而垃圾收集器原创 2017-05-07 10:34:56 · 267 阅读 · 0 评论 -
1、Java虚拟机之内存区域
为什么要了解JAVA内存管理?我们知道,用JAVA进行编程,最大的优势在于内存管理。我们可以完全忽略内存管理的细节,专注于逻辑业务上。但是,并不代表它就不会出现内存溢出或泄露的问题。而且,因为JAVA有自动管理内存的机制而对这一块不了解,显然是有点low的。所以,了解一下JAVA的内存管理,既有助于提高逼格,也能让我们在进行开发的时候,可以针对内存溢出或泄露的问题进行一些优化。原创 2017-05-06 09:58:07 · 340 阅读 · 0 评论 -
Android之沉浸式状态栏的实现
沉浸式状态栏确切的说应该叫做透明状态栏。一般情况下,状态栏的底色都为黑色,而沉浸式状态栏则是把状态栏设置为透明或者半透明。原创 2017-05-06 21:07:42 · 369 阅读 · 0 评论 -
Android之序列化浅析
序列化是什么序列化是指把Java对象转换为字节序列并存储到一个存储媒介的过程。反之,把字节序列恢复为Java对象的过程则称之为反序列化。为什么要序列化Java对象存在的一个前提是JVM有在运行,因此,如果JVM没有运行或者在其他机器的JVM上是不可能获取到指定的Java对象的。而序列化操作则是把Java对象信息保存到存储媒介,可以在以上不可能的情况下仍然可以使用Java对象。原创 2017-05-06 21:04:31 · 287 阅读 · 0 评论 -
(3)、exchange的几种类型及RPC的实现
在上一篇里,我们讲了rabbitMQ的通信流程。接下来,通过代码来实现exchange的几种类型,看一下rabbitMQ是如何运用的。原创 2017-05-06 10:13:09 · 1287 阅读 · 0 评论 -
(2)、rabbitMQ的通信流程
在上一篇中,大致介绍了一下rabbitmq(为了方便,以下简称rmq)中一些比较重要的概念,对rabbitmq也算是有了一些的了解。接下来,我们来看看rabbitmq的消息传递的流程,来熟悉和加深对rabbitmq 的了解。原创 2017-05-06 10:10:45 · 1555 阅读 · 0 评论 -
(1)、rabbitMQ入门
因为项目需要接触到了rabbitMQ,在此之前没有接触过关于这方面的内容,所以打算记录下对rabbitMQ的学习历程,这一篇是个人对rabbitMQ的一些基础概念的了解和环境的搭建。原创 2017-05-06 10:09:38 · 310 阅读 · 0 评论 -
CXF+Spring搭建Restful接口服务
之前项目中用CXF+Spring可以搭建WebService服务,后面发现cxf可以支持Restful规范的接口。于是,在接下去的练手项目中,打算用cxf+spring来搭建一个Restful接口服务。原创 2017-05-13 10:25:59 · 946 阅读 · 0 评论 -
Java中权限控制区分
private、public、protected 这三者大家都不会感到陌生。访问权限的修饰词,给类中的每一个成员定义一个使用范围,但是在使用的时候,可能有人不会太在意他们的区分,在某些情况下,不进行区分也许都是可行的,但是却不一定是最好。可能,一时也不会暴露出什么问题,但是,当项目变得庞大而复杂的时候,这样做就有可能留下了隐患或者缺陷。这虽然是一个细节,但是细节往往就是决定成败的因素。原创 2017-05-13 10:24:10 · 292 阅读 · 0 评论 -
tomcat修改访问时的应用名称
一般情况下,如果把项目放到tomcat中,访问的时候,路径是必须加上项目名,但是有时候我们想用别的项目名的话,就需要修改了。原创 2017-05-13 10:14:34 · 2264 阅读 · 0 评论 -
配置s2sh框架
工作到现在都是用现成的框架在进行开发,首次自己搭框架,记录一下步骤。原创 2017-05-13 10:11:43 · 335 阅读 · 0 评论 -
查看、修改mysql中数据库的编码
查看数据库编码查看mysql数据库编码如果是要查看整个数据库的编码的话,直接用status命令即可status;显示如下:查看自建库的编码进入对应的库,如testuse test;输入如下命令查看show variables like 'char%'结果如下: 修改数据库编码进入对应数据库后,输入以下命令//study为数据库名alter database study character原创 2017-09-08 16:05:00 · 465 阅读 · 0 评论