自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李达

——专注于Java Web,努力成为JavaEE架构师

  • 博客(200)
  • 收藏
  • 关注

原创 再说JTA和JTS

事务是编程中必不可少的一项内容,基于此,为了规范事务开发

2014-09-02 19:26:51 4923 15

原创 再说注解

当今的各种框架:Hibernate、Struts、Spring等,包括EJB,现在都支持注解形式,注解相比XML配置而言确实更为简洁,本文注解    从形式上看,注解是类似注释,它为代码提供了一种新的标识方式,可以在编译器先定义、使用,等到运行时再去解析这些注解对应的含义。在JDK1.5中引入,现在的JDK已经把注解的地位提升到和二进制码相同,当然如果你稍微关注过注解,你应该知道注解解析过

2014-08-16 08:25:58 1837 11

原创 再说JNDI

说到JNDI,即熟悉又陌生,熟悉在经常使用,如EJB3.0中的@EJB注入,底层实现即是JNDI的方式;喜闻乐见的:Context ctx=new InitialContext();Object obj=(Object)ctx.lookup("java:obj");更是最常用的方式。说它陌生,是因为,对于JNDI,我们仅限于基本的使用,本文就是带领大家进入JNDI分析阶段。JNDI作用

2014-08-16 08:24:04 2242 5

原创 再说Servlet

概述    Servlet也是JavaEE的一种规范,位于javax.servlet下,Servlet规范还包含Filter。该包下分为两部分:servlet有关和http有关。    为什么会有两部分?设计该规范时认为Servlet是一种服务模型,不应与协议耦合,因此就抽象出了一个 javax.servlet,同时提供一套基于HTTP协议上的Servlet扩展,当然就现在看,还没有基于其

2014-08-07 15:10:47 1619 3

原创 再说JDBC

上篇文章《再说Java EE》说明了一下什么是规范,有什么作用,这篇文章来细说一下JDBC。JDBC        JDBC(Java Database Connection)也是Java EE中的一个规范,所谓规范是一组接口,如JDBC接口包含在java.sql及javax.sql包中,其中java.sql属于JavaSE,javax.sql属于JavaEE,部分如下图:    

2014-08-01 15:22:38 2000 11

原创 再说Java EE

说到JavaEE(以前叫J2EE)是什么,你可能回答:JavaEE是一组规范,这么说是没错,但是自己不觉得这个答案很大、很空么?什么又是规范?规范能组成应用么?能在JVM中跑起来么?要理解这些,先得从什么是规范说起。规范        因为Java开源,任何开发者都能写代码,然后提供给其他人使用,以数据库访问为例,现在有MySQL、Oracle两家数据库厂商,各自用java写自己的数据库访

2014-07-31 21:36:17 1685 9

原创 Java反射原理

classforname

2014-06-29 18:08:31 1675 4

原创 JAVA面向对象与内存分析

从代码加载,及内存分析

2014-06-06 11:47:57 3350 12

原创 敏捷开发与饥饿营销

饥饿营销            先来扯扯饥饿营销的事,当下能接触到的最火的饥饿营销就是小米手机:它定好一个时间,大家拉好你们的小伙伴们:一个两个怕是不够,得多叫些,然后不吃饭的不吃饭、不睡觉的不睡觉,坐在电脑前专门等着“抢购”按钮的enable属性变为true,然后用最高的apm去抢,抢到的觉得自己很幸运,捡了个大便宜;抢不到的觉得运气不好,下次再来,再多叫些小伙伴。 反正我是不喜欢饥饿营

2013-12-30 23:41:19 1936 23

原创 Emotion英语——感知

英语学习断断续续也快两年了,以前也蜻蜓点水地写过几篇总结,但是因为思考的少,只能得到一些表面的收获。从今年三月初到现在,口语阶段已经有三个月,感触较多,所以写这篇博客对这段时间英语学习的一个整体总结。Emotion与语言学习    Emotion意为情绪、情感,是对事物的一种内在感受,也是对事物最直接的直觉、印象。此处所说的Emotion并非是狭隘的喜怒哀乐,而是对一种事物本身产生的情感:

2013-06-21 21:36:18 3261 11

转载 Java的垃圾回收

引言 Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收来负责的,尽管JVM规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的

2015-10-30 10:39:12 2625 4

转载 Java内存泄露的理解与解决

