`
tailsherry
  • 浏览: 134830 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论
文章列表
在做基于EJB3.0开发的应用中,如果单独启用Jboss作为调试服务器去调试Web应用是一个非常痛苦的等待过程,因为在Jboss中每一次Web应用的发布和启动都会消耗不少的时间。   相对来说,Tomcat是一种这种轻量级Web调试服务器,启动和调试都非常迅速。   如果需要同时启动Tomcat和Jboss,除了Web容器的端口冲突问题需要解决之外,还需要注意配置一下Tomcat的调试环境。否则,在获取运行getInitialContext获取EJB Stub的时候,会抛出异常:   javax.naming.NoInitialContextException: Cannot ins ...
很多人开公司,都是想从小做到大,以至足够“大”。   理想虽好,但是往往与现实差距很大,很多小公司经常接一些个小项目或者小客户的单来做,就这样饥一顿饱一餐。   员工换了一茬又一茬,但是如今的公司还是和N年前的相似。如何走出这个发展的怪圈?   我初步想了一下,觉得如果一个小公司,确切的说是一个IT公司,想要走出这个怪圈,必须要做到其中之一:   一个非常有市场的产品或者大产品  OR   一个稳定且有实力的大客户/市场     试问:还有其他的捷径可循?
在很多企业应用中,用户登录及验证普遍存在。从用户数据存储的方式来看,一般有数据库存储、LDAP/AD、文件存储等。   很显然,在关系数据库发达的年代,单就其保密性和安全性方面来说,文件存储已经基本上可以不用考虑 ...
Web2.0时代,用户对UI交互体验对Web设计上提出了更高的要求,各种各样的Rich Client技术层出不穷,有基于Javascript的,有基于Flex的,也有基于Java Applet的... 最近接触到一种新的基于Web2.0应用开发的技术,叫做Nexaweb(http://www.nexaweb.com) ...
最近在收集一些关于AWT, Swing, SWT之间比较的文章,中间接触到一些关于这三大GUI开发工具包的历史,觉得挺有意思,就用自己的文字记录下来。我想,这对于那些从事Java GUI开发的同志们来说,应该是不可缺的一堂历史课。   话说20世纪中期,IT界也出现“三国”,他们都用Smalltalk作为武器在IT界打自己的天下,其中有大家今日熟悉的蓝色巨人IBM,还有就是Digital Talk和Parc-Place. IBM和Digital Talk坚信采用本地化组件的战略来打天下,而Parc-Place却坚持采用仿效机制来自绘组件天下。   虽然在建国理念上存在冲突,三国之间却一直风平浪静 ...
目前,FCKEditor (http://www.fckeditor.net/) 是开源社区一款强大的HTML编辑器,目前最新版本是2.6,支持Java的插件版本是2.4Beta1。   对于一般的Java Web应用,我们可以通过直接插入JavaScript代码来构造页面,这种方式操作起来比较简便,也是通用在所有web页面的一种方式。但是,在实际的Java Web应用中,我们除了用到普通的页面编辑功能之外,难免会考虑到页面上传图片、附件等功能。所以,单纯使用JavaScript方式的话,这一大堆的文件上传代码将由你自己来写了,工程量还是比较浩大的。自然而然,我们会想到Jsp Tag,有没有现成 ...
接触到Selenium这个Web应用自动化测试工具,实属意外。由于目前项目的停滞,客户那边弄过来一个新的自动化测试的任务。寒~~~ 啥时候也成了QA了!没办法,硬着头皮做下去。 一直比较欣赏的就是外国客户的技术定位,当然他们推荐的这个开源的Selenium也比较有特色,而且和Java, C#地结合也都做得非常好。对于熟悉Java代码的我们来说,看着熟悉的亲切的字符,心中的郁闷慢慢消去。在探索的过程中,对开源社区的这些贡献者们的智慧也是由衷的佩服。 Selenium是一款Web应用的自动化测试工具,详细的内容可参考官方网站(http://selenium.openqa.org/),你可以获取F ...
在实际web应用中,大部分文件下载都是通过url文件链接直接下载的,同样在Struts中也可以这样实现。但是考虑到盗链,跨服务器访问等因素,直接文件流下载也是必要的。那么,在Struts2.0中如何实现数据流下载呢? Struts2.0默认支持多种格式的result type,stream即是其中的一种。如果我这里要实现一个Generate Report的功能,将Report存放在一个InputStream里面,Action的示例代码内容如下: package com.test; import java.io.InputStream; import java.util.HashMap; imp ...
一、介绍组合模式主要用于具有父子关系,或局部-整体关系的情况下。此模式使局部对象和组合对象的使用具有一致性,或者说,我们可以用一个类来统一表示一个对象或组合对象。     二、实例  首先,定义一个抽象的基类,其中定义了局部对象和组合对象的一些基本元素。 import java.util.LinkedList; import java.util.ListIterator; public abstract class TeaBags { LinkedList teaBagList; TeaBags parent; String name; public a ...
自从去年踏入这家软件外包企业,自己深深地被这种新型的软件工业模式所吸引。陌生的鬼子鬼调,弹性的工作制度,和新兴的软件技术都一齐涌过来。 可是工作一年以后,除了发现自己的英语水平有了一定的提高,其他的一切,似乎还是停留在原地,悲乎?抑或说自己有了足够的时间去琢磨自己的技术,技术上有了更大范围的提高,喜乎? 鬼子们为了省钱而选择了具有廉价劳动力的中国,当我们每月从老板那里抠来的微弱的报酬的时候,心里不知道是什么滋味。在我们看来,鬼子们的确是很大方了,不管你是junior还是senior都是25美金/小时,爽啊!一人天8小时就是200美金,一人月就是几乎25000人民币!满眼都是$和¥... 但是 ...
熟悉编写JavaScript的人,都习惯在页面写入setTimeOut来实现web页面的定时监控或事务处理。但是如何在Java服务端来实现这样一个监控机制呢?一般大家都会想到线程。但是一直以来,都没有亲身动手实践过。趁着工作间隙,自己也搬出一段代码来,与大家一起分享线程编程的神奇魔力。 首先创建一个基本抽象类SchedThread,代码内容如下: package com.test; /** * 基于Java线程实现后台定时监控 <p/> Created: Mar 26, 2008 10:08:43 <p/> * <h4>http://tailsherr ...
现在,已经习惯用js去构造网页上的组件,对于普通的下拉框,我们习惯用以下js来构造成页面组件: var select = document.createElement("select"); var option = document.createElement("option"); option.innerHTML = "Option Text"; option.value = "Value"; select.appendChild(option);   这里不能用option.text = "Option ...
在UI部分,页面文件很简单,userMessage.jsp的内容如下: <%@ page contentType="text/html; charset=UTF-8"%> <html> <head> <title>Struts + JSONtitle> <link rel="stylesheet" type="text/css" href="css/main.css" /> ...
Struts2的出现在Web2.0纷争的年代,以Ajax为代表的富客户端(Rich Client)应用正唱着Web2.0的主角。虽然Struts2本身对Ajax的应用也提供了自己的Ajax标签,但是这种比较牵强的支持也是赶鸭子上架,不是Struts本身的特长。   这里,就Struts对JSON支持的技术特点,来构建一个Rich Client应用,UI层使用的是YUI工具包,详情参考Yahoo的YUI网站。http://developer.yahoo.com/yui/。   本文中所涉及的Web应用的大致结构图如下:   先一睹为快,该应用的实际运行界面如下:     页面功能大致是,用户加 ...
一、介绍 桥接模式的主要目的是要将类的抽象部分与它的实现分离,使各个不同类之间都能独立的变化和衔接。   二、实例 首先,定义一个抽象的基类,可以说这就是桥梁吧! public abstract class Soda { private SodaImp sodaImp; public void setSodaImp(SodaImp sodaImp) { this.sodaImp = sodaImp; } public SodaImp getSodaImp() { return this. ...
Global site tag (gtag.js) - Google Analytics