自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (2)
  • 收藏
  • 关注

消息写

[size=medium]处理流程[/size][size=small] 正如JDK规范中指出一个Channel任意时刻只能执行单个线程的写操作。单个Nioworker可以顺序处理多个socketChannel的写操作,单个SocketChannel上的多次写操作会事先放入到写请求队列;结果由Nioworker调度执行。当Channel被调度时正常情况下消息队列会被出列处理之至为空...

2013-12-11 08:47:16 153

消息读

netty使用了相关的算法计算出比较合适缓冲区大小,整个流程图如下[img]http://dl2.iteye.com/upload/attachment/0092/0206/a1bc70bb-e134-3d3f-b144-865b12b1c445.jpg[/img]ReceiveBufferSizePredictor可以根据实际读取的字节大小数设置下次读写叫合适的缓冲区大小。类结构如下...

2013-12-10 12:12:07 232

Nio线程协作

Netty 是一个客户端服务器框架,它基于jdk nio开发。[url=http://netty.io/]Netty home[/url].Netty 样例代码如下[size=medium]客户端[/size][code="java"] // Configure the client. ClientBootstrap bootstrap = new Clien...

2013-12-10 10:01:58 163

web大数据导出

关于csv文件导出的开源框架很多,可以到[url=http://sourceforge.net/search/?type_of_search=soft&words=csv]http://sourceforge.net/search/?type_of_search=soft&words=csv[/url]去了解学习。在典型的基于java的MVC框架中,当要下载数据时需求在页面上添加链接或按钮,触发一...

2013-11-14 15:48:48 477

原创 分页复选实现

在struts2或webwork等web框架中中编写基于ec:table可分页记住复选框1.分离主页面和子页面,子页面用于加载ec 列表2.在主页面上定义全局数组(装载选中的记录key)3.提交选中的提交按钮使用自定义freemarker,在ftl代码中: 1.将子页面当前选中key,在全局数组中不存在,则放入。 2.取出全局数组中的记录,根据它生成对应的hid...

2013-09-01 20:53:51 315

struts2或webwork嵌套集合类型转换

给出例子代码[code="java"] public class TestAction{ private List users; ////// getter setter } .... public class User{ private String username; ////...

2013-08-21 13:15:34 106

支持占位符的文本解析PropertySourcesPropertyResolver

PropertyResolver 是 Environment的顶层接口,主要提供属性检索和解析带占位符的文本。bean.xml配置中的所有占位符例如${}都由它解析。通过例子代码了解它的功能和使用[code="java"]public class PropertySourcesPropertyResolverTests { private Properties testProperti...

2013-07-14 18:27:15 302

支持不同运行环境下的属性处理--Environment 特性

[size=large]介绍[/size] Environment架构是spring 3.1版本引入的,它代表当前应用运行环境比如servlet,porlet。主要处理两部分的内容 profiles和properties,properties将使用org.springframework.core.env.PropertyResolver解析。而Environment继承了此实现。[...

2013-07-14 01:47:03 355

支持开发、测试、生产环境下bean配置切换的profiles特性

[size=large]介绍[/size]Bean definition profiles是3.1版本引入的新特性。[size=large]背景[/size]它提供了一种机制:当客户端请求某一bean时,容器可以根据不同的环境注册并返回不同的bean。“environment”对不同的用户也说意义也不太一样,把应用部署在性能环境中测试时,注册的就是监控信息;或者客户A和客户B部署时...

2013-07-11 12:31:40 289

方法缓存

[size=x-large]介绍[/size] spring3.1之后提供了方法的缓存支持,透明的将缓存添加到应用中。这种缓存架构类似事务架构,提供了不同的缓存方案。[size=large]理解缓存架构[/size] 缓存架构的核心在于缓存Java方法,减少方法执行次数。就是说当目标方法执行时,架构会检查指定参数的方便是否已经被执行过,如果没有则执行,并缓存结果返回;否则直接返...

2013-07-10 18:20:41 233

基于xml schema的扩展标签

xml schema是spring 2.0版本之后引入的,在之后的2.5和3.x加入了新的元素。引入的主要动机在于:虽说spring把中一切皆为对象,但在开发人员的角度上讲,我们要在Spring中具体化或抽象化一些东西,比如具体化单值、集合;或特定于具体应用的抽象比如AOP,事务。那不得不在spring中配置一些基础设施bean。或第三方框架支持我们都使用过spring Security框架,说实...

2013-07-09 13:34:50 128

原创 BeanDefinition数据流

[size=medium]BeanDefinition是Spring配置文件中bean定义的内存表现形式,我们先来看看bean的创建。在下图中不同的元素的解析路线用不同的颜色标注[color=red]主线部分[/color] [list=1][*] 实例化xmlApplicationContext[*] 实例化XmlBeanDefinitionReader[*] Resourc...

2013-07-08 19:41:16 92

原创 bean的创建周期回调

[size=medium]初始化回调 实现org.springframework.beans.factory.InitializingBean接口,afterPropertiesSet方法将在bean的所有属性装配好之后调用[/size] [code="xml"][/code][code="java"]public class AnotherExampleBean ...

2013-06-29 16:24:34 105

原创 Scope实现原理

[size=medium]内置Scope分类Singleton 每个IOC容器对一个bean定义创建唯一实例Prototype 对一个bean定义,每次请求容器都会创建新的实例Request 对一个bean定义,一次web请求会创建一个实例Session 对一个bean定义,一次web会话创建一个实例Global Session 对一个bean定义,一次porlet会话创...

2013-06-27 18:02:40 1268

原创 MethodInjection 动态方法替换原理

[size=medium]singleton实例依赖于prototype实例,ProtoType含义是无效的,必须钩入向Spring容器请求,也就是调用getBean方法。换句话说,我们必须改变依赖关系的注入。[/size][img]http://dl2.iteye.com/upload/attachment/0086/0504/c7ba82d0-3e2d-3db4-8542-2f2501...

2013-06-21 14:45:58 319

LocalSessionFactoryBean

[size=medium]Hibernate SessionFactory的创建在LocalSessionFactoryBean afterpropertySet执行时进行运行时配置configTime***Holder设置的资源将由对应实现Hibernate接口的工厂方法在创建工厂时使用,创建完成之后configTime***Holder置空。 configTimeDataSour...

2013-06-07 12:18:41 162

类层次结构中的引用关系必须在同一ClassLoader下

编写接口[code="java"]/* * Copyright (c) 2008 Skyon Technology Ltd. * All rights reserved. * * project: ims * create: 2013-6-7 * cvs: $Id: $ */package com.skyon.cl.test;/** * TODO (...

2013-06-07 11:03:55 157

AbstractBeanFactory获取bean周期

[code="java"]AbstractBeanFactory是IOC容器实现的骨架,当从Spring容器获取Bean时,调用的正是getBean方法。实现步骤如下 检查单例缓存 在父工厂中查找 初始化当前bean依赖的beans(depends-on) 根据scope使用不同的创建方式bean 检查获取的bean是FactoryBean类型还是普通bean...

2013-05-11 22:58:42 101

原创 java.util.zip.ZipException:invalid entry

[code="java"]Tomcat中时启动会校验项目的/WEB-INF/lib下的所有jar包,jar文件是一种带有Manifest清单文件的压缩包,Manifest文件是jar规范提供用来提供依赖扩展的,比如该jar包是一个包含main方法的可执行的Jar包,那么manifest清单文件中就包含Main-class:xxxx;同时如果改jar需要依赖其他的jar包,则清单文件中就多了一行Cl...

2013-05-10 11:03:06 581

JAVA中查找类或资源文件

[size=medium] 根据语义的不同,查找类或资源的方式通常不太一样;Servlet语义下查找的类或资源必须在WEB根目录下;在URLClassloader语义下查找的类或资源在指定的URL中;[b] [color=red]而java.io.File查找的类或资源特定于本地文件系统,File实例文件和目录路径名的抽象表示形式,并不能说明文件系统就存在对应的目录或文件,可以用ex...

2013-05-09 14:07:13 415

OpenSessionInViewFilter

[code="java"]在一次请求内绑定一个Session到线程,防止Web资源加载时的懒加载问题。HibernateTransactionManager或JTATransactionManager将会使用此Session。非事务运行时(并非事务挂起)也可使用。该类的flushMode设置为Manual,由于该类一般为事务层提供Session,当Session同步到事务,对于非只读事务(de...

2013-04-08 00:52:23 99

HibernateInterceptor

[code="java"]继承HibernateAccessor功能,在代理到Hibernate操作之前尚未发现Session则创建绑定,否则使用线程已绑定的Session;操作中出现错误可开启exceptionConversionEnabled以转换异常;操作结束后,Session由自己创建则关闭或延迟关闭,否则回复FlushMode/* * Copyright 2002-2012 ...

2013-04-08 00:10:49 63

HibernateAccessor

[code="java"]HibernateAccessor是HibernateInterceptor和HibernateTemplate父类,它主要提供Hibernate刷新机制的转换和Hibernate异常体系到Spring异常体系的转换刷新机制 Spring定义刷新选项 FLUSH_NEVER FLUSH_AUTO FLUSH_EAGER ...

2013-04-07 23:59:44 174

SessionFactoryUtils

[code="java"]SessionFactoryUtils支持JTATransactionManager和HibernateTransactionManager;被Spring内部HibernateTemplate或HibernateInterceptor使用,同时可由应用代码调用。它提供了事务或非事务性Session获取,释放,Hibernate异常转换,事务超时等功能。下面介绍主要方法...

2013-04-07 15:41:59 363

原创 SessionHolder

[code="java"]DEFAULT_KEY 存储Threadlocal Session(可能由OpenSessionInViewFilter/Interceptor获取,也可能由Spring激活时SessionFactoryUtils直接或间接调用获取)sessionMap 除了存放DEFAULT_KEY指定线程绑定的Session,还有hibernate配置中指定的 Transact...

2013-04-07 13:30:07 93

原创 DataSourceUtils 管理参与事务性的JDBC连接

[code="java"]提供一些静态方法用于管理可能参与事务的JDBC连接。JDBCTemplate或JDBCDaoSupport自动使用它,而且在DataSourceTransactionManager或JTATransactionManager,hibernateTransactionManager中支持。DataSourceTransactionManager中 Data...

2013-04-01 17:27:01 724

ConnectionHolder

[code="java"]继承了ResourceHolderSupport功能,包装了一个JDBC连接,提供了创建和释放保存点支持,它有以下属性connectionHandle JDO规范连接处理器,用户获取和释放JDBC连接,标准实现中释放方法不作任何处理。当事务挂起时,可能将connectionHandle置空currentConnection Connection缓存,在第一次请求和...

2013-03-29 11:30:37 238

JDBCContext

[code="java"]成员变量owner:sessionconnectionManager:管理连接isTransactionCallbackRegistered:是否注册回调hibernateTransaction:JTATransaction或CMTTransaction事例重要方法borrowConnection由session.connection调...

2013-03-29 10:40:02 210

原创 AbstractPlatformTransactionManager

[code="java"]AbstractPlatformTransactionManager是Spring提供事务支持的核心处理类,它的功能可大致划分 处理传播行为 处理挂起与恢复 检查只读标志,处理回滚 处理回调 了解事务传播行为 PROPAGATION_REQUIRED 支持已存在的事务或开启新事务 PROPAGATION_SUPPORTS 支持...

2013-03-28 17:06:23 311

ResourceHolderSupport

[code="java"]资源Holder父类。它有以下几个属性 synchronizedWithTransaction 当Holder被注册到同步之后,为true,否则为false;同步处理完成之后,synchronizedWithTransaction被重新设置为false rollbackOnly 设置事务只读模式,JDBC并没有提供像JTA UserTransaction 的s...

2013-03-28 13:45:50 589

TransactionSynchronization

[code="java"]同步处理是Spring事务支持主要内容之一,也是其它框架的内容之一.Spring事务同步处理类是org.springframework.transaction.support.TransationSynchronization. 成员变量 status_committed 事务提交成功 status_rolled_back 事务回滚成功 s...

2013-03-28 12:06:01 439

原创 JDBCTransaction JTATransaction CMTTransaction

[code="java"]事务模型 java事务模型可分为三类:本地事务模型, 编程事务模型, 声明事务模型 本地事务:由资源管理器处理,比如JDBC Connection,通过设置自动提交模式是否禁用来使用事务,也就是说事务处理与Connection直接相关 编程事务模型:JTA事务由javax.transaction包API支持,事务处理与资源使用分离开...

2013-03-28 00:32:49 161

TransactionFactoryFactory TransactionFactory

[code="java"]三种事务的创建由对应的JDBCTransactionFactory,JTATransactionFactroy,CMTTransactionFactory完成这三者区别在 connectionReleaseMode JTATransactionFactroy和CMTTransactionFactory连接释放模式执行每条语句后释放连接,JDBCTra...

2013-03-27 20:31:55 350

TransactionManagerLookupFactory

[code="java"]TransactionManagerLookupFactory.getTransactionManagerLookup根据hibernate.transaction.manager_lookup_class确定TransactionMangerLookup,简要介绍TransactionMangerLookup public TransactionManage...

2013-03-27 19:14:30 275

ConnectionProviderFactory 使用那种“连接池”

[code="java"]hibernate提供org.hibernate.connection.ConnectionProvider获取jdbc连接,ConnectionProvider实现类包括 DriverManagerConnectionProvider DateSourceConnectionProvider UserSuppliedConnectionProvide...

2013-03-27 18:46:59 279

原创 ConnectionManager 管理JDBC连接

[code="java"]log:打印日志(废话)callback: 回调类:在 打开连接,关闭连接,事务状态时机定义动作factory:供应ConnectionProvider以提供连接,Batch以管理StatementreleaseMode:释放模式connection:连接缓存borrowedConnection:连用连接缓存wasConnectionSuppl...

2013-03-27 18:39:25 1182

ConnectionReleaseMode 连接何时释放

[code="java"]AFTER_STATEMENT 每条SQL执行完马上释放 AFTER_TRANSACTION 事务结束之后释放 ON_CLOSE session关闭或失去连接之后释放 // $Id: ConnectionReleaseMode.java 8409 2005-10-14 20:28:18Z steveebersole $package org.hiber...

2013-03-27 15:53:43 546

JConsole,JVisualVM

JConsole,JVisualVM都是JAVA自带的监测工具,在%JAVA_HOME%\bin下JConsole使用官方文档http://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html直接在cmd下 jconsole就可启动;jconsole等都是监测进程级的JAVA应用。当启动jconsol...

2013-03-13 17:58:26 70

原创 JVM调优实例

[url=http://blog.csdn.net/kthq/article/details/5180962]JVM调优实例[/url]

2013-03-07 15:44:45 79

原创 环境变量及批处理文件

service.bat CATALINA_HOME 用来定位Tomcat目录 CATALINA_BASE service.bat脚本认为这包含可执行的bin\tomcat6.exe,如果CATALINA_BASE没配置,则使用 定位\logsCATALINA_HOME JAVA_HOME service.bat脚本用它来定位虚拟机:先查找\...

2013-03-04 18:27:39 82

JAD.rar下载

JAD.rar下载

2013-04-09

net.sf.jadclipse_3.3

net.sf.jadclipse_3.3

2013-04-09

空空如也

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

TA关注的人

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