框架就是一些类和接口的集合,通过这些类和接口协调来完成一系列的程序实现。

JAVA框架可以分为三层:表示层,业务层和物理层。框架又叫做开发中的半成品,它不能提供整个WEB应用程序的所有东西,但是有了框架,我们就可以集中精力进行业务逻辑的开发而不用去关心它的技术实现以及一些辅助的业务逻辑。

大家熟知的Structs和Spring就是表示层和业务层框架的强力代表。一般的公司面试时看你是否涉及过J2EE的开发,总会考察你有没有这方面框架的认知力。好的框架应当是考虑:稳定、灵活(在某个开发领域,或某个行业来说,不要搞成绝对通用,目前很难) 、容易维护(一致的表现,里面的凡是相同意义的操作都有一致的面孔)、新手容易上手、利于迅速开发N多项目(项目之间知识可以不断积累,通用功能的与项目专用功能分离)。

对于当然首先要理解框架是什么?字面含义就是条条框框组成的一个架子,这个架子怎么理解呢?

1)框架可以这样来理解,如建一座房子,先把房子的梁、柱子建起来,这就是一个房子的框架。至于房子内部怎样,哪里是房间,哪里是客厅,就看设计者。软件也是一样,把一个软件的大概的梁、柱子建起来,就是软件的框架。一个软件半成品,帮你做了一些基础工作,你就可以在这个基础之上,来定制适合你自己的应用。流行的框架非常灵活,以适应不同的需求。打个比方,如果你输入到屏幕上用System.out.println()如果println方法都要自己去实现,那么是不是很恐怖。所以框架在解决大规模的问题上,这些基础工作是必需的。

2)框架就是一颗松树,你只要在上边挂点装饰物和几片小雪花,装几个小电灯,它就可以变成炫目喜庆的圣诞树。

3)框架象相框一样,做好相框,只要往里边放相片,随意你怎么放相片,大的,小的,都可以。 相框是不变的,相片里随你换,如果相框太小放不进相片就是框架没做好啊。

所以这里可以稍微扩展一下,一个框架的复杂程序以及加载东西的多少,是十分关键的。现在就有个别人批评spring框架过大,局限过多。

如果一个项目就是一个学校的话,struts就是开学的时候负责报名接待的部门,来了个学生(请求),他们会根据你的姓名(请求路径)查找你是那个系,那个班的,把你带到相应的地方(action),然后就是那个对应你的组织(action)来处理你了。他的花名册就是配置文件(sturts-config。xml),上面可以配置你的姓名(请求路径),是否验证你身上带没带学费(viladate),把你让谁(request)带到你的组织里去,放你行李的小车(formbean)的编号等等。xml里的struts配置就是保安要验证的信息,看你是不是有这个学校的录取通知书。等你大二大三了,你成了接待人员(action),你只要知道你去组织那些学生(配置struts-config。xml),怎么处理他们(调用那个service方法),着就是struts了。spring 的IOC就是本应该有学校做的招聘工作,交给的猎头公司(控制反转)然后把招聘到的人员交给学校使用。

模式更侧重于框架内部,也就是房间内部各家具之间如何摆放的组合思考方式。

