`
文章列表

图片引用站

...
http://blog.chinaunix.net/uid-27795088-id-3977915.html 生产者消费者模式的好处: 它的确是一种实用的设计模式,常用于编写多线程或并发代码。下面是它的一些优点:   独立地或并发的编写消费者和生产者,它仅仅只需知道共享对象是谁   生产者不需要知道谁是消费者或者有多少消费者,对消费者来说也是一样   生产者和消费者可以以不同的速度执行   分离的消费者和生产者在功能上能写出更简洁、可读、易维护的代码   经典的方法是使用wait和notify方法在生产者和消费者线程中合作,在队列满了或者队列是空的条件下阻塞,Java5的阻塞队列(Blocki ...
    大公司封装了他的report报表,又不给我demo,我表示看不懂,只好自学usioncharts,动手几个demo还是很容易的:     官网:http://www.fusioncharts.com/
转:http://greemranqq.iteye.com/blog/1969273     在一个成套的web系统中,不能更改源代码的情况下,要进行频繁的数据库操作,需要进行数据库连接管理而不影响原系统运行,这里就是一个java实现连接池的demo:     主要是对连接数的控制,比如最大20,最小2的连接。 package pool; import java.sql.Connection; import java.sql.SQLException; public interface IConnectionPool { // 获得连接 ...

4、结构型模式---

Adapter ( 适配器模式 ) 1、Adapter ( 适配器模式 ) 目标(Target)角色:这就是所期待得到的接口。注意:由于这里讨论的是类适配器模式,因此目标不可以是类。 源(Adapee)角色:现在需要适配的接口。 适配器(Adaper)角色:适配器类是本模式的核心。适配器把源接口转换成目标接口。显然,这一角色不可以是接口,而必须是具体类。 public class Adapter extends Adaptee implements Target { @Override public void sampleOperation2() { } ...
1、单例模式【Singleton Pattern】      几乎所有面向对象的程序中,总有一些类的对象需要是唯一的,例如,通过数据库句柄到数据库的连接是独占的。您希望在应用程序中共享数据库句柄,因为在保持连接打开或关闭时,它是一种开销。     怎样确保一个特殊类的实例是独一无二的(它是这个类的唯一实例),并且这个实例易于被访问呢? 解决方案 1)全局变量:一个全局变量使得一个对象可以被访问,但它不能防止你实例化多个对象。因为你的任何代码都能修改全局变量,这将不可避免的引起更多调试的意外。换句话说,全局变量的状态总是会出现一些问题的。 2)类构造函数私有和类自身的静态方法:让类自身负责 ...
工厂模式可以分为三类: 1)简单工厂模式(Simple Factory) 2)工厂方法模式(Factory Method) 3)抽象工厂模式(Abstract Factory) 1、简单工厂模式(simple factory)是类的创建模式,又叫静态工厂方法(static factory method)模式。 简单工厂模式根据传入的参数决定创建哪一类实例。 public class peopleFactory{ public static people create(int type){ if(type==1){ return new chinese(); } ...
1、单一职责原则 用户的属性(Properties)和用户的行为(Behavior)没有分开,这是一个严重的错误!非常正确,确实是这个接口设计的一团糟,应该把用户的信息抽取成一个业务对象(Bussiness Object,简称BO),把行为抽取成另外一您 ...
一、统计当前在线人数  @Override public void sessionCreated(HttpSessionEvent se) { ServletContext context = se.getSession().getServletContext(); Integer onLineCount = (Integer) context.getAttribute("onLineCount"); if(onLineCount==null){ context.se ...
    HttpSessionActivationListener 监听器     原文:http://blog.csdn.net/kjfcpua/article/details/7290352     Jsp/servlet 标准不要求一个web容器支持分布式应用,但是他一定要支持HttpSessionActivationListener借口,以使代码可以支持分布式环境。一般免费的web容器都不支持分布式,weblogic websphere是支持的。为了负载均衡或者fail-over,web容器可以迁移一个session到其他的jvm.session的passivation是指非活动的ses ...
    ServletContextAttributeListener, HttpSessionAttributeListener 和ServletRequestAttributeListener,这三个接口中都定义了三个方法来处理被监听对象中的属性的增加,删除和替换的事件,同一个事件在这三个接口中对应的方法名称完全相同,只是接受的参数类型不同。 attributeAdded 方法: 1 public void attributeAdded(ServletContextAttributeEvent scae) 2 public void attributeReplaced(HttpSess ...
web监听器     主要有三类:         1.ServletContext:对servlet上下文(application对象)进行监听         2.Session:对session监听         3.Request:对request的监听     监听器是一个实现特定接口的普通java类,这个程序专门用于监听另一个java对象的方法调用或属性改变,当监听到事件发生后,监听器的某个方法立即执,相关接口[EVENT/LISTENER]     平时做开发的时候,我们是写监听器去监听其他对象,那么我们如果想设计一个对象,让这个对象可以被别的对象监听又该怎么做呢?     ...
http://www.iteye.com/topic/1137820 HTML5框架可以快速构建响应式网站,它们帮助程序员减少编码工作,减少冗余的代码。如今有很多免费的HTML5框架可供使用,由于它们有着响应式设计、跨浏览器兼容、相对轻量级等特点,这些框架在 ...
1、HTMLDivElement alert(obj.innerHTML); 2、object alert(index.USERID);

8、线程

      在项目中使用多线程的场景并不是很多,我想是一般项目对线程要求不高,但是线程在实际开发中带来的好处是很多的:    1.一件事:用单线程可以做,但是使用多线程可以更快。    2.典型应用tomcat,tomcat内部采用的就是多线程,上百个客户端访问同一个web应用,tomcat接入后都是把后续的处理扔给一个新的线程来处理,这个新的线程最后调用到我们的servlet程序,比如doGet或者doPost方法。      迅雷多任务下载,word, 浏览器,    3.后台线程:比如定期执行一些特殊任务,如定期更新配置文件,任务调度(如quartz),一些监控用于定期信息采集等。    ...
Global site tag (gtag.js) - Google Analytics