大家好,好久不见!由于时代进步和技术升级,博客已经逐渐退出历史舞台了,所以我也开始把的对技术博客的热爱转移到视频制作。以下是最近一段时间录制的关于Reactive Spring的系列视频,有兴趣的同学可以围观一下
摘要: JavaFX是Java在富客户端(虽然很多地方这样翻译,我觉得叫‘炫客户端’更贴切)平台又一大创举。它的定位是为商用企业应用提供轻量级和通过硬件加速的界面平台。使用JavaFX,开发者可以重用其应用中现有的Java类库,从而避免重复技术投入,甚至可以访问系统级别的本地资源或无缝连接到部署在中间件服务器上的企业服务应用。
摘要: 在《SSF入门》中,我曾经提过“虽然Seam针对在JSF里进行数据分页和排序提供了解决方法,但我认为此方法过于简陋,而且不能使用Richfaces的分页控件
进行分页。通过SSF数据访问方式,您可以完美结合Richfaces的分页控件简单地实现分页功能。”所以本文旨在给大家演示在SSF中,实现数据分页和排序是如何的方便和快捷。 阅读全文
posted @
2011-01-04 01:10 Max 阅读(4485) |
评论 (2) |
编辑 收藏
以下是一些大概的要求:
- 三年以上Java EE开发经验;
- 了解PLSQL开发;
- 英语嘛,可以进行基本的口语对话,可以阅读和编写英文文档。
- 有银行项目经验,熟悉银行业务优先。
工作地点在深圳,有兴趣的朋友,可以发送中英简历到我的邮箱:max.m.yuan@gmail.com。
posted @
2010-11-22 23:29 Max 阅读(4159) |
评论 (2) |
编辑 收藏
摘要: 前一阵子我利用业余时间帮朋友开发了一个库存管理系统,虽然系统不算复杂,但是麻雀须小五脏俱全,系统包括了一般企业应用常见的功能如报表等。由于最近有空,我觉得有必要把工程清理一下,作为一个模板。那以后再编写类似项目的时候,简单套用即可。本文旨在分享本项目的经验。 阅读全文
posted @
2010-11-15 08:48 Max 阅读(7118) |
评论 (7) |
编辑 收藏
很久没有更新BLOG了,上一篇文章差不多已经是一年前的事情了。这在一年里,因为工作和生活的事情,时时想更新BLOG,但经常是有心无力。不过,令我深感欣慰的是在这段时间里还可以时不时收到朋友们给的评论或Email。
当初我凭着一腔热情写下了《Struts 2系列》的文章,很高兴它们能够帮助一些朋友们能够更快地认识Struts 2。我现在已经很久没有使用Struts 2了,可能园子里很多朋友在这方面都比我厉害很多。所以我不想再在各位牛人面前班门弄斧啦,我希望可以在今后可以把之前开始《Seam系列》写完,虽然大家似乎对Seam不大感兴趣。
顺便说一句,一直以来都有朋友希望知道“Max是谁?”。所以我请允许在此做一下自我介绍,本人姓袁,名美,广东湛江人,毕业于广东工业大学。Max是进第一间公司的英文名,一直沿用至今。我现在就职于甲骨文公司从事银行产品开发。如果大家还想知道更多,可以通过新浪围脖http://t.sina.com.cn/fromax找到我。
posted @
2010-09-08 23:22 Max 阅读(2986) |
评论 (9) |
编辑 收藏
摘要: 越来越多的使用Spring框架的项目开始或者考虑开始使用Annotation方式定义Bean,然而Spring框架本身却没有提供一个现成的方式去实现将配置文件中的资源通过Annotation的方式注入到Bean中。本文介绍一种通过扩展Spring来解决上述问题的方案与实现。 阅读全文
posted @
2009-11-20 22:27 Max 阅读(24084) |
评论 (10) |
编辑 收藏
摘要: 由李开复先生离职所想到的。 阅读全文
posted @
2009-09-05 01:35 Max 阅读(3629) |
评论 (10) |
编辑 收藏
摘要: 今天工作的时候,帮同事看一个BUG,突然想到一个问题,大家如果有兴趣的话,不妨也不想一下答案。 阅读全文
posted @
2009-07-09 20:42 Max 阅读(6634) |
评论 (10) |
编辑 收藏
摘要: Seam系列之三
上一篇文章,我大概地介绍一下基于Faceslet的JSF页面端的构成。接下来,是时候说一下后台逻辑的实现啦。JSF的页面逻辑是由Managed Bean(姑且译为托管BEAN)实现。所谓的“Managed Bean”就是指一些由JSF运行时(Runtime)创建与管理的普通Java对象(潮流一点的叫法——POJO)。 阅读全文
posted @
2009-04-20 23:47 Max 阅读(4693) |
评论 (10) |
编辑 收藏
摘要: Seam系列之二
上一篇文章,我介绍了通过JBoss Tools的向导生成一个简单的Seam工程。Seam的中文意思就是“缝合线, 衔接口, 接缝”,所以大家可以将Seam当成一条能将EJB3、JSF等框架有机地结合起来的纽带。 阅读全文
posted @
2009-03-31 00:10 Max 阅读(5673) |
评论 (7) |
编辑 收藏
其实很多朋友在EMAIL里都问过这个问题。我不知道自己是否够资格回答这种问题。因为我不算成功,至少我自己觉得如此。不过,在这我可以跟你讨论一下本人对一个程序员的学习方法探讨。
首先,我认为兴趣是最重要的,无论学什么。只有你真正喜欢做一件事情的时候,做起来才会不累。记得以前读高中的时候,那时候我很认真,可以说得上非常努力。不过,当时我的努力并没有得到很好回报的,我没有考上心目中的重点高校,而是一所普通高校。现在回想过来,我觉得最大问题是当时我并没有把读书作为兴趣,很多时候都只是一种压力,很多时候都是逼迫自己在学习,所以效果不见得好。我现在是很少逼迫自己在不想读书的时候,拿起书本。
其次,IT行业是一个日新月异的行业,尤其是我们做应用开发更是如此,各色各样的框架、类库淋郎满目,层出不穷。作为开发者迷茫自然是难免的。学习这些东西的关键是找到好的资料(包括书籍、在线文档、博客和论坛等)。认真地看一下,再相应地做一下动手实验。我读大学的时候,有一段时间很想学会MFC(Microsoft
Foundation Class
Libarary,如果没有记错的话,好久没用啦^-^)。不过,我断断续续地学习了一年多都没有很大的进步。直到我购买并阅读了一本《Microsoft
MFC程序设计》(虽然这本书有一千多页之多),才发现一本好书的作用绝对不容忽视,最后我的毕业设计就是用MFC做的。
还有,除了看书外,必不可少就是动手啦。多尝试自己编写一些有用小程序,小练习,学以至用。
另外,很多人都觉得自己还是一个“菜菜鸟”(我也经常这么认为),我觉得这不是一个问题。正所谓“罗马不是一日建成的”,很少人生下来就是高手。并且我认为人在年轻的阶段学习曲线并不是一个直线曲线(y
= a*x + b),而是一条指数曲线(y=x的k次方,k>1),随着你的积累的知识增加,学习速度是越来越快的。
posted @
2009-03-16 00:40 Max 阅读(8832) |
评论 (23) |
编辑 收藏
摘要: Seam系列之一
从本文开始,我将会开始一个全新系列的文章——《Seam系列》。如果有关心我的博客的朋友,应该知道早前一年多的时间我都使用Seam使用开发项目,可以算得上是略有小成。因此,我很希望与大家分享一下Seam的经验。 阅读全文
posted @
2009-03-12 01:13 Max 阅读(7689) |
评论 (13) |
编辑 收藏
摘要: 通过这一年多的艰苦奋战,项目就快接近收官之战。回首过往一年的开发历程,心中不免有些感慨万千,故写下这篇BLOG总结一下经验与教训,算是兑现上一篇BLOG的诺言。 阅读全文
posted @
2008-10-25 01:20 Max 阅读(19130) |
评论 (28) |
编辑 收藏
最近,有些朋友问我为什么这么长时间没有更新BLOG。说起来实在不免心中有愧,因为这大半年来,我不仅没有更新BLOG,而且连朋友们发来的EMAIL也没有时间回复。故在此先给各位关心我BLOG的朋友说句“对不起!”。
接着,给大家介绍一下我这大半年的行踪。其实,我大半年实在没空,因为公司接了新项目且客户需求比较又比较高,所以一忙就是大半年。等过一阵子项目结束,我会详细在BLOG里,总结一下这个项目的经验和教训。不过,这个项目由于客户坚持,我们没有采用STRUTS 2,而是JSF+Faceslet+Seam+Richfaces作为Web端的开发。经此一役,我的JSF可谓进步神速,基本上解决了90%在项目中碰到的技术问题。可能过一段时间,我会写一个JSF系列。
最后,再次对那些给我发EMAIL,而没有得到回复的朋友说声“SORRY!”
posted @
2008-07-03 00:22 Max 阅读(4215) |
评论 (27) |
编辑 收藏
摘要: 在上两部分的《Struts 2与AJAX》中我介绍了Struts 2与DOJO结合实现AJAX的知识,本文将介绍在Struts 2中使用DWR实现AJAX表单校验。 阅读全文
posted @
2007-08-16 18:33 Max 阅读(34076) |
评论 (76) |
编辑 收藏
摘要: Struts 2系列之十四
在上一篇文章《Struts 2与AJAX(第一部分)》,我已经简单地介绍了<s:tree />的一些用法,接下来我将继续深入讲解<s:tree />的使用和通过DWR实现AJAX校验。 阅读全文
posted @
2007-06-27 18:33 Max 阅读(31320) |
评论 (41) |
编辑 收藏
摘要: Struts 2系列之十三
在当今——Web 2.0概念铺天盖地的Internet环境下,简易的AJAX集成对于一个成功的WEB框架来说是不可或缺的。因此,Struts 2其中的一个重要的功能(Feature)就是“First-class AJAX support - Add interactivity and flexibility with AJAX tags that look and feel just like standard Struts tags(大意:一流的AJAX支持——通过AJAX标志增加互动性和灵活性,而且使用这些AJAX标志与普通的Struts标志同样简单)”。 阅读全文
posted @
2007-06-12 18:31 Max 阅读(81054) |
评论 (96) |
编辑 收藏
摘要: Struts 2系列之十二
Struts 2为大家提供了不少常用的很酷的表单标志,简化了我们程序员的工作。不过,由于这些都是新标志,大家可能在使用上还存在不少疑问。本文将就朋友们的回复、留言或Email上的问题,分别对这些酷标志进行讲述。 阅读全文
posted @
2007-05-18 19:34 Max 阅读(36793) |
评论 (86) |
编辑 收藏
摘要: Struts 2系列之十一
OGNL是一种功能很大的表达式语言,熟悉它可以使我们的开发变得更快捷。 阅读全文
posted @
2007-04-28 19:43 Max 阅读(66751) |
评论 (46) |
编辑 收藏
摘要: Struts 2系列之十
CRUD是Create(创建)、Read(读取)、Update(更新)和Delete(删除)的缩写,它是普通应用程序的缩影。如果您掌握了某框架的CRUD编写,那么意味可以使用该框架创建普通应用程序了,所以大家使用新框架开发OLTP(Online Transaction Processing)应用程序时,首先会研究一下如何编写CRUD。这类似于大家在学习新编程语言时喜欢编写“Hello World”。 阅读全文
posted @
2007-04-13 01:37 Max 阅读(44865) |
评论 (74) |
编辑 收藏
摘要: 众所周知,比较古老的圆角的做法是通过表格和图像构成。但随着AJAX的流行、CSS + DIV的页面布局技术的风靡,古老的做法显得苍白无力,所以人们不断寻求改进的方法。本文的实现就是一种现在比较流行的做法。 阅读全文
posted @
2007-03-23 01:37 Max 阅读(6534) |
评论 (12) |
编辑 收藏
摘要: Struts 2.0系列之九
Struts 2是通过Commons FileUpload文件上传。Commons FileUpload通过将HTTP的数据保存到临时文件夹,然后Struts使用fileUpload拦截器将文件绑定到Action的实例中。从而我们就能够以本地文件方式的操作浏览器上传的文件。 阅读全文
posted @
2007-03-21 00:48 Max 阅读(108587) |
评论 (148) |
编辑 收藏
摘要: 前些日子看了一篇关于在Spring 2中整合DWR 2的文章《AJAX, DWR and Spring》。最近,想动手试一下,就下载其源代码回来看看,依葫芦画瓢做了一遍。在运行时,得到XML验证错误。经过一翻折腾,终于把问题解决。 阅读全文
posted @
2007-01-31 16:45 Max 阅读(17375) |
评论 (6) |
编辑 收藏
摘要: 在AJAX如火如荼的今天,相信大家对Prototype这个Javascript类库应该都有所耳闻,它也的确使编写Javascript变得更简单。关于Prototype的文章,《Prototype简介》、《Prototype源码》诸如此类数不胜数;所以本文不会再做这几方面的介绍,并假设读者对Prototype有一定了解。 阅读全文
posted @
2007-01-26 15:06 Max 阅读(5626) |
评论 (6) |
编辑 收藏
摘要: Struts 2.0系列之八
IoC(Inversion of Control,以下译为控制反转)随着Java社区中轻量级容器(Lightweight Contianer)的推广而越来越为大家耳熟能详。在此,我不想再多费唇舌来解释“什么是控制反转”和“为什么需要控制反转”。因为互联网上已经有非常多的文章对诸如此类的问题作了精彩而准确的回答。大家可以去读一下Rod Johnson和Juergen Hoeller合著的《Expert one-on-one J2EE Development without EJB》或Martin Fowler所写的《Inversion of Control Containers and the Dependency Injection pattern》。 阅读全文
posted @
2006-12-28 17:37 Max 阅读(33714) |
评论 (139) |
编辑 收藏
摘要: 在我早前的文章《转换器(Converter)——Struts
2.0中的魔术师》(以下简称为《转》)中,提及在Struts 1.x中实现批量封装对象,并不是一件容易的事,这需要一些技巧。昨天,有一位同事又和我讨论起这个问题,所以鉴于此场景(scenario)较为普遍,我决定写一篇有关的文章。
应用场景
本文使用《转》中的最后... 阅读全文
posted @
2006-12-08 19:51 Max 阅读(7792) |
评论 (40) |
编辑 收藏
摘要: Struts 2.0系列之七
Interceptor(以下译为拦截器)是Struts 2的一个强有力的工具,有许多功能(feature)都是构建于它之上,如国际化、转换器,校验等。 阅读全文
posted @
2006-12-06 20:10 Max 阅读(111514) |
评论 (72) |
编辑 收藏
摘要: All Input Is Evil!
-Writing secure code
在写前几篇文章的时候,有些朋友建议我的写一篇关于表单数据校验的文章。 正如文章的开头所引用的《Writing Secure Code》的名言:“所有的输入都是罪恶的”,所以我们应该对所有的外部... 阅读全文
posted @
2006-11-14 13:38 Max 阅读(51404) |
评论 (118) |
编辑 收藏
摘要: 在我已往的Struts 1.x项目经验中,有个问题不时的出现——在创建FormBean时,对于某个属性到底应该用String还是其它类型?
开发Web应用程序与开发传统桌面应用程序不同,Web应用程序实际上是分布个不同的主机(当然也可以同一个主机,不过比较少见)上的两个进程之间互交。这种互交建立在HTTP之上,它们互相传递是都是字符串。换句话说,
服务器可以的接收到的来自用... 阅读全文
posted @
2006-11-07 14:26 Max 阅读(42108) |
评论 (98) |
编辑 收藏
摘要: Struts 2.0系列之四
国际化是商业系统中不可或缺的一部分,所以无论您学习的是什么Web框架,它都是必须掌握的技能。 阅读全文
posted @
2006-11-01 19:06 Max 阅读(73109) |
评论 (123) |
编辑 收藏
摘要: 有Struts 1.x经验的朋友都知道Action是Struts的核心内容,当然Struts 2.0也不例外。不过,Struts 1.x与Struts 2.0的Action模型很大的区别。
Struts 1.x
Stuts 2.0
... 阅读全文
posted @
2006-10-25 12:10 Max 阅读(99375) |
评论 (118) |
编辑 收藏