Java EE了解
- Java EE是什么
- 学习Java各种框架之前,有必要对Java EE有基本的了解,方便理解各种框架兴起的原因(为什么要用这个框架,而不用JavaEE中相应的东西).
- Java平台企业版(Java Platform Enterprise Edition),是Sun公司为企业级应用推出的标准平台.
- 分层模型
- 分层结构图

- 组件
- Java EE是一系列技术标准所组成的平台
- Applet - Java Applet
- EJB - 企业级JavaBean(Enterprise Java Beans)
- JAAS - Java Authentication and Authorization Service
- JACC - J2EE Authorization Contract for Containers
- JAF - Java Beans Activation Framework
- JAX-RPC - Java API for XML-Based Remote Procedure Calls
- JAX-WS - Java API for XML Web Services
- JAXM - Java API for XML Messaging
- JAXP - Java XML解析API(Java API for XML Processing)
- JAXR - Java API for XML Registries
- JCA - J2EE连接器架构(J2EE Connector Architecture)
- JDBC - Java数据库联接(Java Database Connectivity)
- JMS - Java消息服务(Java Message Service)
- JMX - Java Management
- JNDI - Java名称与目录接口(Java Naming and Directory Interface)
- JSF - Java Server Faces
- JSP - Java服务器页面(Java Server Pages)
- JSTL - Java服务器页面标准标签库(Java Server Pages Standard Tag Library)
- JTA - Java事务API(Java Transaction API)
- JavaMail
- Servlet - Java Servlet API
- StAX - Streaming APIs for XML Parsers
- WS - Web Services
- 参考
spring框架概述
- 什么是spring
- Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。
- 分层: 一站式,每一个层都提供的解决方案(如下结构图)
- web层:struts,spring-MVC
- service层:spring
- dao层:hibernate,mybatis , jdbcTemplate --> spring-data

- spring体系结构

- 容器是spring的核心. Spring容器使用DI(Dependency Inject)管理构成应用的组件,它会创建相互协作的组件之间的关联. Spring自带多个容器实现,可以归为两种类型: bean工厂(由
org.springframework.beans.factory.BeanFactory
接口定义);应用上下文(由org.springframework.context.ApplicationContext
接口定义)基于BeanFactory构建
- spring优点
- 方便解耦,简化开发 (高内聚低耦合)
- Spring就是一个大工厂(容器),可以将所有对象创建和依赖关系维护,交给Spring管理
- spring工厂是用于生成bean
- AOP编程的支持
- Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能
- 声明式事务的支持
- 只需要通过配置就可以完成对事务的管理,而无需手动编程
- 方便程序的测试
- Spring对Junit4支持,可以通过注解方便的测试Spring程序
- 方便集成各种优秀框架
- Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts、Hibernate、MyBatis、Quartz等)的直接支持
- 降低JavaEE API的使用难度
- Spring 对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低
- 方便解耦,简化开发 (高内聚低耦合)