- 浏览: 44861 次
- 性别:
- 来自: 南京
最新评论
-
canghaizhiyue:
大牛呀,能不能加下QQ交流下 25464978,小弟正在学习这 ...
Mule 基于源码实现控制台效果 -
逐客叫我:
太牛了,我只能膜拜了。
Mule 基于源码实现控制台效果 -
helei050:
兄弟写的很好,希望能加q交流一下 1056466499
Mule 基于源码实现控制台效果
文章列表
Mule 基于源码实现控制台效果
- 博客分类:
- Mule学习笔记
概述
最近研究了ESB,重点研究了Mule的实现。现在分享一下学习的结果,也备自己查看。
Mule的简介就不多说了,有社区版和企业版两个版本,我们自己研究就是用社区版了,重点关注的是Mule的控制台实现。
前期准备
本文介绍知识需要基于对Mule和ESB有基本的认知,关于Mule的基本实现,以及源码的解读不在本文范畴,如果有需要,另外开一篇博客介绍。
目标
在准备将Mule移植到我们的项目上时,发现了一个问题,就是控制台的实现,具体的是对每个服务的起停操作,流量统计/清空,log记录等功能实现。
其中log功能可以使用Mule自带的Log组件实现,给特殊的功能可以使用filter来实现,本文不再 ...
使用Oracle的Clob时候有些麻烦。问题集中在怎么处理Clob的类型转换。
1 尝试使用自定义的类型转换Editor。事实证明比较复杂。
2 老版本推荐使用org.springframework.orm.hibernate.support.ClobStringType。事实证明不需要这么复杂。
3 经过测试,如果用Oracle10g及以上的JDBC驱动只要这样做:
1.在Oracle里设置某字段为clob类型。
2.在Hibernate的配置文件里使用网上下载的Oracle 10g最新的jdbc驱动。
3.实体类里把clob字段对应的属性类型设置为String。
4.hibernate的映 ...
最近看了下Spring MVC的架构,的确是继承了Spring的一贯风格和优秀的编程思想,具体不说了,今天分享下自己学习的一点心得。
直接看我们的controller 类:
@Controller
public class LoginAction{
@RequestMapping(value = "login.do", method = RequestMethod.POST)
protected ModelAndView onSubmit(LoginInfo cmd)
throws Exception {
if (login(cmd) == 0) ...
MongoDB被360优化了,求解决办法
- 博客分类:
- MongoDB
今天用360这个流氓软件优化了电脑,我的MongoDB启动进程被杀了,导致我直接启动不了,什么情况啊!
后来实在没有办法,删了数据库,重新安装了Mongodb。
注意一点是win7下面的cmd一定要用管理员身份运行。
不知道大家有什么好办法,可以交流下!
大家都知道String+String会开销额外的系统资源,粗略的原因是String是不可变类,每一步操作都会返回新的String变量,占用空间及时间。
其实我的理解不是这样的,我们来看看String+的底层实现。
测试案例
public static void main(String[] args) {
String a = "a";
StringBuilder b = new StringBuilder("b");
StringBuffer c = new StringBuffer("c");
long sta ...
引入:静态工厂方法返回的对象所属的类,在编写包含该静态工厂方法的类时可以并不存在,这种灵活的静态工厂方法构成了服务提供者框架的基础。——引自effectivejava
服务提供者框架中有三个重要组件:服务接口(Service Interf ...
Struts2中通过插件的方式集成了Dojo框架,国内Dojo的资料相对较少,学习起来不是很方便。
本文抛砖引玉,贴出本人的学习心得,希望大家相互学习,多讨论交流。
不在本文讨论范围的:1 DOjo的优劣. 2 struts 集成DOJO的具体操作方法。
一 插件原理
Struts通过struts2-dojo-plugin-2.3.1.2.jar来实现集成。
这个jar中首先定义了一个tag:struts-dojo-tags.tld,这个tag将加载到你工程的web content目录下面,然后前台就可以通过标准的tag访问方式使用了。
一般我们使用时会使用下面代码装载DOJO
<sx:h ...
设计模式中的几个原则和类关系
- 博客分类:
- 设计模式
设计模式中的几个原则/法则罗列一下。
开闭原则
开闭原则是模式的最基本原则,一句话概括:对扩展开放,对修改关闭。
在需求变更时,系统应该是通过扩展现有系统而不是修改原有逻辑,这是衡量一个架构优劣的最基本的条件。本原则是要求系统灵活性的体现。
里氏代换原则
里氏代换原则是其他一些原则的基础,一句话概括:子能代父,父不能代子。
这貌似是java语法规范,具体不讲。
依赖倒装原则
依赖倒装原则一句话概括:要依赖于抽象,而不依赖于具体。换言之:要针对接口编程,而不针对实现编程。
具体的实现就是尽量使用接口或者抽象类进行变量的声明,参量声明和返回值类型声明等。
List list = new Arra ...
设计模式 创建模式之工厂家族
- 博客分类:
- 设计模式
学习设计模式是程序员到设计人员的必经之路,灵活运用设计模式可以使我们的工作事半功倍,甚至一劳永逸。
今天学习了设计模式里面的工厂家族:简单工厂模式,工厂方法模式和抽象工厂模式。
参考资料:Java design.pdf 是一 ...
Hibernate的关联关系看上去非常的头疼,不静下心来好好理理还是搞不清楚他到底什么什么玩意的。
背景:用户和权限(Function)之间的关系是多对多的关系,即一个一个用户可以有多个Function,而一个function也可以被多个用户所有。
问题:如何是用Hibernate来方便的维护二者之间的关系?
表建立:
FUNCTION表用来存储所有的function:
CREATE TABLE "MYTRX"."FUNCTION"
(
ID NUMBER NOT NULL,
FUNC_NAME varchar2(20) NOT NULL,
...
display tag的相关介绍网上不算太多,所以学习还是要自己摸索,比较好的介绍:
http://hi.baidu.com/lvjunnan/item/aa5abcf4289e91bc31c199db
http://hi.baidu.com/hicc2012/item/39aec890118bfc18934f415f
但是这些介绍的都比较肤浅,甚至有的例子我都跑不通。
今天记录一个我自己用的例子:display 中使用checkbox 作为一列的相关操作
背景:我们很多地方需要设一对多的关系,这样第一个页面选择主key,第二个页面展示所有的可选项,并且把已经选上的条目打上勾,用户可以重新选择后 ...
最近学习SHH,发现真的很蛋疼,封装的太多,debug起来就是觉得不爽,搞了所有的source再学习,感觉才好点。
今天记录点Ajax select标签。
先看看实现:
<s:url id="temp" value="**.action"></s:url>
<sx:div href="%{temp}" theme="simple"/>
这个struts是2.1版本以上的,ajax div标签已经改变了。
看看后台响应action的地方:
public String list( ...
情景:使用Oracle 的clob字段存储大内容。如果使用其他的类型,数据超过时会报错:java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column
也许很多人会疑问为什么会报这个错,这个是因为Oracle在存储时,如果发现 ...
这么简单的东西都不知道,真是受不了。
答案:<s:textfield name = "userCretBy" value ="%{#session.USER_INFO.userName}" disabled="true"></s:textfield>
这个前端的jstl基础要扎实。
当需要使用js动态设置空间属性时,我们需要注意大小写,比如说:
className=‘’
readOnly=true
在js里是区分大小写的,一定要注意。