- 浏览: 9968 次
- 性别:
- 来自: 长沙
最新评论
文章列表
JAVA WEB高并发解决方案
- 博客分类:
- JAVA性能调优
一个小型的网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单。随着互联网业务的不断丰富,网站相关的技术经过这些 ...
Java代码性能优化
- 博客分类:
- JAVA性能调优
代码优化的目标是:
1、减小代码的体积
2、提高代码运行的效率
代码优化细节
1、尽量指定类、方法的final修饰符
带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是 f ...
web.xml配置详解
- 博客分类:
- JAVA基础
引文:
对于一个J2EE领域的程序员而言,基本上每天都会和web应用打交道。
什么是web应用?最简单的web应用什么样?给你一个web应用你该从何入手?
1、什么是web应用?
web应用是一种可以通过Web访问的应用程序。在J2EE领域下,web应用就是遵守基于Java技术的一系列标准的应用程序。
2、最简单的web应用什么样?
2个文件夹、1个xml文件就能成为一个web应用
第一个文件夹:应用名,如test
第二个文件夹:在test文件夹中创建名为WEB-INF的文件夹
XML文件:在WEB-INF文件夹 ...
1、在web.xml中指定TLD文件
2、创建TLD文件,并配置标签信息
3、编写标签类(标签显示内容写入到FTL模板中)
4、在jsp页面顶部引入标签库、并使用
5、使用自定义标签的好处:
--JSP标签可以提高JSP页面的可读性, 使用JSP标签就是为了消除JSP页面的<%%>中的Java代码。
--可以把页面美工工作和程序编写分开。
--自定义JSP标签通常是为了复用,比如相同的功能不需要在不同的页面书写同样的代码,方便页面代码的维护。
附:Freemarker文档
设计模式学习笔记(二十一:访问者模式)
- 博客分类:
- JAVA设计模式
1.1概述
表示将一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下定义作用于这些元素的新操作。这就是访问者模式的定义。
编写类的时候,可能在该类中编写了若干个实例方法,该类的对象通过调用这些实例方法操作其成员变量表明所产生的行为。在某些设计中,可能需要定义作用于类的成员变量的新操作,而且这个新操作不应当由该类中的某个实例方法来承担。
例如,有一个电表(Ammeter)类,在电表类中,electricAmount成员变量的值表示用电量,showElectricAmount()方法返回electricAmount
设计模式学习笔记(二十二:备忘录模式)
- 博客分类:
- JAVA设计模式
1.1概述
在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态。这就是备忘录模式的定义。
对象的状态依赖于它的变量的取值情况,对象在程序运行期间的各个时刻可能具有不同的状态。在某些应用中,程序可能需要使用一种合理的方式来保存对象在某一时刻的状态,以便在需要时,对象能恢复到原先保存的状态。在备忘录模式中,称需要保存状态的对象为“原发者”,称负责保存原发者状态的对象为“备忘录”,称负责管理备忘录的对象为“负责人”。备忘录模式要求原发者可以访问备忘录中的细节,即可以访问备忘录中的数据,以便恢复原发者的状态,而负责人 ...
设计模式学习笔记(总结篇:模式分类)
- 博客分类:
- JAVA设计模式
GOF根据模式的目标将模式分为三个类目:创建型、行为型和结构型。
1 创建型模式
创建型模式设计对象的实例化,这类模式的特点是,不让用户依赖于对象的创建或排列方式,避免用户直接使用new运算符创建对象。
GOF的23中模式中的下列5种模式属于创建型模式:
(1)
设计模式学习笔记(二十三:解释器模式)
- 博客分类:
- JAVA设计模式
1.1概述
给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。这就是解释器模式的定义。
对于某些问题,我们可能希望用简单的语言来描述,即希望用简单的语言来实现一些操作,比如用简单语言实现简单的翻译操作,用户输入Teacher drink water,程序输出“老师喝水”。学习使用解释器模式需要用到一些形式语言的知识,和编译原理课程中相关知识点比较接近,个人觉得编译原理中相关理论知识比较晦涩,在此处就不继续往下细究具体原理,有兴趣的同学可以去看一看编译原理的教材。
例如,一个语言一旦有了语句,就可以让程序根据语句进行某种操作。 ...
设计模式学习笔记(十七:状态模式)
- 博客分类:
- JAVA设计模式
1.1概述
允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。这就是状态模式的定义。
一个对象的状态依赖于它的变量的取值情况,对象在不同的运行环境中,可能具有不同的状态。在许 ...
设计模式学习笔记(十五:组合模式)
- 博客分类:
- JAVA设计模式
1.1概述
将对象组合成树形结构以表示“部分-整体”的层次结构。组合(Composite)使用户对单个对象和组合对象的使用具有一致性。这就是组合模式的定义。
如果一个对象包含另一个对象的引用,称这样的对象为组合对 ...
设计模式学习笔记(十九:代理模式)
- 博客分类:
- JAVA设计模式
1.1概述
为其他对象提供一种代理以控制对这个对象的访问。这就是代理模式的定义。
当用户希望和某个对象打交道,但程序可能不希望用户直接访问该对象,而是提供一个特殊的对象,这个特殊的对象被称作当前用 ...
设计模式学习笔记(十八:模板方法模式)
- 博客分类:
- JAVA设计模式
1.1概述
定义了一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。这就是模板方法的定义。
类中的方法用以表明该类的实例所具有的行为,一个类可以有许多方法,而且类中的实例方法也可以调用该类中的其他若干个方法。在编写类的时候,可能需要将类的许多方法集成到一个实例方法中,即用一个实例方法封装若干个方法的调用,以表现一个算法的骨架,也就是说,调用该实例方法相当于按着一定顺序执行若干个方法。
例如,各类客运车站在安排乘客上车时都进行安全检查、验证车票、选择车体类型三个步骤(具体如下图一所示)。因此在一个抽象 ...
设计模式学习笔记(十六:桥接模式)
- 博客分类:
- JAVA设计模式
1.1概述
将抽象部分与它的实现部分分离,使他们都可以独立地变化。这就是桥接模式的定义。
抽象类或接口中可以定义若干个抽象方法,习惯上将抽象方法称作操作。抽象类或接口使程序的设计者忽略操作的细节,即不必考虑这些操作是如何实现的,当用户程序面向抽象类或接口时,就不会依赖具体的实现,使系统具有很好的扩展性。但是,抽象类中的抽象方法总归是需要子类去实现的,在大多数情况下抽象类的子类完全可以胜任这样的工作,但是在某些情况下,子类可能会遇到一些难以处理的问题。
例如,电视台系统中有一个抽象类CCTV,该类有一个抽象方法abstract void makeProgram()。现 ...
设计模式学习笔记(十三:原型模式)
- 博客分类:
- JAVA设计模式
1.1概述
用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。这就是原型模式的定义。
在某些情况下,可能不希望反复使用类的构造方法创建许多对象,而是希望使用该类创建一个对象后,以该对象 ...
设计模式学习笔记(二十:享元模式)
- 博客分类:
- JAVA设计模式
1.1概述
运用共享技术有效地支持大量细粒度的对象。这就是享元模式的定义。
一个类中的成员变量表明该类所创建对象所具有的属性,在某些程序设计中可能用一个类创建若干个对象,但是发现这些对象的一个共同特点是它们有一部分属性的取值必须是完全相同的。
例如,一个Car类,其类图如下图一所示:
图一:Car类