
开源技术(如Struts/spring/Hibernate等)
文章平均质量分 77
超级谷歌
职业经历: 软件工程师->项目主管->架构师->技术经理。
目前专注于电子商务领域,大数据,云计算。并时常关注新技术,新领域的发展动态。
展开
-
spring5.X源码构建
第一种方式,按照官方构建,地址见:https://github.com/spring-projects/spring-framework/wiki/Build-from-Source这种方式需要安装GIt和gradle(下载地址:https://gradle.org/releases/)第二种:eclipse构建源码地址:https://github.com/spring-projec原创 2017-11-23 15:22:28 · 6739 阅读 · 1 评论 -
AOP
前些年再用aop,一直没有记录。这里记录一下概念吧先。OOD/OOP面向名词领域,AOP面向动词领域。AOP为Aspect Oriented Programming的缩写,意为:面向切面编程(也叫面向方面),可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AO原创 2011-12-31 14:52:37 · 1538 阅读 · 0 评论 -
事务隔离级别
在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。数据库是要被广大客户所共享访问的,那么在数据库操作过程中很 事务隔离级别可能出现以下几种不确定情况。更新丢失(Lost update) 两个事务都同时更新一行数据,但是第二个事务却中途失败退出,导致对数据的两个修改都失效了。这是因为系统没有执行任何的锁操作,因此并发事务并没有被隔离开来。脏读原创 2012-02-05 16:31:21 · 1302 阅读 · 0 评论 -
spring+hibernate+JTA 分布式事务的例子
对于横跨多个Hibernate SessionFacotry的分布式事务,只需简单地将 JtaTransactionManager 同多个 LocalSessionFactoryBean 的定义结合起来作为事务策略。你的每一个DAO通过bean属性得到各自的 SessionFactory 引用。如果所有的底层JDBC数据源都是支持事务的容器,那么只要业务对象使用了 JtaTransactionMa原创 2012-01-20 14:40:07 · 8358 阅读 · 1 评论 -
反射实现 AOP 动态代理模式实例说明(Spring AOP 的实现 原理)
说明以下,spring aop的实现原理不是用java的动态代理。是用代理模式和CGLib (Code GenerationLibrary), 不过现在不用CGLib(Code Generation Library),直接用ASM框架来操作字节码了。 好长时间没有用过Spring了. 突然拿起书.我都发现自己对AOP都不熟悉了.其实AOP的意思就是面向切面编程.OO注重的是我们解决原创 2012-01-18 16:50:45 · 5568 阅读 · 1 评论 -
动态改变Quartz的调度时间
http://blog.youkuaiyun.com/cuker919/article/details/6425032 第一种是直接用reschedulejob方法.第二种是我先delete掉job重新加载.最近几天项目里的定时器常常发生异常,比如:1、修改linux系统时间时,定时任务全挂掉不动了。2、在页面里面动态修改任务时间,常常不执行了。下面是一些网友转载 2011-11-02 10:17:21 · 2280 阅读 · 2 评论 -
Quartz任务调度(1)
了解Quartz体系结构Quartz对任务调度的领域问题进行了高度的抽象,提出了调度器、任务和触发器这3个核心的概念,并在org.quartz通过接口和类对重要的这些核心概念进行描述:●Job:是一个接口,只有一个方法void execute(JobExecutionContext context),开发者实现该接口定义运行任务,JobExecutionContext类提供了调度上下文的各原创 2011-11-02 10:12:47 · 2220 阅读 · 0 评论 -
Hibernate/JPA中的继承映射
1.Single Table Strategy ,单表策略,一张表包含基类与子类的所有数据,很多情况下都是采用这样的冗余设计,通过一个discriminator来区分2.Table Per Class Strategy ,每个子类对应一张表,每张表都拥有3。。原创 2011-07-11 10:41:21 · 2344 阅读 · 0 评论 -
appfuse
app代表application,fuse意思是“融合”.它对如何集成流行的Spring、Hibernate、iBatis、struts、Xdcolet、junit 等基础框架给出了示范转载 2011-05-19 12:42:00 · 1193 阅读 · 0 评论 -
ActionContextCleanUp StrutsPrepareAndExecuteFilter StrutsPrepareFilter,StrutsExecuteFilter FilterDispatcher
ActionContextCleanUp的作用是延长action中属性的生命周期原创 2011-02-16 21:10:00 · 2859 阅读 · 0 评论 -
Struts1和Struts2比较异同
Struts 1要求Action类要扩展自一个抽象基类。Struts 1的一个共有的问题是面向抽象类编程而不是面向接口编程。 Struts 2的Action类实现了一个Action接口,连同其他接口一起实现可选择和自定义的服务。Struts 2提供一个名叫ActionSupport的基类实现一般使用的接口。虽然,Action接口不是必须的。任何使用execute方法的POJO对象可以被当作Struts 2的Action对象使用。转载 2011-02-16 20:50:00 · 1451 阅读 · 0 评论 -
servlet线程安全 servlet多线程 Struts 1 和 Struts 2 的线程安全
首先我们必须要先了解servlet的生命周期:服务器只创建每个servlet的单一实例,首次创建servlet时,它的init方法会被调用,因此,init是放置一次性设置代码的地方,之后,针对每个用户的请求都会创建一个线程,该线程调用前面创建的实例方法。多个并发请求一般会导致多个线程同时调用service(线程安全),service方法会依据接受到HTTP请求的类型,调用doXXX方法。最后如果服务器卸载某个servlet就会调用servlet的destroy方法。原创 2011-02-16 20:47:00 · 3743 阅读 · 2 评论 -
struts2 整合spring 及 由spring治理struts的Action实例
1.当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入。但是bean创建完成之后,还是由struts容器来治理其生命周期2. 在某些时候,你可能希望不仅仅让SPRING创建和装配Action对象,还希望让SPRING完全治理这些对象,如希望使用AOP或者希望使用acegi时。这时候,只需要在spring的配置文件中定义这些action即可。原创 2011-02-17 10:27:00 · 5317 阅读 · 3 评论 -
OGNL —— 数据运转的催化剂 (及在Struts2中使用OGNL)
好久没写文章了,转一篇吧。不错的。Spring是用IoC来实现AOP,而Xwork是用AOP来实现IoC,整个Xwork的架构就是完全基于AOP之上的转载 2010-11-10 16:39:00 · 5374 阅读 · 1 评论 -
Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
Spring事务配置的五种方式前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制转载 2009-12-25 12:25:00 · 111715 阅读 · 0 评论 -
再说hibernate延迟加载问题
再说hibernate延迟加载问题 could not initialize proxy - no Session异常是session关闭引起的异常 解决hibernate延迟加载这里我们简单的说有几种: 1.把lazy设成false,最2的办法,但是最简单,简单就是美嘛,也依然会有很多再使用这个方式再解决类似问题。2.在web.xml中加入 hibernateFilter原创 2009-12-18 14:06:00 · 2094 阅读 · 0 评论 -
hibernate批量更新和批量删除
hibernate批量更新和批量删除的方法有很多。下面举例:方法一:hql方法。/** * 更新内容数据,本次更新最新标志.条件是超过7天的数据 * @return 更新的条数 */ public int updateContent() { Object[] params = {0, 1, new Date()}; StringBuilder updateBuf原创 2009-12-16 12:07:00 · 1869 阅读 · 0 评论 -
依赖注入的方式
DI(Dependency Injectio,依赖注入),spring的IOC 反转控制模式就是用DI来实现的。方式:1.set属性注入2.字段注入3.构造器注入4.接口注入有时间在具体讲没种注入的概念及方式。原创 2012-03-07 12:45:39 · 1461 阅读 · 0 评论 -
解决json转换hibernate 结果集对象
在使用ext+ssh框架过程中,当使用jsonlib 转换 hibernate的延迟加载对象时,会出现报错。为解决此处错误,我们可以参考网友网上给的解决思路,大概就是: public static JsonConfig getCommonConfig() { /*---- 做属性配置 start------*/ JsonConfig conf = new JsonConfig(); c原创 2012-04-05 09:58:05 · 9258 阅读 · 0 评论 -
Spring AOP 实现原理
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到转载 2015-12-09 09:51:43 · 3981 阅读 · 0 评论 -
(精)Spring IOC核心源码学习III:bean标签和自定义标签实现原理
本文将解析spring bean定义标签和自定义标签的解析实现原理。这里说的标签仅限于以xml作为bean定义描述符的spring容器,继承AbstractXmlApplicationContext的一些子 容器,如XmlApplicationContext、ClassPathXmlApplicationContext、 FileSystemXmlApplicationContext等。同时也原创 2012-05-17 22:38:39 · 8277 阅读 · 0 评论 -
(精)Spring MVC 3 深入总结
一、前言:大家好,Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了。Spring3 MVC结构简单,应了那句话简单就是美,而且他强大不失灵活,性能也很优秀。官方的下载网址是:http://www.springsource.org/download (本文使用是的Spring 3.0.5版本)Struts2转载 2012-07-26 22:17:06 · 2658 阅读 · 0 评论 -
(精)Spring_AOP原理及拦截器
原理AOP(Aspect Oriented Programming),也就是面向方面编程的技术。AOP基于IoC基础,是对OOP的有益补充。 AOP将应用系统分为两部分,核心业务逻辑(Core businessconcerns)及横向的通用逻辑,也就是所谓的方面Crosscutting enterprise concerns,例如,所有大中型应用都要涉及到的持久化管理(Persistent)、事原创 2014-11-18 14:37:03 · 3364 阅读 · 0 评论 -
基于Spring可扩展Schema提供自定义配置支持
schemaspring扩展stringbean工作在很多情况下,我们需要为系统提供可配置化支持,简单的做法可以直接基于Spring的标准Bean来配置,但配置较为复杂或者需要更多丰富控制的时候,会显得非常笨拙。一般的做法会用原生态的方式去解析定义好的xml文件,然后转化为配置对象,这种方式当然可以解决所有问题,但实现起来比较繁琐,特别是是在配置非常复杂的时候,解析工作是一个不得不考虑的负担。Sp转载 2014-07-31 16:23:59 · 1255 阅读 · 0 评论 -
Netty Channel 接口名词理解
1.Channel channel 是负责数据读,写的对象,有点类似于老的io里面的stream。它和stream的区别,channel是双向的,既可以write 也可以read,而stream要分outstream和inputstream。而且在NIO中用户不应该直接从channel中读写数据,而是应该通过buffer,通过buffer再将数据读写到channel中。 一个channel 可以提原创 2014-08-07 11:17:57 · 3892 阅读 · 0 评论 -
(荐)跟我学SpringMVC目录汇总贴、PDF下载、源码下载
电子书下载链接 请登录后下载 在线版目录第一章 Web MVC简介第二章 Spring MVC入门第三章 DispatcherServlet详解第四章 Controller接口控制器详解(1)第四章 Controller接口控制器详解(2)第四章 Controller接口控制器详解(3)第四章 Controller接口控制器详解(4)第四章 Controller接口控制器详解(5)第四章 Cont转载 2014-06-13 14:21:14 · 8267 阅读 · 0 评论 -
Spring Batch
Spring Batch是一个轻量级的,完全面向Spring的批处理框架,可以应用于企业级大量的数据处理系统。Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供大量的,可重复的数据处理功能,包括日志记录/跟踪,事务管理,作业处理统计工作重新启动、跳过,和资源管理等重要功能。 业务方案:原创 2013-08-23 12:40:07 · 4933 阅读 · 0 评论 -
对Spring IoC容器实现的结构分析
本文的目标: 从实现的角度来认识SpringIoC容器。 观察的角度: 从外部接口,内部实现,组成部分,执行过程四个方面来认识SpringIoC容器。 本文的风格: 首先列出SpringIoC的外部接口及内部实现所涉及到的组件列表; 其次介绍组件之间的相互关系以对整个执行过程有所把握; 然后针对每一个组件的简单介绍,包括组件的类结构图,核心功能描述,重要接口的重原创 2013-04-26 23:09:32 · 1815 阅读 · 0 评论 -
Eclipse插件开发
主要讲解《Eclipse 3.4 対応 Eclipse 3.4 プラグイン開発 徹底攻略》这本书.本书作者:竹添直树、志田隆弘、奥畑裕树、里见知宏、野池智也。 本书一共分三个部分对插件开发进行了介绍,分别是:基础知识篇、实践篇、高级篇。 基础篇分别对Eclipse和插件的概要、插件开发的基本概念、OSGi和SWT进行了介绍。 实践篇对视图、向导、插件设置的保原创 2013-02-18 14:00:57 · 1790 阅读 · 0 评论 -
spring发布和接收定制的事件(spring事件传播)
有事件,即有事件监听器. 有人问你spring监听器有哪些你看了下文即也知道了。 事件传播ApplicationContext基于Observer模式(java.util包中有对应实现),提供了针对Bean的事件传播功能。通过Application. publishEvent方法,我们可以将事件通知系统内所有的ApplicationListener。事件传播的一个典型应原创 2012-12-26 20:05:50 · 48600 阅读 · 3 评论 -
Spring MVC 入门教程
基本上是一个精简版的SpringMVC参考,很简单,因为大部分的web框架的概念都是通用的。 而本文更关心的是SpringMVC中的概念性问题,至于细节,不在本学习笔记之内。 该文档基于Spring2.5.2 概述 Spring的web框架围绕DispatcherServlet设计。 DispatcherServlet的作用是将请求分发到不同的处理器。 Spring的web翻译 2012-07-26 21:15:07 · 3703 阅读 · 1 评论 -
spring自定义标签之规范定义XSD
引言: spring的配置文件中,一切的标签都是spring定义好的。等等,有了定义的规范,才能让用户填写的正常可用。想写自定义标签,但首先需要了解XML Schema Definition(XSD) 的。 标签定义: 对于该类标签的定义,spring中有着相应的XSD定义文档 http://www.springframe转载 2012-05-17 23:38:44 · 9114 阅读 · 2 评论 -
spring自定义bean的作用域
在Spring 2.0中,Spring的bean作用域机制是可以扩展的。这意味着,你不仅可以使用Spring提供的预定义bean作用域; 还可以定义自己的作用域,甚至重新定义现有的作用域(不提倡这么做,而且你不能覆盖内置的singleton和prototype作用域)。作用域由接口org.springframework.beans.factory.config.Scope定义。要将你自己的转载 2012-05-17 23:34:30 · 4559 阅读 · 0 评论 -
spring 自定义注解
有时间再写原创 2012-05-17 23:30:13 · 3948 阅读 · 3 评论 -
分布式缓存框架推荐
开源框架: memcachedRedismembase按使用用户量推荐使用顺序: 1.memcached ; 2.Redis, 3.membase按功能推荐使用顺序:按常用推荐: 1.Redis; 2.membase, 3.memcached 本人推荐Redis几个比较的话,自己去查更深刻。原创 2012-05-04 10:37:04 · 4206 阅读 · 0 评论 -
Spring Quartz动态配置时间
什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定)。 这样总不能修改配置文件每定制个定时任务就增加一个trigger吧,即便允许客户修改配置文件,但总需要重新启动web服务啊,研究了下Quartz在Spring中的动态定时,发现 0/10 * *原创 2009-12-15 11:53:00 · 17771 阅读 · 24 评论 -
高效使用JavaEE ORM框架
虽然Java领域有无数的ORM框架,如Hibernate,iBatis,TopLink,JDO,JPA……但是这些ORM框架基本上大同小异。很多初学者对JDBC的复杂性望而却步,就简单认为使用ORM就会省时省力,结果恰恰相反,任何好的框架都是给专家准备的,任何急功近利试图偷懒的方法往往适得其反。要正确使用ORM还真不是一件简单的事情。本文仅简单整理一下ORM的原理,基本用法,以及如何避免原创 2009-10-13 10:18:00 · 1196 阅读 · 0 评论 -
spring
反向控制和面向切面编程在Spring的应用陈盛雄 罗艳霞 陈超 崔灵珍|计算机与信息技术|2006-12-29 08:00本文探讨了一种轻量级的J2EE应用框架Spring ,它用更加轻量、更加灵活的基础设施取代了EJB。 反思Spring:由Ruby on Rails想到的|blog|2006-12-27原创 2008-11-23 11:09:00 · 1894 阅读 · 0 评论 -
DisplayTag分页标签应用指南(转)
先讲DisplayTag一般应用, 最后在讲在数据大的时候,怎么结合hibernater应用.DisplayTag是一个非常好用的表格显示标签,适合MVC模式,其主页在http://displaytag.sourceforge.net 一、最简单的情况,未使用标签 标签遍历List里的每一个对象,并将对象里的所有属性显示出来。一般用于开发的时候检查对转载 2009-01-17 19:08:00 · 4970 阅读 · 0 评论 -
关于Freemarker生成静态html文件及中文乱码的问题
先看生成静态html文件: FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。模板用servlet提供的数据动态地生成 HTML。模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度。 FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarke原创 2009-01-17 11:38:00 · 23568 阅读 · 8 评论