Java 开发基础及容器概念
1. JDK (Java Development Kit)
- 定义: Java开发工具包,包含Java运行时环境、编译器和其他开发工具。
- 主要组件:
- JRE (Java Runtime Environment): 运行Java应用程序所需的环境。
- javac: Java的编译器。
- jar: 创建和管理Java档案文件的工具。
2. IDE (Integrated Development Environment)
- 定义: 集成开发环境,为软件开发提供全功能的界面。
- 常用IDE:
- Eclipse: 开源IDE,支持多种编程语言。
- IntelliJ IDEA: 强大的Java IDE,有免费和付费版本。
- NetBeans: 开源IDE,主要用于Java开发。
3. Maven
- 定义: 项目管理和构建自动化工具。
- 特点:
- 依赖管理: 自动下载和管理项目所需的库。
- 项目生命周期管理: 定义了项目从创建到部署的各个阶段。
- 插件生态: 提供了大量的插件来支持各种任务。
- 构建和测试自动化: 自动完成编译、测试和打包等任务。
- 核心文件: POM.xml (项目对象模型),定义项目依赖、插件、属性等。
4. JAR (Java Archive)
- 定义: 用于捆绑多个Java类文件、相关元数据和资源的文件格式。
5. Spring Boot Starter
- 定义: Spring Boot的特性,用于简化Maven配置,帮助开发者快速开始一个新的Spring Boot项目。
- 特点: 提供了一系列预定义的依赖集合,使得项目的设置变得简单。
6. Tomcat
- 定义: 开源的Java Servlet和JavaServer Pages技术的Web服务器。
- 特点: 轻量级、高性能,被广泛用于Java Web应用的部署。
7. 容器 (Container)
7.1 通用定义
- 定义: 容器通常是一个运行环境或系统,它可以管理、组织和提供应用程序或组件的生命周期和配置。
- 特点:
- 隔离性: 容器为其内容提供了一个隔离的环境。
- 自动化: 容器可以自动管理资源、依赖和生命周期。
- 可配置性: 容器通常提供了配置和扩展的手段。
7.2 Spring 容器
- 定义: 在Spring框架中,容器负责创建、配置和管理Bean。容器通过读取配置元数据来管理这些Bean。
- 主要类型:
- BeanFactory: Spring的核心容器接口。
- ApplicationContext: 更高级的容器,提供了更多特性。
- 功能:
- 依赖注入 (DI): 容器负责注入对象的依赖。
- 生命周期管理: 容器管理Bean的生命周期。
- AOP支持: 容器提供了对面向切面编程的支持。
7.3 Tomcat 容器
- 定义: Tomcat是一个应用服务器容器,用于运行Java Servlet、JavaServer Pages (JSP)和Java WebSockets。
- 组件:
- Catalina: Tomcat的Servlet容器。
- Coyote: Tomcat的连接器组件。
- Cluster: 提供Tomcat实例之间的会话复制。
- Jasper: JSP引擎。
- 功能:
- 提供HTTP服务器: 处理并响应HTTP请求。
- 运行JSP和Servlet: 提供一个环境来运行和管理Web应用程序。
- 负载均衡和集群: 支持大型的Web应用部署。