开发框架_web开发框架 - CSDN
精华内容
参与话题
  • 目前比较流行的网站开发框架

    万次阅读 2018-09-02 10:43:01
    一、前端框架 1.Pure 地址:http://purecss.org/layouts/ 描述:Pure精心设计,只为可以在任何Web项目中使用。 说明:Pure是一个轻量级的模块化框架 - 用纯CSS编写 - 包括可以根据需要一起使用或分开使用的组件。...

    一、前端框架
    1.Pure

    描述:Pure精心设计,只为可以在任何Web项目中使用。
    说明:Pure是一个轻量级的模块化框架 - 用纯CSS编写 - 包括可以根据需要一起使用或分开使用的组件。Pure只为项目提供纯粹的样式,对于那些不需要全功能框架只需有特定组件包含工作中的人来说,Pure是理想之选。
    

    2.bootstrap

    描述:简洁、直观、强悍的前端开发框架,让web开发更迅速、简单。
    说明:Bootstrap的广泛流行是它的优势所在。在技术上,它不一定比其它框架更好,但它提供了比其它框架更多的资源(文章和教程、第三方插件和扩展、主题构建器等)。
    

    3.EasyUI

    描述:easyui是一种基于jQuery的用户界面插件集合。
    说明:使用easyui你不需要写很多代码,你只需要通过编写一些简单HTML标记,就可以定义用户界面;easyui是个完美支持HTML5网页的完整框架;easyui节省您网页开发的时间和规模。
    

    4.Ant Design

    描述:一个 UI 设计语言,一套提炼和应用于企业级后台产品的交互语言和视觉体系。
    说明:Ant Design 是一个致力于提升用户和设计者使用体验的平台设计语言。它模糊了产品经理、交互设计师、视觉设计师、前端工程师、开发工程师等角色边界,将进行 UE 设计和 UI 设计人员统称为设计者,利用统一的规范进行设计赋能,全面提高中台产品体验和研发效率。
    

    5.Foundation

    描述:Foundation 用于开发响应式的 HTML, CSS and JavaScript 框架,Foundation 是一个易用、强大而且灵活的框架,用于构建基于任何设备上的 Web 应用。
    说明: Foundation框架是包含常用一些结构体、枚举、类的一个框架,目的是使开发更快捷
    

    二、后端框架
    SSH框架

    描述:SSH是JavaEE中三种框架(Struts+Spring+Hibernate)的集成框架,是目前比较流行的一种Java Web开源框架
    

    struts五大组件介绍

    1. ActionServlet
    Struts中的最大控制器,是Struts框架的入口,并且封装了Servlet,被配置在web.xml当中
    2. Action
    小控制器,处理具体的业务逻辑
    3. ActionForm
    和页面表单对应的一个特殊javabean,负责在页面和控制器之间传递数据。同时还提供了集中验证方法
    4. ActionMapping
    用来从Struts的配置文件中读取信息
    5. ActionForward
    页面之间的跳转

    Spring特征

    1. Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。
    2. 强大的基于 JavaBeans的采用控制反转(Inversion of Control,IoC)原则的配置管理,使得应用程序的组件更加快捷简易。
    3. 一个可用于从 applet 到 Java EE 等不同运行环境的核心 Bean 工厂。
    4. 数据库事务的一般化抽象层,允许宣告式(Declarative)事务管理器,简化事务的划分使之与底层无关。
    5. 内建的针对 JTA 和 单个 JDBC 数据源的一般化策略,使 Spring 的事务支持不要求 Java EE 环境,这与一般的 JTA 或者 EJB CMT 相反。
    6. JDBC 抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码), 简化了错误处理, 大大减少了程序员的编码量. 再次利用JDBC时,你无需再写出另一个 ‘终止’ (finally) 模块. 并且面向JDBC的异常与Spring 通用数据访问对象(Data Access Object) 异常等级相一致.
    7. 以资源容器,DAO 实现和事务策略等形式与 Hibernate,JDO 和 iBATIS SQL Maps 集成。利用众多的反转控制方便特性来全面支持, 解决了许多典型的Hibernate集成问题. 所有这些全部遵从Spring通用事务处理和通用数据访问对象异常等级规范.
    8. 灵活的基于核心 Spring 功能的 MVC 网页应用程序框架。开发者通过策略接口将拥有对该框架的高度控制,因而该框架将适应于多种呈现(View)技术,例如 JSP,FreeMarker,Velocity,Tiles,iText 以及 POI。值得注意的是,Spring 中间层可以轻易地结合于任何基于 MVC 框架的网页层,例如 Struts,WebWork,或 Tapestry。

    Hibernate特征

    1. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
    2. 将对数据库的操作转换为对Java对象的操作,从而简化开发。通过修改一个“持久化”对象的属性从而修改数据库表中对应的记录数据。
    3. 提供线程和进程两个级别的缓存提升应用程序性能。
    4. 有丰富的映射方式将Java对象之间的关系转换为数据库表之间的关系。
    5. 屏蔽不同数据库实现之间的差异。在Hibernate中只需要通过“方言”的形式指定当前使用的数据库,就可以根据底层数据库的实际情况生成适合的SQL语句。
      非侵入式:Hibernate不要求持久化类实现任何接口或继承任何类,POJO即可。
    展开全文
  • Java主流开发框架

    万次阅读 2018-11-26 16:02:01
    Spring框架 Spring框架是一个分层架构,由7个定义良好的模块组成。Spring框架构建在核心容器之上,核心容器定义了创建、配置和管理bean的方式,如下图所示: Spring框架的7个模块组成Spring框架的每个模块(或组件...

    Spring框架

    Spring框架是一个分层架构,由7个定义良好的模块组成。Spring框架构建在核心容器之上,核心容器定义了创建、配置和管理bean的方式,如下图所示:

    Spring框架的7个模块

    组成Spring框架的每个模块(或组件)都可以单独存在,或者与其他一个或对个模块联合实现。每个模块的功能如下:

    • 核心容器(Spring Core):核心容器提供Spring框架的基本功能。核心容器的主要组件是BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
    • Spring 上下文(Spring Context):Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。
    • Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。
    • Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。
    • Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
    • Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
    • Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

           Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。

           控制反转模式(也称作依赖性介入)的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器 (在 Spring 框架中是 IOC 容器) 负责将这些联系在一起。

           面向方面的编程,即 AOP,是一种编程技术,它允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化。AOP 的核心构造是方面,它将那些影响多个类的行为封装到可重用的模块中。AOP 的功能完全集成到了 Spring 事务管理、日志和其他各种特性的上下文中。

    BeanFactory  支持两个对象模型。

    • 单态 模型提供了具有特定名称的对象的共享实例,可以在查询时对其进行检索。Singleton 是默认的也是最常用的对象模型。对于无状态服务对象很理想。
    • 原型 模型确保每次检索都会创建单独的对象。在每个用户都需要自己的对象时,原型模型最适合。

    SpringMVC框架

           MVC(Model-View-Control):Control层属于框架部分,主要完成的工作是:封装web请求为一个数据对象、调用业务逻辑层来处理数据对象、返回处理数据结构以及相应的师徒给客户端。

           SpringMVC 和 Struts2 都是表现层的框架,是 Spring 框架的一部分,Spring 框架中 Control 层的核心是DispatcherServlet,它的作用是将请求分发给不同的后端处理器。

            Spring 的 Control 层框架使用了后端控制器来映射处理器和视图解析器来共同完成 Control 层框架的主要工作。并且 spring 的 Control 层框架还真正地把业务层处理的数据结果和相应的视图拼成一个对象,即 ModelAndView 对象。

     SpringMVC框架处理流程

          

     SpringMVC框架访问流程

           

    MyBatis框架

           MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

    图片来源于《《深入理解mybatis原理》 MyBatis的架构设计以及实例分析》

    从MyBatis代码实现的角度来看,MyBatis的主要的核心部件有以下几个:

    • SqlSession            作为MyBatis工作的主要顶层API,表示和数据库交互的会话,完成必要数据库增删改查功能
    • Executor              MyBatis执行器,是MyBatis 调度的核心,负责SQL语句的生成和查询缓存的维护
    • StatementHandler   封装了JDBC Statement操作,负责对JDBC statement 的操作,如设置参数、将Statement结果集转换成List集合。
    • ParameterHandler   负责对用户传递的参数转换成JDBC Statement 所需要的参数,
    • ResultSetHandler    负责将JDBC返回的ResultSet结果集对象转换成List类型的集合;
    • TypeHandler          负责java数据类型和jdbc数据类型之间的映射和转换
    • MappedStatement   MappedStatement维护了一条<select|update|delete|insert>节点的封装, 
    • SqlSource            负责根据用户传递的parameterObject,动态地生成SQL语句,将信息封装到BoundSql对象中,并返回
    • BoundSql             表示动态生成的SQL语句以及相应的参数信息
    • Configuration        MyBatis所有的配置信息都维持在Configuration对象之中。

    MyBatis层次结构: 

    图片来源于《《深入理解mybatis原理》 MyBatis的架构设计以及实例分析》

    Hibernate框架

            JDBC 代表 Java Database Connectivity ,它是提供了一组 Java API 来访问关系数据库的 Java 程序。这些 Java APIs 可以使 Java 应用程序执行 SQL 语句,能够与任何符合 SQL 规范的数据库进行交互。

           

    • Hibernate框架是应用在JavaEE三层结构中的dao层框架
    • 使用Hibernate框架在dao层里面做对数据库的增删改查操作。Hibernate框架底层是JDBC,使用Hibernate框架对JDBC轻量级的封装,可以不需要写复杂的JBDC代码
    • Hibernate框架是开源的,轻量级的框架(Hibernate框架不需要依赖其他东西就可以直接使用)

    Hibernate 优势

    • Hibernate 使用 XML 文件来处理映射 Java 类别到数据库表格中,并且不用编写任何代码。
    • 为在数据库中直接储存和检索 Java 对象提供简单的 APIs。
    • 如果在数据库中或任何其它表格中出现变化,那么仅需要改变 XML 文件属性。
    • 抽象不熟悉的 SQL 类型,并为我们提供工作中所熟悉的 Java 对象。
    • Hibernate 不需要应用程序服务器来操作。
    • 操控你数据库中对象复杂的关联。
    • 最小化与访问数据库的智能提取策略。
    • 提供简单的数据询问。

    Hibernate应用程序体系结构图

           

    配置对象
           配置对象是你在任何 Hibernate 应用程序中创造的第一个 Hibernate 对象,并且经常只在应用程序初始化期间创造。它代表了 Hibernate 所需一个配置或属性文件。配置对象提供了两种基础组件。
    数据库连接:由 Hibernate 支持的一个或多个配置文件处理。这些文件是 hibernate.properties 和 hibernate.cfg.xml。
    类映射设置:这个组件创造了 Java 类和数据库表格之间的联系。

    • SessionFactory 对象:配置对象被用于创造一个 SessionFactory 对象,使用提供的配置文件为应用程序依次配置 Hibernate,并允许实例化一个会话对象。SessionFactory 是一个线程安全对象并由应用程序所有的线程所使用。SessionFactory 是一个重量级对象所以通常它都是在应用程序启动时创造然后留存为以后使用。每个数据库需要一个 SessionFactory 对象使用一个单独的配置文件。所以如果你使用多种数据库那么你要创造多种 SessionFactory 对象。
    • Session 对象:一个会话被用于与数据库的物理连接。Session 对象是轻量级的,并被设计为每次实例化都需要与数据库的交互。持久对象通过 Session 对象保存和检索。Session 对象不应该长时间保持开启状态因为它们通常情况下并非线程安全,并且它们应该按照所需创造和销毁。
    • Transaction 对象:一个事务代表了与数据库工作的一个单元并且大部分 RDBMS 支持事务功能。在 Hibernate 中事务由底层事务管理器和事务(来自 JDBC 或者 JTA)处理。这是一个选择性对象,Hibernate 应用程序可能不选择使用这个接口,而是在自己应用程序代码中管理事务。
    • Query 对象:Query 对象使用 SQL 或者 Hibernate 查询语言(HQL)字符串在数据库中来检索数据并创造对象。一个查询的实例被用于连结查询参数,限制由查询返回的结果数量,并最终执行查询。
    • Criteria 对象:Criteria 对象被用于创造和执行面向规则查询的对象来检索对象。
    展开全文
  • 什么是快速开发框架

    千次阅读 2018-09-18 16:52:08
    做为一个程序员,在开发的过程中会发现,有框架同无框架,做起事来是完全不同的概念,关系到开发的效率、程序的健壮、性能、团队协作、后续功能维护、扩展......等方方面面的事情。很多朋友在学习搭建自己的框架,很...

     

    前言

    做为一个程序员,在开发的过程中会发现,有框架同无框架,做起事来是完全不同的概念,关系到开发的效率、程序的健壮、性能、团队协作、后续功能维护、扩展......等方方面面的事情。很多朋友在学习搭建自己的框架,很多公司也在创建或使用自己的框架,网上开源的框架多如牛毛,每年新上线的各种框架也不知多少。而不停的重复造轮子,也让更多的朋友鸟枪换炮,越跑越快,工作效率越来越高。那么什么是快速开发框架呢?

    什么是快速开发框架

       快速开发框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法; 另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。

       可以说,一个快速开发框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要快速开发框架。

       应用快速开发框架指的是实现了某应用领域通用完备功能(除去特殊应用的部分)的底层服务。使用这种框架的编程人员可以在一个通用功能已经实现的基础上开始具体的系统开发。框架提供了所有应用期望的默认行为的类集合。具体的应用通过重写子类(该子类属于框架的默认行为)或组装对象来支持应用专用的行为。

      快速开发框架,即。其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别人搭好的舞台,你来做表演。而且,快速开发框架一般是成熟的,不断升级更新的软件

        简单来讲,软件开发框架可以理解为我们起楼房时,用梁+柱子+承重墙做起来的钢筋混凝土结构框架。而实现的软件功能,也就像在这个快速开发框架结构中所要实现的不同类型、功能的房子,比如停车场、商场、酒店、饭店、商住房......

      功能强大,结构扎实的框架,可承载的类型就更多,适用性就更强。

    不论是什么开发框架,都是为现实不同的业务功能而创建的。好的快速开发框架能提高企业的竞争能力,包括降低开发成本、提高产品质量、改善客户满意程度、控制开发进度等。同时,快速开发框架也是某一领域为实现某种业务的知识积累,它是一种持续性的活动,随着特定业务功能实现而创建,且跳出软件开发周期而存活。一个成熟的快速开发框架,不单单只是代码而已,它除了将某一领域业务的基础功能以代码的方式实现外,还必须编写对应的文档、模型、流程图、数据字典、开发使用说明.....等一系列的文档来支撑,这样的快速开发框架才更加成熟和健壮。

    为什么要使用快速开发框架

      软件系统随着业务的发展,变得越来越复杂,不同领域的业务所涉及到的知识、内容、问题非常非常多。如果每次都从头开发,那都是一个很漫长的事情,且并不一定能将它做好。团队协作开发时,没有了统一标准,大家各写各的,同样的重复的功能到处都是。由于没有统一调用规范,很难看懂别人写的代码,出现Bug或二次开发维护时,根本无从下手。(无框架不堪回首的黑暗日子请看前面章节的讲述)

    而一个成熟的快速开发框架,它是模板化的代码,它会帮我们实现很多基础性的功能,我们只需要专心的实现所需要的业务逻辑就可以了。而很多底层功能操作,就可以完完全全不用做太多的考虑,快速开发框架已帮我们实现了。这样的话,整个团队的开发效率可想而知。另外对于团队成员的变动,也不用太过担心,快速开发框架的代码规范让我们能轻松的看懂其他开发人员所写的代码。

    搭建快速开发框架时,我们要如何定位

      是不是快速开发框架的扩展性、可移值性、功能越强大就越好呢?

      好的快速开发框架是相对的,它都有自己特定的应用领域,合适才是最好。

      个人觉得在实际开发中要根据具体情况来看的,因为功能越全面它的复杂度就越大,所需要的开发人员能力和技能就会要求更高,付出的成本也就最大。比如做一个还未发展起来的电商网就想 将系统做成像京东那样,直接用京东分模块分布式的框架来开发,那得怎么来组建这个团队?更不用说开发成本了。就算团队有能力做到,也没有那个必要这么去做,因为从成本预算和开发周期等方面来看,得不尝失,更多的可能项目还未完成公司就给拖垮了。

     一般来说,一个中小型项目,1到5人左右的开发团队,使用一般的三层结构就可以了,不用去细想框架要分三层还是五层,每个层之间要怎么实现解耦,要用什么设计模式.....因为当今飞速发展的互联网时代,快才是王道,做一个中小型项目能用一周完成的,绝不能拖了一个月还未做完。人工与时间成本才是重点中 的重点,唯有快才能更好的生存下来并壮大。至于扩展功能、接口、分布式、并发、大数据......等等问题,实际上过早考虑太多并不是好事情,有经验的程序员在写这个快速开发框架时早已留下扩展方案或思路,而没到这一层次的开发人员你想再多也可能想不明白,还不如先做出来积累一定经验后再慢慢学习,慢慢升级框架。

      当然也不是说设计框架时不用考虑高内聚低耦合,而是要根据自己的能力与经验来设计出自己能把控的框架出来。因为框架不是开发出来后就不再变动,它也需要不停的进行升级,将你所学到的新知识新技术融合到框架中,使它的功能更加强大,更加健壮。而对于自己不能把控的快速开发框架,在团队协作开发和上生产环境后,你就发现有一大堆的坑等着你去填埋,这种框架只能拿来先练练手,有空再慢慢完善。

    快速开发框架通过小步快跑,不断的迭代升级来慢慢扩展的,当项目上生产环境后,根据新的需求和所碰到的问题,去不停的调整,最终越来越强大。所有框架都是从1.0版本到2.0、3.0......发展而来,而不是直接跳过最初版本到最终成熟版本。

     所以说我们在创建一个框架时,必须根据我们当前个人的技术能力、团队成功技术水平、时间、投入成本、项目现状(规模与需求复杂程度)、以后的发展前景来决定所要开发的框架的最终设计方案。当然也不是说不能一步到位,心有多大世界就有多大,只要个人能力和团队能力配得上,老板资金成本雄厚,时间充足,直接上大项目使用超级框架也完全没有问题。

    快速开发框架的主要特点和要求

    1、代码模板化

    快速开发框架一般都有统一的代码风格,同一分层的不同类代码,都是大同小异的模板化结构,方便使用模板工具统一生成,减少大量重复代码的编写。在学习时通常只要理解某一层有代表性的一个类,就等于了解了同一层的其他大部分类结构和功能,容易上手。团队中不同的人员采用类同的调用风格进行编码,很大程度提高了代码的可读性,方便维护与管理。

     

    2、重用

    快速开发框架一般层次清晰,不同开发人员开发时都会根据具体功能放到相同的位置,加上配合相应的开发文档,代码重用会非常高,想要调用什么功能直接进对应的位置去查找相关函数,而不是每个开发人员各自编写一套相同的方法。

    3、高内聚(封装)

    快速开发框架中的功能会实现高内聚,开发人员将各种需要的功能封装在不同的层中,给大家调用,而大家在调用时不需要清楚这些方法里面是如果实现的,只需要关注输出的结果是否是自己想要的就可以了。

    4、规范

    快速开发框架开发时,必须根据严格执行代码开发规范要求,做好命名、注释、架构分层、编码、文档编写等规范要求。因为你开发出来的框架并不一定只有你自己在用,要让别人更加容易理解与掌握,这些内容是非常重要的。

    5、可扩展

       快速开发框架时必须要考虑可扩展性,当业务逻辑更加复杂、数量记录量爆增、并发量增大时,能否通过一些小的调整就能适应?还是需要将整个框架推倒重新开发?当然对于中小型项目框架,也不必考虑太多这些内容,当个人能力和经验足够时水到渠成,自然就会注意到很多开发细节。

    6、可维护

      成熟的快速开发框架,对于二次开发或现有功能的维护来说,操作上应该都是非常方便的。比如项目要添加、修改或删除一个字段或相关功能,只需要简单的操作,十来分钟或不用花太多的工夫就可以搞定。新增一个数据表和对应的功能,也可以快速的完成。功能的变动修改,不会对系统产生不利的影响。代码不存在硬编码等等,保证软件开发的生产效率和质量。

    7、协作开发

      有了快速开发框架,我们才能组织大大小小的团队更好的进行协作开发,成熟的框架将大大减轻项目开发的难度,加快开发速度,降低开发费用,减轻维护难度。

    8、通用性

    同一行业或领域的快速开发框架,功能都是大同小异的,不用做太大的改动就可以应用到类似的项目中。在快速开发框架中,我们一般都会实现一些同质化的基础功能,比如权限管理、角色管理、菜单管理、日志管理、异常处理......或该行业中所要使用到的通用功能,使框架能应用到某一行业或领域中,而不是只针对某公司某业务而设定(当然也肯定存在那些特定功能的应用框架,这只是非常少的特殊情况,不在我们的考虑范围)。

    谢谢大家,一路走来数个年头,感谢快速开发框架的支持者与使用者,大家可以通过下面的网址了解更多

    官方网址:http://www.learun.cn/

    免费入口体验网址:http://www.learun.cn/Home/VerificationFor

    展开全文
  • 常见开发框架

    千次阅读 2018-04-12 21:27:02
    Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 A.控制反转(IOC)是什么呢? IOC:控制反转也叫依赖注入。利用了工厂模式将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,...

    一、Spring

    Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。

    A.控制反转(IOC)是什么呢?

    IOC:控制反转也叫依赖注入。利用了工厂模式将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter方法来注入,而不需要你在A里面new这些bean了。
    [注意]:面试的时候,如果有条件,画图,这样更加显得你懂了

    B.面向切面(AOP)又是什么呢?

    首先,需要说明的一点,AOP只是Spring的特性,它就像OOP一样是一种编程思想,并不是某一种技术,AOP可以说是对OOP的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能

    日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。在OOP设计中,它导致了大量代码的重复,而不利于各个模块的重用。将程序中的交叉业务逻辑(比如安全,日志,事务等),封装成一个切面,然后注入到目标对象(具体业务逻辑)中去。
    实现AOP的技术,主要分为两大类:一是采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;二是采用静态织入的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码。

    简单点解释,比方说你想在你的biz层所有类中都加上一个打印‘你好,AOP’的功能这你经可以用aop思想来做,你先写个类写个方法,方法经实现打印‘你好,AOP’让后你Ioc这个类 ref=“biz.*”让每个类都注入。

    二、Spring MVC

    Spring MVC属于Spring Framework的后续产品,已经融合在Spring Web Flow里面,它原生支持的Spring特性,让开发变得非常简单规范。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

    三、MyBatis

    MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。可以这么理解,MyBatis是一个用来帮你管理数据增删改查的框架。

    四、SSH集合框架

    SSH是 struts+spring+hibernate的一个集成框架,是目前比较流行的一种Web应用程序开源框架。
    集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层
    使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持;Spring做管理,管理struts和hibernate。

    表示层中,首先通过JSP页面实现交互界面,负责接收请求(Request)和传送响应(Response);Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理
    业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。
    而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。

    三、SSM集合框架

    SSM框架,是Spring + Spring MVC + MyBatis的缩写,这个是继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级应用系统。

    展开全文
  • 1、项目名称:分布式敏捷开发系统架构   项目简介:基于 Spring + SpringMVC + Mybatis 分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录)、内容管理、支付中心、用户管理(支持...
  • 成熟的框架介绍 根据RebelLabs,也是在线Java用户组(虚拟JUG)的媒体盟友所进行的调查,2018年最佳Java框架的阵容如下: 这样下来就是SpringMVC+Spring+MyBatis的整合使用。  这里可以学习慕课网的:  搞定...
  • 分享一款免费体验的快速开发框架,可以学习用! 众所周知,一个好的软件开发框架可以有效的加速开发进程,提高开发效率。 为什么这么说呢?首先,框架第一目的是为加速,当然,还要兼顾框架的稳定性。不同开发用户...
  • 后端开发框架

    万次阅读 2017-10-22 03:35:32
    Python目前主流的应用包括:Web开发、图形界面开发、系统网络运维、网络编程、科学数字计算、3D游戏开发等。 Python的web框架很多很多,百花齐放。 个人接触最多的是这四个大佬:Django、Flask、Tornado、Aiohttp...
  • 快速开发一个 Web 框架

    千次阅读 2018-07-28 23:30:01
    怎么使用 Node.js 开发一个属于自己的 Web 框架呢?下面我将带领大家在 Koa2 的基础上开发一款初步具备 Web 功能的框架。 本场 Chat 主要内容: Web 框架需要那些功能。 完成一个简单的框架雏形。 添砖加瓦,构成一...
  • jeeplus快速开发框架

    万次阅读 2016-08-24 10:42:33
    刚找了份新工作,本来想走前端开发路线的,新项目算是有接触,但是没人带,一切都得自己学,而且岗位工作是研发经理,目前却是只有我一个,正在思考自己能力是够能胜任,考虑是不是要继续折腾了。工作不好找,换行更...
  • C#.NET NFine快速开发框架_V1.1 程序

    万次下载 热门讨论 2016-08-20 00:31:12
    NFine 是基于 C# 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展,让Web开发更迅速、简单。能解决60%重复工作。为您节约更多时间,去陪恋人、家人和朋友。...
  • 本课程把我们公司团队的自主研发一套PHP开发框架进行简化和适应性修改后,奉献给大家。...课程学完后,整个课件源代码就是一个完整的中型web前端开发框架。大家可以任意复制、学习、修改或占为己有
  • 在十年前,没有人会想到互联网会发展成今天这个样子,同样,也没有人料到软件开发行业也会经历如此大的巨变,在开发这一行业,停下学习就等于死亡并不是危言耸听,不关注行业未来发展趋势的人可能错过了第一个十年...
  • Android 快速开发框架:推荐10个框架

    万次阅读 多人点赞 2017-02-09 15:45:30
    Afinal是一个Android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载...
  • 跨多平台开发框架03. 移动端混合开发框架04. 前端开发框架05. 附录 01. 概述 作为前端开发者,各种框架的层出不穷,促使我们要不断学习才能防止落后,但是我们不可能做到每个框架都有学习的时间,我们只需要掌握...
  • Winform开发框架之框架演化

    千次阅读 2018-09-15 18:12:14
    国庆去了一趟北京,回来一直忙着各种各样的事情,有公司的,有个人的,就没停过来,所以很久没有写博客了,写博客要有一个好的心情及一个好的思路,否则宁愿不写,这是我的准则。虽然这段时间没有写博客分享各种经验
  • 几款移动跨平台App开发框架比较

    万次阅读 2019-04-03 16:34:23
    整理目前流行的跨平台WebApp开发技术的特点,仅供参考。 每个框架几乎都包含以下特性: 使用 HTML5 + CSS + JavaScript 开发; 跨平台重用代码; 丰富的UI库; 提供访问设备原生API的 JavaScript API 包装器; ...
  • web开发框架技术有哪些?

    千次阅读 2018-11-07 16:07:30
    如果你是做Web开发的,Web框架一定会很熟悉,框架是Web架构开发中必不可少的工具,不仅可以提高开发效率,还能让开发项目更成熟,并且可以提升代码的可再用性,Web框架开发离不开相应的开发语言,以下是常用的Web...
  • 十大web前端开发框架

    万次阅读 2017-04-23 14:40:30
    前端开发框架有哪些 一个前端开发框架其实就是一系列产品化的HTML/CSS/JavaScript组件的集合,我们可以在设计中使用它们。前端开发框架有很多,其中有一些写得很棒。为了大家的使用便利,下文列举了目前最强大...
  • webapp开发框架

    万次阅读 2017-11-13 14:29:53
    介绍几个移动web app开发框架     jQuery Mobile  jQuery Mobile框架能够帮助你快速开发出支持多种移动设备的Mobile应用用户界面。jQuery Mobile最新版本是1.4.0,默认主题采用扁平化设计风格。jQuery ...
1 2 3 4 5 ... 20
收藏数 1,372,828
精华内容 549,131
关键字:

开发框架