Java内存管理机制在C++ 语言中,如果需要动态分配一块内存,程序员需要负责这块内存的整个生命周期。从申请分配、到使用、再到最后的释放。这样的过程非常灵活,但是却十分繁琐,程序员很容易由于疏忽而忘记释放内存,从而导致内存的泄露。Java语言对内存管理做了自己的优化,这就是垃圾回收机制。Java的几乎所有内存对象都是在堆内存上分配(基本数据类型除外),然后由GC(garbage colle

2015-07-23 16:58:43 2679 2

转载 synchronized 与 Lock 的异同

最近在做一个监控系统,该系统主要包括对数据实时分析和存储两个部分,由于并发量比较高,所以不可避免的使用到了一些并发的知识。为了实现这些要求,后台使用一个队列作为缓存,对于请求只管往缓存里写数据。同时启动一个线程监听该队列,检测到数据,立即请求调度线程,对数据进行处理。 具体的使用方案就是使用同步保证数据的正常,使用线程池提高效率。  同步的实现当然是采用锁了,java中使用锁的两个基本工具是

2015-07-21 15:02:48 4091 2

转载 ConcurrentHashMap原理分析

最近在分析Mybatis源码,其中有很多集合类使用的是ConcurrentHashMap,即可进行并发读写的HashMap,发现好文一篇,分享给大家.一.Java并发基础    当一个对象或变量可以被多个线程共享的时候,就有可能使得程序的逻辑出现问题。 在一个对象中有一个变量i=0,有两个线程A,B都想对i加1,这个时候便有问题显现出来,关键就是对i加1的这个过程不是原子操作。要想

2015-06-29 17:30:28 2650 3

原创 RESTful APIs

介绍说RESTful之前,先说说其它的问题。网站定位?CS软件,我们称之为软件,不涉及到RPC时,对数据和业务都是用面向对象的方式处理,那么网站算不算软件?面向对象?Java语言本身是面向对象的,经过Hibernate、Mybatis等ORM框架,数据操作也是面向对象的,还有什么没有被OO?不觉得http://ip:host/deleteUserByCidAndName?cid=xx&name

2015-05-13 18:12:06 3951 3

转载 MySQL server has gone away 问题的解决方法

mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了。  造成这样的原因一般是sql操作的时间过长,或者是传送的数据太大(例如使用insert ... values的语句过长, 这种情况可以通过修改max_allowed_packed的配置参数来避免,也可以在程序中将数据分

2015-04-17 09:24:03 6274 8

转载 如何更好地学习dubbo源代码

Dubbo的官方首页在这里:http://code.alibabatech.com/wiki/display/dubbo/Home  很荣幸,作为这样一款业界使用率和好评率出众的RPC框架的维护者,今天这个文章主要是想帮助那些热爱开源的同学,更好的来研究dubbo的源代码。一、Dubbo整体架构  1、Dubbo与Spring的整合  Dubbo在使用上可以做到非常简单,不管是

2015-04-16 18:37:16 4178 5

转载 MySQL的语句执行顺序

MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指定某一个子句,那么将会跳过相应的步骤。    下面我们来具体分析一下查询处理的每一个阶段:FORM:

2015-04-03 11:08:03 2547 6

转载 Spring AOP: 织入的顺序

Spring AOP 可以管理多个的切入顺序.

2015-03-27 15:21:45 4886 3

原创 TCP/IP协议浅谈

待续

2015-02-26 18:14:28 2614

原创 HTTP协议浅谈

待续

2015-02-26 18:13:41 2547

转载 MyBatis 入门到精通(一) 了解MyBatis获取SqlSession

初识    MyBatis是一款一流的支持自定义SQL、存储过程和高级映射的持久化框架。MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去设置参数和获取检索结果。MyBatis能够使用简单的XML格式或者注解进行来配置,能够映射基本数据元素、Map接口和POJOs(普通java对象)到数据库中的记录。简介    每个MyBatis应用程序主要都是使用SqlS

2015-01-26 17:16:26 2807 6

转载 前端工程与性能优化

每个参与过开发企业级web应用的前端工程师或许都曾思考过前端性能优化方面的问题。我们有雅虎14条性能优化原则,还有两本很经典的性能优化指导书:《高性能网站建设指南》、《高性能网站建设进阶指南》。经验丰富的工程师对于前端性能优化方法耳濡目染,基本都能一一列举出来。这些性能优化原则大概是在7年前提出的,对于web性能优化至今都有非常重要的指导意义。        然而,对于构建大型we

2015-01-20 11:31:20 2839 4

转载 浏览器内部工作原理

英文原文:How Browsers Work: Behind the Scenes of Modern Web Browsers一、介绍  浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。  将讨论的浏览器  今天,有五种主流浏览器——IE、Firefox、Safari、

2015-01-12 11:01:58 2834 4

转载 Code Review工具Jupiter的使用

Jupiter里,代码评审(code review)分为4个流程Configuration(配置):review发起者设置“Review ID”,指定要评审的代码,参与代码评审的人员,要讨论的问题等等。Individual review(个人评审):每个人独自审查代码,把可能出现问题的代码加入checklistTeam review(团队评审):大家在一起讨论之前检查出的问题代码,并决定如

2015-01-04 18:59:52 5783 8

原创 Quartz Cron

如果想要使用定时任务如Quartz,则必须了解其Cron表达式。与正则表达式规定字符串格式类似,Cron以一种十分简洁的方式,定义了时间间隔的规则:在哪个时刻,或者,隔了多长时间。如果使用过类似谷歌日历等事件管理的软件,你会发现Cron实际上更像谷歌日历中事件触发规则的抽象表达。CronTrigger    CronTriggers往往比SimpleTrigger更有用,而非Simpl

2014-12-22 23:59:23 3021 7

原创 近况及稍后

从本次入职到现在,因为项目时间很紧,博客没有及时更新,

2014-12-22 23:30:53 2857 11

转载 memcached基础

memcached是什么?memcached 是以LiveJournal 旗下Danga Interactive 公司的Brad Fitzpatric 为首开发的一款软件。现在已成为 mixi、 hatena、 Facebook、 Vox、LiveJournal等众多服务中 提高Web应用扩展性的重要因素。许多Web应用都将数据保存到RDBMS中,应用服务器从中读取数据并在

2014-10-08 22:17:49 2829 7

原创 Java集合中对象排序

Java API针对集合类型排序提供了两种支持:java.util.Collections.sort(java.util.List)java.util.Collections.sort(java.util.List, java.util.Comparator)    第一个方法要求所排序的元素类必须实现java.lang.Comparable接口;第二个方法要求实现一个java.u

2014-10-08 21:54:19 3868 7

转载 Hibernate对比MyBatis

最近做了一个Hibernate与MyBatis的对比总结,希望大家指出不对之处。第一章 Hibernate与MyBatisHibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。MyBatis 参考资料官网:http://w

2014-10-08 21:53:13 1372 7

原创 事务的一阶段提交协议和二阶段提交协议

事务日志

2014-09-04 09:48:56 6471 13

转载 设计模式六大原则

目录:设计模式六大原则(1):单一职责原则设计模式六大原则(2):里氏替换原则设计模式六大原则(3):依赖倒置原则设计模式六大原则(4):接口隔离原则设计模式六大原则(5):迪米特法则设计模式六大原则(6):开闭原则设计模式六大原则(1):单一职责原则定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题

2014-08-09 22:01:45 1295 6

原创 JVM概览

JVM概览

2014-07-22 21:26:27 1273 4

原创 Java反射的应用

反射在java中的应用

2014-07-13 09:54:40 1962 6

原创 Git基础

这次开发要使用Git代替SVN,借机学习了一二,跟大家分享一下。Git简介    一句话总结的说,Git是一个开源的分布式版本控制系统,由Linux内核开发人员开发,现已用来管理android等多个大型项目。    设计目标:快速操作简单设计并行开发(上千个)完全分布式能力超强(类似Linux内核管理)和SVN    提到版本管理系统,自然会想到SVN,如果

2014-06-14 10:30:11 1445 11

原创 ==和equals

地址与数值

2014-06-08 22:33:26 1222 9

原创 Android——碎片Fragment

为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,它非常类似于Activity,可以像 Activity一样包含布局。Fragment通常是嵌套在Activity中使用的,现在想象这种场景:有两个 Fragment,Fragment 1包含了一个ListView,每行显示一本书的标题。Fragment 2包含了TextView和 ImageView,来

2014-05-18 22:10:26 1186 16

原创 Android出现appcompat_v7的问题

问题描述:使用eclipse创建一个Android项目时,发现project列表中会多创建出一个appcompat_v7项目,再创建一个Android项目时,又会再多出一个appcompat_v7_2,如果再次创建,会以此类推地创建出appcompat_v7_x格式的“多余项目”出来(此情况在ADT升级为22.6.x版本后出现,22.3.x前的版本不会有)查明原因:ADT在22.3

2014-05-18 21:54:43 1644 14

原创 JBPM工作流

初次接触工作流是在OA中,现在再为简略的总结一下,这篇文章要说的是JBPM宏观结构、简单实例、扩展使用三部分。JBPM    Java Business Process Management,覆盖了业务流程管理、工作流、服务协作等领域,并且是一个开源的、灵活的、易扩展的流程语言框架。    简单的说,JBPM是一个框架,结合hibernate、数据库、流程图、描述语言等,专门处理与

2014-04-27 22:25:42 1484 19

原创 Emotion英语——Point

在最开始的一篇博客《Emotion英语——感知》中提到,语言最主要的作用是交流,那么今天就来分析一下交流。先来说说交流是什么?咬文嚼字的说,像流一样交换,当然这个流是语言,既然是交换说明是你来我往,分析一下日常生活,汉语交流情况下也一下样,最多的情况就是“问--答--问”的模式,这就提到问答。问答    这是因为对what/where/how/who/when的迟钝,我们很容易就学会如

2014-04-11 20:07:12 1642 16

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除