`
javahacker2
  • 浏览: 43489 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
十. 享元模式 整理自 《java与模式》阎宏编著 1.意图:     运用共享技术有效地支持大量细粒度的对象。 2.类图:       单纯享元模式:                复合享元模式:                  3.原理:       享元对象能做到共享的关键是区分内蕴状态(Internal State)和外蕴状态(External State)。       一个内蕴状态是存储在享元对象内部的,并且不会随环境改变而有所不同的。因此,一个享元可以具有内蕴状态并可以共享。       一个外蕴状态是随环境改变而改变的,不可以共享状态。享元 ...
设计模式 代理模式:给某一对象提供代理对象,并由代理对象控制具体对象的引用. 代理,指的就是一个角色代表另一个角色采取行动,就象生活中,一个红酒厂商,是不会直接把红酒零售客户的,都是通过代理来完成他的销售业务的.而客户,也不用为了喝红酒而到处找工厂,他只要找到厂商在当地的代理就行了,具体红酒工厂在那里,客户不用关心,代理会帮他处理. 代理模式涉及的角色: 1:抽象主题角色.声明了代理主题和真实主题的公共接口,使任何需要真实主题的地方都能用代理主题代替. 2:代理主题角色.含有真实主题的引用,从而可以在任何时候操作真实主题,代理主题功过提供和真实主题相同的接口,使它可以随时代替真实主题.代理 ...
public class singleton { private singleton(){ System.out.println("构造方法被调用!"); } private static class singletonHolder{ private static singleton instance = new singleton(); } public static singleton getInstance(){ return singletonHolder.instance; } public static voi ...
在开发Java Swing应用程序的过程中,有两个原则是必须要牢记的:    1.耗时的操作(例如从数据库查询大量数据,读取URI资源等)一定不能运行在EDT(事件派发线程)上,否则会导致Swing用户界面失去响应。    2.只能在EDT线程上对Swing Components进行访问。    基于上面两点原因,在一个Java Swing程序中,要想使用户界面响应灵敏,至少应该有两个线程;一个线程用来执行耗时操作,EDT线程用来执行所有与Swing Components的交互,例如更新文本,重绘图形等等。这就要求两个线程之间要相互通讯,给程序的开发带来了不少的难度,Swing Worker的 ...
        正确理解和使用Swing线程模型编程是编写响应灵活的Swing程序的关键。从Java SE 6开始引进的SwingWorker能帮你轻松的编写多线程Swing程序,改善你Swing程序的结构,提高界面响应的灵活性。SDN(Sun developer Network)上有一篇很好 ...

SwingWorker分析

SwingWorker可以帮助我们在后台执行耗时的任务,而避免阻塞我们的应用程序,以让用户感觉不爽。SwingWorker有2个参数T , VT:为最终结果集 【<T> the result type returned by this SwingWorker's doInBackground and get methods】,由文档的介绍可以知道这个结果可以被doInBackground和get方法返回。V:为中间结果集【<V> the type used for carrying out intermediate results by this SwingWorker ...
     在Java中Swing是线程不安全的,是单线程的设计,这样的造成结果就是:只能从事件派发线程访问将要在屏幕上绘制的Swing组件。事件派发线程是调用paint和update等回调方法的线程,它还是事件监听器接口中定义的事件处理方法,例如,ActionListener中的actionPerformed方法在事件派发线程中调用。        Swing是事件驱动的,所以在回调函数中更新可见的GUI是很自然的事情,比如,有一个按钮被按下,项目列表需要更新时,则通常在与该按钮相关联的事件监听器的actionPerformed方法中来实现该列表的更新,从事件派发线程以外的线程中更新Swin ...
SwingUtilities中invokeLater和invokeAndWait介绍    在Java中Swing是线程不安全的,是单线程的设计,这样的造成结果就是:只能从事件派发线程访问将要在屏幕上绘制的Swing组件。事件派发线程是调用paint和update等回调方法的线程,它还是事件监听器接口中定义的事件处理方法,例如,ActionListener中的actionPerformed方法在事件派发线程中调用。    Swing是事件驱动的,所以在回调函数中更新可见的GUI是很自然的事情,比如,有一个按钮被按下,项目列表需要更新时,则通常在与该按钮相关联的事件监听器的actionPerfor ...
POI是一个标准的Apache项目,提供了完整的接口,不过也正因为这个POI用起来会很比较复杂不容易上手。相比较JXL就用起来就方便很多,功能也显得少了一些,不过应付起常见操作还是绰绰有余,JXL不支持设置打印区域。在我接触的很多项目中,都是采用的JXL,可以说JXL用POI 20%的代码实现了Poi 80%的功能。jxl的主要功能有: 1.从Excel 95、97、2000等格式的文件中读取数据 2.读取Excel公式(可以读取Excel 97以后的公式) 3.生成Excel数据表(格式为Excel 97) 4.支持字体、数字、日期的格式化 5.支持单元格的阴影操作,以及颜色操作 6.修改已 ...

JXL操作EXCEL

    博客分类:
  • Java
public ImpExpRecord upLoadExcelFileToTempTable(Map map) throws RMSAppException {      String  templateID =(String)map.get("templateID");  String  path = (String)map.get("path");  List list =impExpDao.queryTemplate(map);  if(list!=null && list.size()>0){   ImpExpTemple ...

POI导出EXCEL

    博客分类:
  • Java
import java.sql.ResultSet;import java.sql.SQLException;import java.util.List; import javax.servlet.http.HttpServletResponse; import org.apache.commons.collections.CollectionUtils;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.u ...
  String gisHome = System.getenv("GIS_HOME");
因为SWING项目不是通过容器来布署的,一般企业级的都会将最后的项目打包成EXE,客户端进行安装或执行; 现在公司不是互联网公司,所以本人也不了解真正的那些客户端的软件的安装过程的软件实现 最近项目中用到SWING,所以得将项目打包 exe4j是一款挺好的将swing项目的JAR转成EXE的软件: 1.操作简单 2.有两种打包的方式   第一种不将JAR包含进EXE中,只是通过生成一个EXE文件来调用JAR,让他运行,JAR放在目录文件下,商业用上会被人反编译。如果不再意这点,是挺方便的。   另一种是将JAR包含进EXE中,这样EXE会挺大的,但是安全性较好,一般人无法反编译   ...
一、简单的用ApplicationContext做测试的话,获得Spring中定义的Bean实例(对象).可以用: ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");RegisterDAO registerDAO = (RegisterDAO)ac.getBean("RegisterDAO"); 如果是两个以上:ApplicationContext ac = new ClassPathXmlApplicationContext(ne ...
最近需要arcgis地图上实现一些东西,所以现将安装步骤及注册破解方式上传(见附件),希望对大家有用,指导是百度经验里找的;    
Global site tag (gtag.js) - Google Analytics