- 博客(83)
- 资源 (15)
- 收藏
- 关注
原创 换工作经历和心得
工作三年之后,准备换工作,和大家分享一下期间的心里变化和经验。可以是毕业以后一直没换工作,对于找工作方面还是约等于零经验。首先找工作前期准备,先学习相关知识点,看完Java编程思想,数据结构,鸟哥私房菜基础篇,当自己感觉差不多了(其实还有很多知识点没看完),花几天准备一份英文简历和中文简历,前期工作算是完活;第二阶段,上招聘网站建立简历,包括智联招聘、前程无忧、猎聘网,我比较喜欢用智联招聘,然
2014-05-29 23:38:14
5794
原创 【面试)把一个字符串里除了大小写字母以外的所有东西都去掉,然后都变成小写,之后按顺序排序
public class Test01 { public static void main(String[] args) { System.out.println(sort(getString())); } static String a="sdaASH%iAGA rG$vAG;o3#yrqi br@l
2014-05-05 22:38:20
7382
原创 (面试)编写一个程序,列出1-19所有相加为20的组合
public class Test7_sum20 {static int[] array = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,14, 15, 16, 17, 18, 19 };private static void count(int index, String str, int sum) {
2014-05-05 22:34:19
2106
原创 排序算法小结
排序算法概述排序算法的目的实现一组无序元素的有序化。排序通常分为主存排序和外部排序,主存排序是数据量不是太大,整个排序过程在内存中完成,外部排序由于数据量太大在主存中没法完成排序,需要在磁盘或磁带上完成的排序。主存排序包括:插入排序(O(N2))、希尔排序(O(N2))、归并排序(O(NlogN))、堆排序(O(NlogN))、快速排序(O(NlogN))、桶式排序(O(N))。算
2014-04-04 00:12:43
1417
原创 优先队列(堆)浅谈
1、概述在分析堆之前,你可以理解一下队列和栈,其实他们都是对任务的一种调度策略,只是各自的准则不同罢了,队列为先进先出,栈为先进后出,而堆是每个任务分配了一个优先权,根据优先权进行任务的执行。调度程序通过堆始终能获取优先权最高的任务进行执行。比较常见应用为操作系统。2、模型堆又称为优先队列,其通常包括至少两种操作:insert(入队操作)和deleteMin(出队操作)。3、实现方
2014-03-30 11:23:04
6547
1
原创 浅谈云计算与智慧城市建设
云计算数据中心的突出特点,是具备大量的基础软硬件资源,实现了基础资源的规模化。可以提高资源的利用率,降低单位资源的成本。考虑基于Iaas架构进行设计,以云计算数据中心为核心,打造独立于多个应用系统的公共云,通过各类不同的云,如市政云、交通云、教育云、安全云、社区云、旅游云为各类上层应用提供支持,其架构能后续扩展支持其它云。1前言:关于云计算:云计算是一种基于网络的支持异构设施和资源流转
2013-01-08 21:44:35
4528
原创 JUNIT使用教程
使用目的 junit是java中书写unit test的framework,目前一些流行的unit test工具大都都是在junit上扩展而来的。目前它的版本是junit3.8.1,可以从www.junit.org上下载。 Eclipse中配置junit 在要使用JUNIT的project名上,点击properties--java build path-lib
2012-07-23 22:41:15
1907
1
原创 spring jdbcTemplate的使用说明
前言:本文指在介绍Spring框架中的JdbcTemplate类的使用方法,涉及基本的Spring反转控制的使用方法和JDBC的基本概念。目标是使读者能够对JdbcTemplate快速地掌握和使用。 准备:1. Spring的基本概念 Spring框架核心的思想就是建立一个Java对象的大工厂,用户只要给工厂一个指令,工厂就能将用户需要的对象根据配置文
2012-04-12 23:01:46
1608
原创 设计模式六大原则:迪米特法则
定义:一个对象应该对其他对象保持最少的了解。问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。解决方案:尽量降低类与类之间的耦合。 自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。低耦合的优点不言而喻,但是怎么
2012-03-05 23:26:30
664
原创 设计模式六大原则:接口隔离原则
定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来说明接口隔离原则:(图1 未遵循接口隔离原则的设计) 这
2012-03-05 23:24:52
872
原创 设计模式六大原则:依赖倒置原则
定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接与类B或
2012-03-05 23:21:46
859
原创 设计模式六大原则:里氏替换原则
肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子
2012-03-05 23:12:48
768
原创 设计模式六大原则:单一职责原则
定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T
2012-03-05 22:57:58
797
原创 设计模式六大原则:开闭原则
定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。 开闭原则是面
2012-03-05 22:38:32
892
原创 对象的自治与智能化
我一直强调对象是自治的,这意味着它应该拥有能表达自身对象特性的数据与行为,对自己的数据与状态负责,对于该数据而言,对象是自给自足的。对象的自治体现了OO最基本的原则,那就是“数据与行为应该封装在一起”。拥有行为能力的对象,就好比拥有了意识,拥有了智能,它可以自行判断,而无需别人通知。不错,这事实上就是“好莱坞原则”的体现,但我更喜欢将其称之为对象的“专家模式”。这种专家模式与现实社会何其相似,“专
2012-03-04 22:19:37
972
原创 RTU和SCADA必看
现在中国还没有完全了解RTU这种产品。 PLC 一般主要用于工厂车间流水线的控制,而RTU 在国外主要用于室外应用,恶劣环境中,比如在一些无人值守的站点,因为PLC 的工作环境温度0~50度,在其他地方不能可靠工作,虽然大家实际应用当中,又拿PLC 来当RTU 来用,但是比较勉强,可靠性不能保证。市场上本来是需要这样的产品的,只不过大家习惯于PLC 的概念,接受新的RTU 这样的概念,大家还需要
2012-01-15 22:29:45
4017
原创 rxtx封装成bundle形式
http://rxtx.qbang.org/wiki/index.php/Wrapping_RXTX_in_an_Eclipse_Plugin
2012-01-15 21:53:25
976
原创 EJB 有状态会话bean无状态会话bean详解
下面主要对Session Bean讨论 现实中,很多朋友对两种session bean存在误解,认为有状态是实例一直存在,保存每次调用后的状态,并对下一次调用起作用,而认为无状态是每次调用实例化一次,不保留用户信息。仔细分析并用实践检验后,你会发现,事实恰好相反:有状态和无状态会话bean的本质区别是它们的生命期。 首先解释一个下面要用到的概念--用户:session be
2012-01-12 23:04:39
1206
原创 详解Spring中bean的作用域
如何使用spring的作用域:这里的scope就是用来配置spring bean的作用域,它标识bean的作用域。在spring2.0之前bean只有2种作用域即:singleton(单例)、non-singleton(也称prototype),Spring2.0以后,增加了session、request、global sessi
2012-01-12 22:59:46
974
原创 注解驱动的缓存
5.7.3 注解驱动的缓存除了前面介绍的基于XML的缓存配置,Spring Modules还支持使用代码级元数据声明缓存。这种支持有两种形式:Java 5注解:如果目标环境是Java 5平台,这就是很理想的解决方案。Jakarta公共属性:如果目标环境是Java 5以前的平台,就应该选择它。对于RoadRantz程序来说,其目标环境是Java 5,所以我们要使用Jav
2012-01-11 22:53:20
995
原创 缓存的代理Bean
5.7.2 缓存的代理Bean我们已经知道HibernateRantDao里的getRantsForDay()方法很适合进行缓存。再回到Spring上下文定义,我们要使用元素把一个代理包裹到HibernateRantDao,从而缓存从getRantsForDay()返回的全部内容: 元素声明哪个方法要被拦截、其返回值要保存到哪个缓存。本例
2012-01-11 22:51:59
1203
原创 配置缓存方案
5.7.1 配置缓存方案虽然Spring Modules会提供一个代理来拦截方法并把结果保存到缓存,它并没有提供一个实际的缓存解决方案,而是要依赖于第三方的缓存方案。可以使用的方案有多个,包括:EHCacheGigaSpacesJBoss CacheJCSOpenSymphony的OSCacheTangosol的Coherence我们为RoadRantz程序选
2012-01-11 22:50:20
3196
原创 spring缓存
5.7 缓存在很多程序里,读取数据的频率比写入要高得多。比如RoadRantz,访问站点来查看帖子的人比张贴帖子的人要多。虽然帖子列表会随着时间不断增长,但其增长速度比不上被查看的速度。更进一步说,RoadRantz所展示的数据对于实时性要求并不高。如果用户在访问站点时看到了稍微过时一点的帖子列表,并不会产生太多负面影响,他们会稍后再返回站点来查看更新的帖子列表,这样做并不会有太
2012-01-11 22:46:15
4617
原创 建立使用JPA的DAO
5.5.3 建立使用JPA的DAO前面我们把一个实体管理器工厂的引用装配到JpaTemplate里,然后把JpaTemplate装配到DAO。但Spring的JpaDaoSupport简化这一过程,可以把实体管理器工厂Bean直接装配到DAO类。像JdbcDaoSupport和HibernateDaoSupport对相应DAO的作用一样,JpaDaoSupport也为使用JPA的
2012-01-11 22:34:33
7004
原创 创建EntityManager
5.5.2 创建一个实体管理器工厂简而言之,基于JPA的程序使用EntityManagerFactory的一个实现来获取EntityManager的实例。JPA规范定义了两种实体管理器:程序管理型:实体管理器是在程序直接向实体管理器工厂请求一个实体管理器时创建的。在这种情况下,程序负责打开或关闭实体管理器,并且在事务中控制管理器。这种类型最适合不运行于Java EE容器的独立程序。容
2012-01-11 22:24:31
9319
原创 使用jpa模板
5.5.1 使用JPA模板与Spring对其他存留框架的支持相一致,Spring-JPA的核心元素是个模板类:JpaTemplate,它包裹了一个JPA EntityManager。下面的XML用于在Spring里配置一个JPA模板: JpaTemplate的entityManagerFactory属性必须装配为JPA的javax.per
2012-01-11 22:16:40
4455
原创 JPA高级分析
1.JPA的实体生命周期:JPA的实体有以下4中生命周期状态:(1).New:瞬时对象,尚未有id,还未和Persistence Context建立关联的对象。(2).Managed:持久化受管对象,有id值,已经和Persistence Context建立了关联的对象。(3).Datached:游离态离线对象,有id值,但没有和Persistence Context建立关联的对象
2012-01-10 22:25:43
13882
原创 网上订火车票流程
先废话一句:真是很久没写技术贴了啊……直接上图吧:图1:注意左下角 系统时间 以及画面中间的 支付倒计时(我应该是在放票后15秒内买到的) 图2:后面嘛,只要能正常登陆和支付就行了 下面说方法,大概的步骤如下:1)提前十五分钟(8点放票,我是7点半登的系统),用Firefox(8.01)打开页面:https://dynamic.12306.cn/otsweb
2012-01-08 19:12:50
1545
原创 JAVA内部类机制
1. Java的内部类机制 所谓内部类,是指在一个类的内部还有另外一个类的定义. 在Java中,可以在类的内部定义内部类, 也可以在方法内部定义一个类. 对于第一种形式,即类的内部定义一个新类,比较简单,举例如下: ?123456789101112131415
2012-01-08 19:08:15
1123
原创 SVN创建及合并分支
之前一直使用"小乌龟"进行分支建立与合并,最近切换到linux下开发,没有"小乌龟"了,只好看下eclipse的svn插件关于分支的建立与合并。 首先说说创建分支,很简单,不过是浅copy一个trunk目录到branches下即可.如下图所示: 右键你的工程==>team==>分支/标记弹出如下信息:此框
2012-01-08 18:49:46
1058
原创 java集合架构
综述 结合框架体系应该最重要的是如何灵活利用三种接口,set,map,list,他们如何遍历,各有什么特征,怎么样去处理,这是关键,在这个基础上再去掌握在什么场合用什么类型的接口。比如说list和set,set是无序的一个空袋子,当我们只需要放入取出,这个接口当然是最实用的,但是如果我们需要按序取出,这个方法就不能用了,而要用到list,map接口就有个特点,它有一个特定的key值,而一
2012-01-01 11:19:31
1004
原创 log4j类图
网站建设中,我们非常的看重日志,那么如何更好的管理网站制作中的日志呢,使其更方便,功能更强大。这里我们使用log4j框架。Log4j.jar三个部分:1:jar2:配置文件3:程序里使用log4j 第一部分:JAR下载jar,运行时和编译时都需要这个jar第二部分:配置文件Log4j支持两种形式的配置文件,xml和proper
2012-01-01 10:52:22
2305
原创 JDK中的结构模式
下面是JDK中有关23个经典设计模式的示例,在stakeoverflow也有相应的讨论:http://stackoverflow.com/questions/1673841/examples-of-gof-design-patterns Structural(结构模式)Adapter:把一个接口或是类变成另外一种。java.util.Arrays#asList() ja
2012-01-01 10:43:14
883
原创 java集合框架
java集合框架: 1. 什么是框架:类库的集合 2.集合框架:用来表示和操作的统一的架构,包含了实现集合的接口与类 3.集合:存放数据的容器集合框架包含了两部分:一部分是接口,一部分是类 4.为什么会出现接口:因为集合框架中的很多类 功能是相似的【所以用接口来规范类】 主要结构图: 误解:以前总是认为Collection是集合的顶级接口,现
2012-01-01 10:42:12
603
原创 OSGi框架-第一章- Equinox 框架中的相关知识点
MANIFEST.MFMANIFEST.MF 可能出现在任何包括主类信息的 Jar 包中,一般位于 META-INF 目录中,所以此文件并不是一个 OSGi 特有的东西,而仅仅是增加了一些属性,这样也正好保持了 OSGi 环境和普通 Java 环境的一致性,便于在老的系统中部署。表 2 列出此文件中的重要属性及其含义:表 2. MANIFEST.MF 文件属性
2011-12-20 22:02:05
1181
原创 OSGi 框架的组件运行机制
在目前的 Java 开发平台中,对于组件开发过程,比如打包、部署和验证等,并没有一个统一的标准。正因如此,许多 Java 项目,例如 JBoss 和 Net Beans,都拥有一套自定义的组件开发规范和框架,但是实际上这些解决方案都是基于为组件分配独立的类加载器 (Class Loader) 的思想。 OSGi 框架为基于 Java 的组件开发提供了一套通用的和标准的解决方案,并已经成为事实上的工
2011-12-20 21:53:20
4183
原创 OSGi服务:SOA的架构
OSGi服务:非常适合SOA的架构本文介绍OSGi服务。OSGi架构非常适合我们实现面向服务的应用(SOA)。OSGi具有隐藏真实的服务实现类的能力,所以它为面向服务的应用提供了良好的类与接口的组合。OSGi服务前面我们提到,OSGi架构非常适合我们实现面向服务的应用(SOA)。它可以让Bundles导出服务,而其它的Bundles可以在不必了解
2011-12-18 21:16:43
1645
原创 基于OSGi的动态化系统搭建
基于OSGi的动态化系统搭建本文向您介绍基于OSGi的动态化系统的搭建,对动态化系统的优点和基于OSGi的搭建做简单的演示。搭建动态化的系统是作为Java开发人员一直就非常追求的目标,一个系统能够动态化就意味着:◆ 添加新功能时不需要重启系统;◆ 修改已存在的功能时不需要重启系统;◆ 删除一些不需要的功能时不需要重启系统;◆ 修改系统
2011-12-18 21:07:40
844
原创 OSGi依赖性管理:Bundle访问域
OSGi依赖性管理:Bundle访问域OSGi依赖性管理OSGi允许您把您的应用程序分成多个模块,并能管理这些模块之间的依赖性。为了达到这个目的,它引入了Bundle访问域的概念。Bundle中类的缺省访问范围只对本Bundle内部可见,但对其它任何Bundle都是不可见的;在Bundle内部,类的可访问性遵循Java语言的一般规范。那么,您如果想要从一个Bundle中
2011-12-16 22:32:20
848
面向对象技术UML教程
2011-12-10
json学习教程
2011-11-11
httpclient-4.0.1
2011-10-31
建筑的永恒之道
2011-10-07
设计模式第二版
2011-10-02
tomcat5.0应用服务器
2010-09-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人