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

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. Hive创建外部表以及分区

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/sheismylife/article/details/27874943 创建带分区的外部表 创建外部 ...

  2. 【[APIO2012]派遣】

    题目 直接线段树合并就好了 之后在线段树上二分贪心选取金额较少的 如果是左偏树的话就开一个大根堆,根和子树顺次合并,合并之后堆内所有元素总和如果大于\(m\)就删除堆顶,由于每个元素只会被删除一次,所 ...

  3. Zookeep启动异常:Error contacting service. It is probably not running.

    异常提示: [root@hadoop bin]# ./zkServer.sh status JMX enabled by default Using config: /usr/local/zk/bin ...

  4. 【洛谷P1582】倒水

    倒水 题目链接 显然,2^x个杯子里的水可以倒在一个杯子里 所以我们可以贪心地每次将N中最大的2^x减掉 减k次(若中途已经为0,直接输出0) 若大于0,用最小的比N大的2^x减剩下的N,即为答案 # ...

  5. [LuoguP1111]修复公路

    [LuoguP1111]修复公路 题目描述: A地区在地震过后,链接所有村庄的公路都损坏了,而导致无法通车,政府派人修复这些公路. 给出A地区的N村庄数和M公路数,并且对于每一个公路给出其链接的两个村 ...

  6. 12 个强大的 Chrome 插件扩展

    Chrome功能强大,也得益于其拥有丰富的扩展资源库.Chrome Web Store里有各种各样的插件,可以满足你使用Chrome时的各种要求.和Firefox一样,Chrome的扩展非常容易安装, ...

  7. vue2.0移除或更改的一些东西

    一.vue2.0移除了$index和$key 虽然说现在很多文章说他们的代码是vue2.0版本的,但是有一些仔细一看,发现并不全是2.0版本,有些语法还是1.0的版本,比如这个$index,$key, ...

  8. Django-rest-framework(四)router

    在上一节viewsets中,我们提到了route的方式使用,在这一节,我们将仔细介绍drf 的router机制.简单来说,router的作用就是将viewset对象的url映射关系提取出来. 简单使用 ...

  9. windows平台下获取网卡MAC地址、硬盘序列号、主板序列号、CPU ID、BIOS序列号

    转自http://blog.csdn.net/jhqin/article/details/5548656,如有侵权,请联系本人删除,谢谢!! 头文件:WMI_DeviceQuery.h /* ---- ...

  10. 前行记录 - NOIP2018游记

    NOIP2018游记 - 前行记录 NOIP2018 完跪……滚回学校考半期 QwQ 这篇不是题解 awa ,题解之后会发布的,毕竟我还没有AC呢 又及……G2020 陌路笙歌 - 再见(╯▽╰) 感 ...