责任链模式

责任链模式设计思路是将一个请求发到一个处理链,处理链上的每个节点维护了下一个处理节点的引用,如果某个处理节点能处理该请求,则处理并且结束,否则交给下个节点处理直到处理链结束 示例代码来自:https://github.com/iluwatar/java-design-patterns/tree/master/chain OrcKing,维护一个处理链 /** * * OrcKing make...

阅读更多

Java类加载初始化顺序

总结以下几点规律 静态先于非静态(包括成员变量和代码块) 基类先于导出类 成员变量先于代码块 代码块先于构造方法(创建对象时) 内部类何时使用,何时加载 参考:https://blog.csdn.net/w574951402/article/details/53012610 package base; /** * 对类加载、构造方法执行顺序的研究 * * @author wdb */ p...

阅读更多

双重检查锁模式

双重检查锁是一种并发设计模式,通过第一次检查是否应该上锁而不实际获得锁的方式减小获得锁的开销,只有当第一次检查需要上锁执行同步代码时才获得锁,当初始化或分配资源完成时,第一次检查始终为false,不会上锁从而保证了效率 常用于临界条件下的初始化和修改等操作,而这种操作需要保证线程安全,例如单例的创建 示例代码来自:https://github.com/iluwatar/java-design-pa...

阅读更多

单例模式

单例模式是指在一个虚拟机中,一个类只有一个实例,一些管理类常采用这种模式 单例模式中类不能实现Cloneable和Serializable,以避免通过克隆和读对象的方式创建多个示例 单例模式主要分延迟和非延迟加载 示例代码来自:https://github.com/iluwatar/java-design-patterns/tree/master/singleton 延迟加载 给方法加锁,由于对整...

阅读更多

观察者模式

观察者模式是指一个对象Subject状态改变通知到所有观察者Observer。 被观察者内部维护观察者列表,对外暴露添加,移除观察者,和通知方法,通知方法遍历观察者列表调观察者update方法通知,update可定义为传入Subject自身和指定参数。 常用于分布式的处理系统,如消息通知等。 Java工具包也有现成的观察者接口java.util.Observable,可直接继承,但是update传...

阅读更多

SpringMVC多种类型的对象List数据绑定

简单的提交保存,前台数据只需映射到一个对象字段,SpringMVC的对象绑定可轻松处理。这篇文章介绍了SpringMVC中的几种数据绑定:https://blog.csdn.net/z_dendy/article/details/12648641 在一些复杂的场景中前台包含多种类型,每种类型的对象有多个且支持增删改,通用的解决方式是将这些对象list封装在一个大对象里,前端name使用object...

阅读更多

JQuery常用方法备查

对于后端,熟悉一些常用的JQuery方法是有必要的,本文总结了一些常用的JQuery方法备查 JQuery官方API地址:http://api.jquery.com/ $('.css'),$('#id'),$('tag') 这个不用说了 addClass,removeClass,hasClass,toggleClass 可以传入多个class,hasClass顺序必须一致且不能有空格,toggle...

阅读更多

select下拉选择值不重复

可在change事件中处理,如果选择重复则保持原有选择不变 由于change事件中拿到的值就是选择后的内容,所以需要存储每个select原来选择的值,JQuery的data()方法可以方便达到效果,同时也可用来标记当前下拉是否选择 示例如下(不考虑初始重复的情况) $('select').each(function () { $(this).load(url, data, ...

阅读更多