基于Spring的应用程序的设计和实现(概述)
在前面几个章节中,我们讨论了各种与spring相关的开发主题,包括Spring的应用程序上下文配置,各种DI机制,AOP切面概念,以及Spring如何与不同的数据存取技术相集成。在讨论数据存取的实现时,你可以使用不同的实现模式。比如说,在第八章中,我们讨论了使用JDBC将数据存取逻辑封装在DAO中。在第十章和第十一章,我们用JPA和MyBatis的映射注入机制取代了DAO层。同时我们也提及了领域对象模型(实体类)的设计并且展示了它们的属性和关系是如何映射到数据库结构中的。
在继续的讨论之前,让我们先暂时从编程主题中休息下来讨论一些以Spring为基础的设计和实现。回顾J2EE程序设计思想可以帮助我们更好的理解今后的应用程序架构。
应用程序设计是个很大的主题,我们不打算在这里覆盖到所有的方面。在这一章中,我们只讨论哪些屡试不爽的OOP例子,搞清那些容器的职责以及如何方便的测试与维护。我们将重点关注Spring设计对应用程序的影响,尤其是那些模式和实例,你会发现使用Spring去构建你的程序是如此的简单。也会发现这章的大部分都围绕一个例子,Spring博客的设计方式。除了设计方式外,我们还将讨论怎样才能使用尽可能多的spring技术来实现数据层和service层。
总之,在这章中我们将关注如下几点:
-接口驱动的设计:接口驱动设计是一个传统的OOP最佳例子。当你使用这个模式,程序的主要容器将是以接口为基础而不是类。Java对这种设计概念提供了一流的支持。在这章中我们将笼统的对其进行讨论,并且指出为什么你要这么做。
-构建领域对象模型:在这章中,我们将关注领域对象模型(DOM)的概念,即一组能对领域问题提供抽象模型的集合。通过构建这样的模型,你可以创建一系列包含应用程序数据和行为的抽象模型。
-数据交互层:现在的多数软件都需要与某种持久化技术打交道,主要是关系型数据库。第八到第十一章我们已经讨论了spring对他们的各种支持。在这章中,我们将关注于数据交互层和service层的设计方式。
-构建Service层:程序的service层是指那些业务逻辑被封装的地方。在这章中,我们将看到service层是如何与领域对象模型交互的,并且数据交互层将提供一个一致的接口。我们也进看到在Spring博客的业务需求并且如何将其转换为接口驱动设计。
你应该注意到,这章不会覆盖程序的web层,web层将在17和18章。我们也不会讨论spring博客的service层如何被前端调用,数据验证已经错误管理等等。
下一节:基于Spring的应用程序的设计和实现(接口驱动设计) http://wsjjasper.iteye.com/blog/1570945
分享到:
相关推荐
它使用“约定优于配置”的原则,能够快速启动和运行Spring应用程序。Spring Boot为开发者提供了一系列开箱即用的配置选项,使得我们可以专注于业务逻辑的编写,而不是花费大量时间进行项目配置。 1. **自动配置**: ...
本文档是一篇关于基于微信小程序的点餐系统设计与实现的毕业论文,旨在利用微信小程序这一日益普及的技术,优化餐厅点餐流程,提供便捷的在线点餐服务。论文详细介绍了系统的开发背景、技术选型、需求分析、系统设计...
Spring框架是一个开源的Java平台,它为创建健壮的、易于维护的企业级应用程序提供了一个全面的解决方案。Spring的核心特性包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, ...
1. **Spring框架概述**:Spring是一个开源的Java平台,它简化了Java企业级应用的开发,提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。Spring框架包含多个模块,如Core Container、Data Access/Integration...
1. **Spring概述**:Spring是一个开源的Java平台,它简化了企业级应用程序的开发,通过提供依赖注入(DI)和面向切面编程(AOP)的支持,实现了代码的解耦和模块化。 2. **依赖注入(Dependency Injection, DI)**...
Spring测试模块提供了全面的测试支持,包括对Spring应用程序上下文的加载、AOP代理的处理、事务管理以及对各种测试框架(如JUnit、TestNG)的集成。`org.springframework.test-3.0.2.RELEASE.jar`正是这个模块的实现...
本文主要探讨了一款基于微信小程序的点餐系统的设计与实现,该系统充分利用了Java语言、MySQL数据库以及SSM框架,旨在提升餐饮服务的效率和用户体验。 1. 系统概述 本系统以微信小程序为载体,实现了用户端和管理端...
同时,Spring 应用程序中的对象可以独立于框架本身,实现了非侵入式设计,增强了代码的可复用性和可维护性。 2. **控制反转(IoC)**:IoC 是一种设计模式,Spring 通过反转对象的创建和管理过程来实现。通常,对象...
由于文件中没有提供具体的内容节选,所以以下知识点将基于Spring框架和企业应用开发的一般概念进行阐述。 知识点一:Spring框架概述 Spring是一个开源的Java平台,它最初由Rod Johnson创建,并且现在由Pivotal公司...
13.6.4 Web应用程序中调度器的启动和关闭问题 13.7 小结 第14章 使用OXM进行对象XML映射 14.1 认识XML解析技术 14.1.1 什么是XML 14.1.2 XML的处理技术 14.2 XML处理利器:XStream 14.2.1 XStream概述 14.2.2 快速...
SpringBoot作为Java开发框架的一种,以其简洁、快速启动和易于配置的特点,被广泛应用于各种Web应用程序的开发,包括个人博客系统。本论文将详细阐述如何利用SpringBoot来构建一个高效、稳定且用户友好的个人博客...
2. 分析和总结能力:需要能够分析和总结Spring框架的设计理念和实现机制。 3. 实践和应用能力:需要能够将Spring框架应用于实际项目中,并且能够解决实际问题。 学习Spring源码需要坚持、技巧和实践能力。需要掌握...
8. **Spring Security**:Spring的安全框架,用于实现认证和授权,保护应用程序免受攻击。 9. **源码分析**:通过阅读和分析提供的源码,读者可以深入理解Spring的工作原理,了解如何将理论知识应用于实际项目。 ...
通过以上介绍,我们可以看到Spring框架不仅提供了一个强大而灵活的应用程序开发模型,还为开发者带来了一系列实用的工具和功能,使得Java开发变得更加高效和便捷。对于希望深入了解Spring架构与设计原理的学习者来说...
- **Spring Boot**:Spring Boot简化了Spring应用程序的配置和部署过程,提供了自动配置、内嵌服务器等功能。 以上就是基于“Apress Pro Spring 4th Edition”文件内容所归纳出来的Spring框架相关知识点。通过对...
AwsApplication是一个基于Spring Boot的应用程序,主要用于处理与AWS相关的业务逻辑。该项目包含了用户管理、权限控制、文件上传、问题管理等多个模块,通过RESTful API提供服务。 主要功能 1. 用户管理包括用户...
13.6.4 Web应用程序中调度器的启动和关闭问题 13.7 小结 第14章 使用OXM进行对象XML映射 14.1 认识XML解析技术 14.1.1 什么是XML 14.1.2 XML的处理技术 14.2 XML处理利器:XStream 14.2.1 XStream概述 14.2.2 快速...