Java的框架是什么意思的更多相关文章

  1. Java集合框架List,Map,Set等全面介绍

    Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I]   +--java.util.ArrayList [C]   +- ...

  2. Java集合框架练习-计算表达式的值

    最近在看<算法>这本书,正好看到一个计算表达式的问题,于是就打算写一下,也正好熟悉一下Java集合框架的使用,大致测试了一下,没啥问题. import java.util.*; /* * ...

  3. Java三大框架 介绍

    三大框架:Struts+hibernate+spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...

  4. 【集合框架】Java集合框架综述

    一.前言 现笔者打算做关于Java集合框架的教程,具体是打算分析Java源码,因为平时在写程序的过程中用Java集合特别频繁,但是对于里面一些具体的原理还没有进行很好的梳理,所以拟从源码的角度去熟悉梳 ...

  5. Java 集合框架

    Java集合框架大致可以分为五个部分:List列表,Set集合.Map映射.迭代器.工具类 List 接口通常表示一个列表(数组.队列.链表 栈),其中的元素 可以重复 的是:ArrayList 和L ...

  6. Java集合框架之map

    Java集合框架之map. Map的主要实现类有HashMap,LinkedHashMap,TreeMap,等等.具体可参阅API文档. 其中HashMap是无序排序. LinkedHashMap是自 ...

  7. 22章、Java集合框架习题

    1.描述Java集合框架.列出接口.便利抽象类和具体类. Java集合框架支持2种容器:(1) 集合(Collection),存储元素集合 (2)图(Map),存储键值对.

  8. Java集合框架实现自定义排序

    Java集合框架针对不同的数据结构提供了多种排序的方法,虽然很多时候我们可以自己实现排序,比如数组等,但是灵活的使用JDK提供的排序方法,可以提高开发效率,而且通常JDK的实现要比自己造的轮子性能更优 ...

  9. (转)Java集合框架:HashMap

    来源:朱小厮 链接:http://blog.csdn.net/u013256816/article/details/50912762 Java集合框架概述 Java集合框架无论是在工作.学习.面试中都 ...

  10. 基于Java Netty框架构建高性能的部标808协议的GPS服务器

    使用Java语言开发一个高质量和高性能的jt808 协议的GPS通信服务器,并不是一件简单容易的事情,开发出来一段程序和能够承受数十万台车载接入是两码事,除去开发部标808协议的固有复杂性和几个月长周 ...

随机推荐

  1. 【[SCOI2010]生成字符串】

    \(n=m\)时候经典的卡特兰 那\(n!=m\)呢,还是按照卡特兰的方式来推 首先总情况数就是\(\binom{n+m}{n}\),在\(n+m\)个里选择\(n\)个\(1\) 显然有不合法的情况 ...

  2. Chrome,本地页面和插件

    今天测试一款Chrome插件,这款插件提供了一些本地页面做测试用,在解决一些技术问题之后,在插件的官网上可以测试成功了,但是在本地页面上测试时Chrome始终会拦截插件,即使在右上角的地址栏中允许该本 ...

  3. C++工程文件夹中的bin和obj文件夹有何用处?(补充多文件结构)

    博主在使用Code::Blocks创建一个工程之后,正准备新建一个头文件,细心的博主发现,在工程文件夹中有两个子文件夹,分别是bin和obj.好奇心驱使下,想知道这两个文件夹用来干嘛的,网上搜了下,整 ...

  4. 【题解】POJ1845 Sumdiv(乘法逆元+约数和)

    POJ1845:http://poj.org/problem?id=1845 思路: AB可以表示成多个质数的幂相乘的形式:AB=(a1n1)*(a2n2)* ...*(amnm) 根据算数基本定理可 ...

  5. Jquery Mobile 常用参数

    data-role  属性值: data-role参数表: page        页面容器,其内部的mobile元素将会继承这个容器上所设置的属性  header     页面标题容器,这个容器内部 ...

  6. AngularJS 控制器函数

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  7. Page 由于代码已经过优化或者本机框架位于调用堆栈之上

    Page.Response.Clear();            Page.Response.Write("<script type=\"text/javascript\& ...

  8. Python基础—13-面向对象及异常处理

    面向对象及异常处理 内置函数 总结:__init__.__del__.__str__.attr系列.item系列.__call__ __str__与__repr__ 使用print/str方法时会自动 ...

  9. GNS3的安装和配置

    一.为什么安装GNS3 简单说来它是dynamips的一个图形前端,相比直接使用dynamips这样的虚拟软件要更容易上手和更具有可操作性.更重要的一点是很多Cisco实验在cisco packet ...

  10. php第二节(变量、常量)

    <?php /** * 类型转换 * 自动转换 数据在运算过程中自动转换 * 空字符串 false * "0" false * null false * 0 false * ...