- 浏览: 37121 次
- 性别:
- 来自: 北京
最新评论
-
wenjinglian:
哥们不错
07 使用Maven进行单元测试
文章列表
一、服务端web.xml:
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>allowGetForSafariButMakeForgeryEasier</param-name>
<param-value>true</p ...
一、模式是什么?
在某种环境下对某个问题的答案
。这里有三个关键字:环境、问题和答案。当然只有那些重复出现的典型问题才有研究的价值。
二、模式的分类
1.创建模式
创建模式是对类的实例化过程的抽象。
2.结构模式
结构模式描述如何将类或对象结合在一起形成更大的结构。
3.行为模式
行为模式是对不同对象之间划分责任和算法的抽象化。
一、什么是迪米特法则?每个软件实体对其他的实体只有最少的了解,而且仅限于那些与本实体密切相关的软件实体
。
也可说成:只与直接的朋友通信
。
二、狭义迪米特法则
如果两个类不必彼此直接通信,那么 ...
一、什么是合成/聚合复用原则?
尽量使用合成/聚合,而不是使用继承。
二、两种基本复用类型
面向对象的设计里,复用已有的设计和实现有两种方式,一是继承,二是合成/聚合。使用继承复用有两个缺点:
(1)超类的实现发生了改变,会影响到子类。
(2)从超类继承而来的实现是静态的,不可能在运行时发生改变,不够灵活。
由于这些缺点,推荐使用合成/聚合。
一、什么是接口隔离原则?
使用多个专门的接口比使用单一的总接口要好。
二、接口隔离原则详解
“接口”这个词有两个意思,一是指Java语言中的interface语言结构;另一个就是一个类型的所有方法特性的集合。
对于第一种意思,接口隔离原则讲的是提供必要的接口,需要什么,提供什么。
对于第二种意思,每个接口只负责一种责任。
一、什么是依赖倒转原则?抽象不应当依赖于细节;细节应当依赖于抽象
。
或者说:要针对接口编程,不要针对实现编程
。
二、为什么叫做依赖倒转原则?
传统的过程性系统设计倾向于使高层次的模块依赖于低层次的模块;抽象层次依赖于具体层次。依赖倒转原则就是要把这种依赖关系倒转。
抽象层包含的是系统的商务逻辑和宏观的、对整个系统来说最重要的战略性决定,是必然性的实现;而具体层次则含有一些与实现有关的算法和逻辑,以及战术性的决定,带有相关大的偶然性。
战略决定战术!也就是具体层次依赖于抽象层。
三、依赖倒转原则的优缺点
依赖倒转原则为了避免具体类的直接引用,很可能要产 ...
一、什么是里氏代换原则? 一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且它根本不能察觉出基类对象和子类对象的区别
。
这条原则用来判断两个类之间是否是父子关系。如果不满足里氏代换原则,那么使用继承肯定有问题。
一、什么是开-闭原则?
一个软件实体应当对扩展开放,对修改关闭。
也就是说,在设计一个模块时,应当使这个模块可在不被修改的前提下被扩展。换言之,就是在不必修改原有代码的情况下给模块添加新行为。
开-闭原则是面向对象设计最核心的原则。
二、怎样做到开-闭原则?
关键是抽象化。可给系统定义出一个不再更改的抽象设计,然后在此抽象设计的基础上可提供任意数量的实现。
抽象层不需要修改,从而满足了“对修改关闭”;可添加新的具体实现来添加新行为,因此满足了“对扩展开放”。
开闭原则从另一个角度讲述,就是“
对可变性的封装原则
”。考虑 ...
面向对象的软件设计的两个核心要素就是软件的可维护性和可复用性。在支持可维护性的同时,提高系统的复用性。
一、软件系统的可维护性
软件系统的可维护性具体体现在三个目标上:
可扩展性 新的功能可很容易地加入到系统中
灵活性 允许代码的修改平稳发生
可插入性 可很容易地将一个模块抽出去,然后用另一个实现了同样接口的模块代替。
二、软件系统的可复用性
1.软件复用的好处
软件复用有三大好处:
提高生产效率
提高软件质量
改善系统的可维护性
2 ...
1.内联
a inner join b on a.id=b.id
查两张表都有的id记录。
2.左外联
a left join b on a.id=b.id
只要a表有,而b可没有对应的记录。此时b表中的所有字段用null代替。
3.右外联
a right join b on a.id=b.id
和左外联相反,只要b表有,a表可没有对应的记录。
4.全外联
a full join b on a.id=b.id
a表或b表中存在都可。
Shapefile格式
- 博客分类:
- GIS
ESRI Shapefile是GIS中最常用的数据格式之一。但Shapefile格式并不是一个公开标准。
一个完整的Shapefile数据实际上最少包含3个独立却相互关联的文件。
shp 存储矢量几何数据。Shapefile的地理数据必须是同一类型的。
shx 索引文件。.shp文件中和每一条记录在.shx中都有一条对应的条目,它记录着偏移量和记录长度。
dbf 包含所有的非空间属性。
prj 可靠,数据投影。
为了构建的灵活性, Maven支持属性、资源过滤和Profile。
一、属性1.属性的引用属性的引用很简单,如:${属性名}
2.属性的分类(1)内置属性:常用的内置属性有:${basedir} 表示项目根目录 ${version} 表示项目版本
(2)POM属性用户可使用该类属性引用POM文件中的对应元素的值。如:${project.artifacctId}就对应了<project><artifactId>元素的值。
(3)自定义属性用户可在<properties>元素下自定义Maven属性,如:
<pro ...
一、创建web项目可以使用maven-archetype-webapp来创建一个最简单的web应用。
二、web项目配置
<modelVersion>4.0.0</modelVersion>
<groupId>com.test</groupId>
<artifactId>demo</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<dependenc ...