01 2016 档案
摘要:原文地址:http://yhjhappy234.blog.163.com/blog/static/316328322011101413730764/?suggestedreading&wumii 我们知道,当一个类被加载、连接和初始化之后,他的生命周期就开始了,当该类的class对象不再被引用之后,
阅读全文
摘要:tomcat是一种非常常见的java web应用服务器,有时候服务器可能并不是部署在本地,而是部署在远程其他的机器上,我们用eclispe该如何进行debug调试呢? 1. 在eclispe中新建web应用,名字叫webtest。里面只有一个HelloServlet。Web.xml配置如下。 修改t
阅读全文
摘要:处理器内存模型 顺序一致性内存模型是一个理论参考模型,JMM和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照。JMM和处理器内存模型在设计时会对 顺序一致性模型做一些放松,因为如果完全按照顺序一致性模型来实现处理器和JMM,那么很多的处理器和编译器优化都要被禁止,这对执行性能将会有很大的影
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-6 与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则: 在构造函数内对
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-5 锁的释放-获取建立的happens before 关系 锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-4 volatile的特性 当我们声明共享变量为volatile后,对这个变量的读/写将会很特别。理解volatile特性的一个好方法是:把对volatile
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-3 数据竞争与顺序一致性保证 当程序未正确同步时,就会存在数据竞争。java内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量, 在另一个线程读同一个
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-2 数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性。数据依赖分下列三种类型: 名称 代码示例 说明
阅读全文
摘要:本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-1 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种
阅读全文
摘要:1. 概述 多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论 Ja
阅读全文
摘要:http://my.oschina.net/chihz/blog/56256
阅读全文
摘要:并发本来就是个有意思的问题,尤其是现在又流行这么一句话:“高帅富加机器,穷矮搓搞优化”。 从这句话可以看到,无论是高帅富还是穷矮搓都需要深入理解并发编程,高帅富加多了机器,需要协调多台机器或者多个CPU对共享资源的访问,因此需要了解并 发,穷矮搓搞优化需要编写各种多线程的代码来压榨CPU的计算资源,
阅读全文
摘要:Java语言出来之前,大家都在拼命的写C或者C++的程序,而此时存在一个很大的矛盾,C++等语言创建对象要不断的去开辟空间,不用的时候有需要不断的去释放空间,既要写构造函数,又要写析构函数,很多时候都在重复的allocated,然后不停的~析构。于是,有人就提出,能不能写一段程序在实现这块功能,每次
阅读全文
摘要:第一种方法 1. 找到Eclipse的解压目录就是你的Eclipse.exe 所在的目录 2. 找到 .eclipseproduct 文件双击打开 3. 如图最后的数字就是Eclipse的版本号 第二种方法 1. Eclipse解压目录中找到readme文件夹双击打开 2. 里面有个readme文件
阅读全文
摘要:http://blog.csdn.net/majian_1987/article/details/44939911
阅读全文
摘要:一、 Log4E插件下载 下载地址:http://log4e.jayefem.de/content/view/3/2/ 二、安装Log4E插件 将下载下来的压缩包解压缩,如下图所示: 解压缩生成的【de.jayefem.log4e_free_1.5.0】文件夹里面有如下的两个文件夹 将【de.jay
阅读全文
摘要:http://www.cnblogs.com/doit8791/p/4093808.html
阅读全文
摘要:原文地址:http://www.cnblogs.com/doit8791/archive/2012/10/22/2734730.html 今天代码质量再次强调java代码提交SVN前要经过findBugs检查,虽然根据菜单我也基本会有findBugs插件,但为了更全面的学习、更高效的利用,我搜索学习
阅读全文
摘要:FindBugs 是由马里兰大学提供的一款开源 Java静态代码分析工具。FindBugs通过检查类文件或 JAR文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析。FindBugs既提供可视化 UI 界面,同时也可以作为 Eclipse插件使用。文本将主要使用将 FindBug
阅读全文
摘要:最近,由于安装插件导致eclipse的SVN插件不能使用,出现的问题实在很烦恼,通过试验发现当新安装的插件安装完毕后,只需要把eclipse-jee-kepler-SR2-win32-x86_64/eclipse/configuration目录下的org.eclipse.update目录删除即可,并
阅读全文
摘要:如何使用Eclipse插件—Easy Explorer Easy Explorer是一个Eclipse插件,主要用于快速浏览项目文件的目录,实用性比较强。 使用方法如下: 1、下载Easy Explorer,从此处下载EasyExplorer:http://sourceforge.net/proje
阅读全文
摘要:今天一个同事说他遇到了意见很有趣的代码,说JVM出现问题了,代码如下: public class Test { public static void main(String[] args) { int i=40; int j=040; System.out.println(i==j); } } 打印
阅读全文
摘要:上几次我们介绍到了JVM内部的几个类加载器,我们来重新画一下这个图,再来看一下他们之间的关系。 JVM的ClassLoader采用的是树形结构,除了BootstrapClassLoader以外?每个ClassLoader都会有一个parentClassLoader,用户自定义的ClassLoader
阅读全文
摘要:类的初始化 静态变量的声明语句以及静态代码块都被看作类的初始化语句,Java虚拟机会按照初始化语句在类文件中的先后顺序来依次加载它们。 上图中a的初始化其实经过了四步 1、 a被初始化为默认值0 2、 a被赋予正确的初始值1 3、 执行静态代码块,将a的值赋为2 4、 执行静态代码块,将a的值赋为4
阅读全文
摘要:原文地址:http://yhjhappy234.blog.163.com/blog/static/31632832201152555245584/?suggestedreading&wumii 类的加载的最终产品是位于堆(heap)中的class对象,Class对象封装了类在方法区内的数据结构并向J
阅读全文
摘要:http://blog.csdn.net/xyang81/article/details/7292380
阅读全文
摘要:原文地址:http://yhjhappy234.blog.163.com/blog/static/3163283220115573911607 我们知道java运行的是这样的,首先java编译器将我们的源代码编译成为字节码,然后由JVM将字节码load到内存中,接着我们的程序就可以创建对象了,我们知
阅读全文
摘要:http://www.cnblogs.com/zhwl/p/3642486.htmlhttp://blog.csdn.net/hpf911/article/details/14165865
阅读全文
摘要:http://doc.okbase.net/congcong68/archive/112508.html
阅读全文
摘要:前段时间出现了eclipse 不自动编译java文件的问题,在网上找了好长时间,总算把问题解决了,现在把这个问题的解决方法总结一下.1,看看project -- Build Automatically有没有勾上?如果没有,勾上以后,clean一下,重启eclipse2,看看你的lib里面有没有不用的...
阅读全文
摘要:1、 下载eclipse dtp 插件http://download.eclipse.org/datatools/updates/1.11help——>install new softwares
阅读全文
摘要:调用response.redirect(),或者request.getRequestDispatcher(loginAddr).forward(request,response);后,后面的代码照样执行,虽然能转发到相应的页面,代码大概如下:response.redirect("/login.jsp...
阅读全文
摘要:http://nxlhero.blog.51cto.com/962631/1666250?plg_nld=1&plg_uin=1&plg_auth=1&plg_nld=1&plg_usr=1&plg_vkey=1&plg_dev=1
阅读全文
摘要:http://www.ibm.com/developerworks/cn/java/j-lo-hotswapcls/
阅读全文
摘要:方法一:在初始化时保存ApplicationContext对象方法二:通过Spring提供的utils类获取ApplicationContext对象方法三:继承自抽象类ApplicationObjectSupport方法四:继承自抽象类WebApplicationObjectSupport方法五:实...
阅读全文
摘要:Java中获得完整的URl字符串:HttpServletRequest httpRequest=(HttpServletRequest)request; String strBackUrl = "http://" + request.getServerName() //服务器地...
阅读全文
摘要:原文地址:http://blog.csdn.net/lufeng20/article/details/24314381ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这...
阅读全文
摘要:http://www.linuxidc.com/Linux/2015-02/114265.htm
阅读全文
摘要:原文地址:http://www.2cto.com/database/201108/100546.htmlmysqld服务器维护两种变量。全局变量影响服务器的全局操作。会话变量影响具体客户端连接相关操作。服务器启动时,将所有全局变量初始化为默认值。可以在选项文件或命令行中指定的选项来更改这些默认值。服...
阅读全文
摘要:客户的机器系统异常关机,重启后mysql数据库不能正常启动,重装系统后发现数据库文件损坏,悲催的是客户数据库没有进行及时备份,只能想办法从数据库文件当中恢复,查找资料,试验各种方法,确认下面步骤可行:一、找回表结构,如果表结构没有丢失直接到下一步a、先创建一个数据库,这个数据库必须是没有表和任何操作...
阅读全文
摘要:原文地址:http://www.tuicool.com/articles/RZRnq2Xtrabackup简介Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份 同样需要加表锁)。XtraB...
阅读全文
摘要:此方法只适合innodb_file_per_table = 1 当误删除ibdata 该怎么办? 如下步骤即可恢复: 1、准备工作 1)准备一台纯洁的mysql环境【从启动到现在没有使用过INNODB的表结构的mysql环境】(当然也可以不用纯洁的,但是一定要保证表id 小于后续要恢复的...
阅读全文
摘要:数据库误操作,把表的字段删除了,关键是被删除的字段的数据很重要,现在想要恢复数据,下面说说是怎么操作的。数据库只剩.frm和.ibd文件了,按照网上的做法分如下两步来进行:一、找回表结构,二、找回数据。关键是我在第一步就碰到了问题,进行不下去,网上第一步的描述如下:a、先创建一个数据库,这个数据库必...
阅读全文
摘要:mysql查看创建的数据库的数据,包含表等存放的目录,可以输入下面指令查看:show variables like 'datadir'
阅读全文
摘要:安装percona-xtrabackup依赖包(前提已安装mysql)yum -y install perl-CPAN perl-DBD-MySQL perl make gcc gcc-c++ patch libgcrypt libgcrypt-devel libaio libaio-devel a...
阅读全文
摘要:1、安装(1)查看是否安装 yum list installed mysql*(2)查看现有安装包 yum list mysql*(3)安装mysql服务器端 yum install mysql-dev yum install mysql-se...
阅读全文
摘要:今天发现Mysql的not in使用的一个问题,大致是:select * from A where id not in (select fid from B).发现查询结果无论如何都是0条记录。后来发现B里面返回的查询结果集有一条NULL值,查了资料才知道mysql 的not in里面如果有一个NU...
阅读全文
摘要:Windows下,在文件/bin/catalina.bat,Linux下,在文件/bin/catalina.sh的前面,增加如下设置:JAVA_OPTS=-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】JAVA_OPTS 这个是,TOMCAT已经定义好的名,你只需要将JAVA_OPTS=-...
阅读全文
摘要:在密码学里,有一种理想的加密方案,叫做一次一密乱码本(one-time pad)。one-time pad的算法有以下要求:1、密钥必须随机产生2、密钥不能重复使用3、密钥和密文的长度是一样的。one-time pad是最安全的加密算法,双方一旦安全交换了密钥,之后交换信息的过程就是绝对安全的啦。这...
阅读全文
摘要:阿里巴巴推出的国产数据库连接池,据网上测试对比,比目前的DBCP或C3P0数据库连接池性能更好简单使用介绍Druid与其他数据库连接池使用方法基本一样(与DBCP非常相似),将数据库的连接信息全部配置给DataSource对象。下面给出2种配置方法实例:1. 纯Java代码创建DruidDataSo...
阅读全文
摘要:DRUID——为监控而生的DB池1. DRUID介绍DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池(据说是目前最好的连接池,不知道速度有没有...
阅读全文
摘要:mysql查看表结构命令,如下:desc 表名;show columns from 表名;describe 表名;show create table 表名;示例:use testDB; #切换到testDB数据库select * from columns where table_name='表名';...
阅读全文
摘要:在eclipse配置一个简单的activiti项目,配置的是mysql数据库,报错如下:SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: Defaulting to no-operation (NOP) lo...
阅读全文
摘要:http://blog.csdn.net/shirdrn/article/details/6270506
阅读全文
摘要:原文地址:http://www.tuicool.com/articles/yUnURjy
阅读全文
摘要:遇到的错误为:1.4.0' but it could not be found等。或者错误为:no repository found containing,若出现错误,安装补丁后,需要重启eclipse。首先,需要下载补丁,activiti path地址为: http://www.shareyx.c...
阅读全文
摘要:一、Activiti下载及简介 1.1、Activiti下载 官网下载地址:http://activiti.org/download.html Note:下载时不一定要使用最新版本的,最新版本会欠缺中文资料在使用时会稍微繁琐点,所以提倡下载稍稳定点的或者距最新版本较近的版本。 1.2、Ac...
阅读全文
摘要:原文地址:http://www.open-open.com/lib/view/open1438785141958.html#_label2一、 什么是工作流二、 工作流技术的优点三、 Java开发者会为什么要学Activity工作流四、 Activity工作流学习要点一、 什么是工作流以请假为例,现...
阅读全文
摘要:原文地址:http://www.myexception.cn/eclipse/1863140.html在eclipse中设计BPMN 2.0工作流定义的基本步骤1. Activiti问我们提供了Activiti BPMN 2.0, 这个工具是基于Eclipse所开发的工具,安装十分方便。在安装Act...
阅读全文
摘要:http://blog.csdn.net/bluejoe2000/article/details/39521405#t9
阅读全文
摘要:1. activiti-explorer默认使用h2数据库,第一步要修改db.properties的配置,如果使用其他数据库的话,务必放入驱动包,oracle的ojdbc4不能用,会报错,要使用版本高的驱动包2. 修改完配置后放入tomcat,启动就可以直接访问,用户名:kermit,密码:kerm...
阅读全文
摘要:从官网下载的Activiti-explorer的war文件内部默认是使用h2内存数据库的,如果想改用其他的数据库来做持久化,比如sql server,需要做如下配置。1)修改db.properties文件路径:C:\apache-tomcat-7.0.64\webapps\activiti-expl...
阅读全文
摘要:第一种方法,就是list中对象实现Comparable接口,代码如下:public class Person implements Comparable { private String name; private Integer order; /** * @return...
阅读全文
摘要:原文地址:http://blog.jobbole.com/78960/一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得...
阅读全文
摘要:原文地址:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html我每天使用 Git ,但是很多命令记不住。一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用 Git 命令清单...
阅读全文
摘要:原文地址:http://www.ruanyifeng.com/blog/2011/09/restful(作者对Rest的理解非常透彻和简洁)越来越多的人开始意识到,网站即软件,而且是一种新型的软件。这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high l...
阅读全文
摘要:http://www.cnblogs.com/longshiyVip/p/5097336.html概述了复制集,整体上对复制集有了个概念,但是复制集最重要的功能之——自动故障转移是怎么实现的呢?数据同步又是如何实现的?带着这两个问题,下面展开分析。一. 数据同步先利用mongo客户端登录到复制集的p...
阅读全文
摘要:1. 复制集概述数据库总是会遇到各种失败的场景,如网络连接断开、断电等,尽管journaling日志功能也提供了数据恢复的功能,但journaling通常是针对单个节点来说的,只能保证单节点数据的一致性,而复制集通常是由多个节点组成,每个节点除了journaling日志恢复功能外,整个复制集还具有故...
阅读全文
摘要:1、下载mongoDB的jar包,并引入到工程的CLASSPATH中下载:mongodb2.5驱动包下载如果使用maven项目,最新的依赖如下: org.mongodb mongodb-driver 3.2.0需要特别注意的是如果工程不是maven项目而是通过引入jar包的方式,那么在m...
阅读全文
摘要:聚集操作是对数据进行分析的有效手段。MongoDB主要提供了三种对数据进行分析计算的方式:管道模式聚集分析,MapReduce聚集分析,简单函数和命令的聚集分析。1. 管道模式进行聚集 这里所说的管道类似于Unix上的管道命令。数据通过一个多步骤的管道,每个步骤都会对数据进行处理,最后返回需要...
阅读全文
摘要:mongoDB的Journaling日志功能与常见的log日志是不一样的,mongoDB也有log日志,它只是简单记录了数据库在服务器上的启动信息、慢查询记录、数据库异常信息、客户端与数据库服务器连接、断开等信息。Journaling日志功能则是mongoDB里面非常重要的一个功能,它保证了数据...
阅读全文
摘要:与关系数据库一样,MongoDB也是通过锁机制来保证数据的完整性和一致性,MongoDB利用读写锁来支持并发操作,读锁可以共享写锁具有排他性。当一个读锁存在时,其他读操作也可以用这个读锁;但当一个写锁存在时,其他任何读写操作都不能共享这把锁,当一个读和写都等待一个锁时,MongoDB将优先分配锁...
阅读全文
摘要:数据库保存记录的机制是建立在文件系统上的,索引也是以文件的形式存储在磁盘上,在数据库中用到最多的索引结构就是B树。尽管索引在数据库领域是不可缺少的,但是对一个表建立过多的索引会带来一些问题,索引的建立要花费系统时间,同时索引文件也会占用磁盘空间。如果并发写入的量很大,每个插入的文档都要建立索引,可想...
阅读全文
摘要:1.1 什么大数据 具体来说,大数据技术涉及到数据的创造,存储,获取和分析,大数据的主要特点有下面几个: 数据量大。一个典型的PC机载2000年前后其存储空间可能有10GB,今天facebook一天增加的数据量就将近有500TB;一架波音737的飞机绕美国飞行一周将会产生200TB的数据;移动互联网
阅读全文
摘要:原文地址:http://site.douban.com/196781/widget/notes/12161495/note/269163206/本文献给对git很迷茫的新手,注意是新手,但至少会点基本操作,有点基本概念的新手,我不会从怎么用github和git是什么开始讲的。如果作为新手你看书又看不...
阅读全文
摘要:http://rogerdudler.github.io/git-guide/index.zh.html
阅读全文
摘要:1.按照github上的指南配置(http://help.github.com/win-set-up-git/)基础的git环境。2.在github上创建一个Repository。3.在Eclipse中通过“Eclipse Marketplaces”,在Market Places里安装egit。4....
阅读全文
摘要:1.在https://github.com new repository2.在eclipse中new project 比如:Test项目3.右击"Test"->Team->share project... ->select a repository type:Git勾选 Use or create...
阅读全文
摘要:国外有些比较好的源代码网站,经常需要从这些网站上导入项目到eclipse中,我最近就发现github.com这个网站上有很多开源项目。这里就以从github网站上导入项目到eclipse中为例来详细的介绍其中的步骤:准备工作:先注册一个github网站的账号准备好一个可用的eclipse方法/步骤1...
阅读全文