javaEE 笔记1
一、javaEE1.了解什么是java EE熟悉Java EEJava EEJava Platform, Enterprise Edition即 Java 企业版是一套用于构建大型、分布式、安全、可扩展企业级应用的Java 技术规范与 API 集合现已更名为Jakarta EE一Java EE 的优点跨平台可移植性强基于 Java 语言一次编写可在不同操作系统和服务器上运行不受平台限制。组件化开发便于维护提供 Servlet、JSP、EJB 等标准化组件代码结构清晰便于分工开发和后期维护。内置企业级功能开发高效自带事务管理、安全控制、数据库访问、消息服务等能力不用从零开发。稳定性高适合大型项目支持高并发、分布式、多用户访问适合银行、电商、政务等大型企业系统。安全性强提供完善的权限控制、身份认证、数据加密机制保障企业数据安全。可扩展性好支持集群部署、负载均衡能随业务增长灵活扩展服务器和功能。生态成熟社区完善技术规范统一有大量成熟服务器和框架支持问题易解决。2.Java EE 四层架构四层说明客户端层Client Tier浏览器、桌面应用、AppWeb 层Web TierServlet、JSP、JSF运行在 Web 容器业务层Business TierEJB、CDI Bean运行在 EJB 容器企业信息系统层EIS Tier数据库、ERP、遗留系统3.Java EE 核心技术Servlet/JSP/JPA/CDI/EJB对比表技术名称作用 / 定位通俗理解常用场景Servlet处理 HTTP 请求、响应Java 写的 “网页控制器”接收前端参数、跳转页面、写接口JSP页面模板HTML 里嵌 Java能写 Java 代码的网页快速生成动态页面现在很少用JDBCJava 连接数据库的标准接口Java 和数据库的 “数据线”增删改查、执行 SQLJPA对象关系映射 ORM 规范不用写 SQL用对象操作表简化数据库操作Hibernate 是实现EJB企业级业务组件封装业务逻辑、自带事务安全大型项目、分布式、金融系统CDI依赖注入、Bean 管理自动创建对象、不用自己 new解耦、统一管理组件JTA分布式事务管理保证多个操作要么全成功要么全失败转账、订单、支付等强一致性场景JMS消息服务规范系统之间异步发消息解耦、异步处理、消息队列JAX-RSREST 接口开发规范写 HTTP 接口GET/POST前后端分离、微服务接口Filter请求过滤器统一处理请求登录校验、编码登录拦截、字符编码设置Listener监听器监听服务器启动、session 创建初始化数据、统计在线人数二、学习材料SMMSpring、Spring MVC、MyBatis第 1 章 Spring 入门1.什么是springSpring 是一个轻量级的 Java 企业级应用程序开发框架最早由 Rod Johnson 创建目的是解决企业级应用开发的业务逻辑层和其他各层的耦合问题。它是一个分层的Java SE/EE full-stack一站式轻量级开源框架为开发 Java 应用程序提供全面的基础架构支持。Spring 负责基础架构因此 Java 开发者可以专注于应用程序的开发。1.1.Spring 的优点轻量级非侵入式框架体积小代码不需要继承或实现特定类对原有代码影响小。控制反转IOC降低耦合对象由 Spring 统一创建和管理类与类之间依赖关系松散便于维护和测试。面向切面编程AOP统一处理日志、事务、权限等通用功能减少重复代码提高开发效率。整合能力极强可以无缝整合 MyBatis、Struts2、Hibernate、Redis、消息队列等几乎所有主流技术。支持声明式事务不用手动编写事务代码通过配置即可实现事务管理简单可靠。方便单元测试支持 JUnit 测试可轻松测试 Spring 管理的对象提高代码质量。生态完善社区强大文档丰富、使用广泛遇到问题容易解决企业使用率极高。2.Spring 体系结构1.核心容器层Core Container 层模块名中文全称核心作用BeansBean 管理模块提供 BeanFactory 工厂负责 Bean 的创建、实例化、依赖注入是 Spring IoC控制反转的核心Core核心基础模块提供框架最基础的组件实现 IoC、DI依赖注入的底层逻辑Context上下文模块基于 Core 和 Beans 构建负责加载配置、管理 Bean 生命周期、集成外部资源Expression表达式语言模块支持 Spring 表达式语言SpEL可在运行时动态操作对象、执行逻辑2.AOP / 切面 /植入层AOP/Aspects/Instrumentation 层模块名中文全称核心作用AOP面向切面编程模块实现非侵入式的切面逻辑比如日志、权限、事务等横切功能Aspects切面集成模块集成 AspectJ 框架提供更强大的注解式切面能力Instrumentation字节码植入模块支持类加载时动态修改字节码用于热部署、AOT 编译等Messaging消息传输模块支持消息驱动编程实现异步通信、事件驱动架构3.数据访问 / 集成层Data Access/Integration模块名中文全称核心作用JDBCJDBC 封装模块简化原生 JDBC 操作提供 JdbcTemplate 工具类统一异常处理ORM对象关系映射模块集成 MyBatis、Hibernate 等 ORM 框架提供统一的持久层抽象OXM对象 - XML 映射模块实现 Java 对象与 XML 格式的互相转换JMSJava 消息服务模块支持消息队列、异步消息处理Transactions事务管理模块提供声明式 / 编程式事务统一事务抽象兼容多种数据源4.Web 层模块名中文全称核心作用WebWeb 基础模块提供 Servlet 集成、文件上传等 Web 基础能力WebMVCSpring MVC 模块传统 MVC 架构核心负责 Web 请求路由、视图渲染WebFlux响应式 Web 模块异步非阻塞响应式框架支持高并发 Web 开发WebSocketWebSocket 模块支持 WebSocket 协议实现双向实时通信5.测试层Test提供完整的单元测试、集成测试支持包含 Mock 对象、测试上下文、事务回滚等工具简化 Spring 项目的测试流程。3.环境搭建1.工具1.1EclipseEclipse 是一个免费、开源、跨平台的 集成开发环境IDE主要用于 Java 开发也是学习 Java EE 和 Spring 时最常用的开发工具之一。1.2IntelliJ IDEAIntelliJ IDEA 是一款商业化、功能强大的 Java 集成开发环境IDE由捷克 JetBrains 公司开发是目前最主流、最受欢迎的 Java 开发工具。2.Eclipse 与 IntelliJ IDEA 对比表对比项EclipseIntelliJ IDEA收费方式完全开源免费社区版免费旗舰版收费智能提示一般需手动配置较多非常智能自动补全、重构强大易用性插件多配置繁琐开箱即用默认配置友好开发效率较低操作步骤多极高快捷键与自动化功能丰富对 Spring/Java EE 支持需安装插件原生集成支持最好性能流畅度大项目易卡顿更流畅大项目优化更好目前主流程度逐渐减少使用企业开发主流首选3.使用eclipse开发javaweb应用1.安装 JDK1.1下载 JDK去百度搜索https://www.oracle.com/下载对应 Windows 版本.exe 安装包https://www.oracle.com/cn/java/technologies/downloads/#java17-windows1.2安装 JDK双击安装包点【下一步】安装路径建议改成D:\Java\jdk1.8.0_xxx不要有中文、不要有空格一路下一步直到安装完成1.3配置环境变量1.4测试 JDK 是否安装成功1.按 Win R输入 cmd 打开黑窗口2.输入java -version英文状态下3.出现版本信息说明 JDK 安装成功2.安装 TomcatWeb 服务器2.1下载 Tomcat官网Apache Tomcat https://tomcat.apache.org/whichversion.html下载 Zip 压缩包免安装版https://tomcat.apache.org/2.2解压把压缩包解压到D:\Tomcat9路径不能有中文、不能有空格2.3启动 Tomcat进入 D:\Tomcat9\bin双击 startup.bat弹出黑窗口不闪退、不停说明启动成功2.4测试 Tomcat1.打开浏览器输入http://localhost:8080出现 Tomcat 猫的页面 → 安装成功3.安装 Eclipse3.1下载 Eclipsehttps://www.eclipse.org/downloads/packages/3.2解压 / 安装如果是压缩包直接解压到D:\Eclipse打开 eclipse.exe3.3选择工作空间1.第一次打开会让你选工作目录比如D:\Eclipse_Workspace直接点【Launch】进入界面3.4Eclipse 集成 Tomcat步骤 1打开服务器配置打开 Eclipse点击上方菜单 Window → Preferences步骤 2添加 Tomcat 运行环境展开 Server → Runtime Environments点击右边 Add选择你的 Tomcat 版本如 Apache Tomcat v9.0点【Next】步骤 3指定 Tomcat 路径在 Tomcat installation directory 点【Browse】选择你解压的 Tomcat 目录D:\Tomcat9下面 JRE 选择你安装的 JDK点【Finish】步骤 4显示 Servers 面板点击上方菜单Window → Show View → Servers下方会出现 Servers 窗口步骤 5创建服务器实例在 Servers 面板里点击No servers are available. Click this link to create a new server...选择你的 Tomcat 版本点【Next】→【Finish】步骤 6启动 Tomcat在 Servers 里选中 Tomcat点击上方的 绿色启动按钮控制台不报错显示 Started 说明集成成功 ✔