《轻量级Java EE企业应用开发实战》读书笔记模板_第1页
《轻量级Java EE企业应用开发实战》读书笔记模板_第2页
《轻量级Java EE企业应用开发实战》读书笔记模板_第3页
《轻量级Java EE企业应用开发实战》读书笔记模板_第4页
《轻量级Java EE企业应用开发实战》读书笔记模板_第5页
已阅读5页,还剩168页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

读书笔记模板轻量级JavaEE企业应用开发实战01思维导图读书笔记精彩摘录内容摘要目录分析作者介绍目录0305020406思维导图企业应用开发开发框架实战项目热点实战实战应用习题第章配置概述消息方法框架项目资源本书关键字分析思维导图内容摘要内容摘要《轻量级JavaEE企业应用开发实战》由资深Java工程师结合多年大厂开发经验精心编撰,全面系统地介绍JavaEE企业级开发所需要的轻量级开源技术栈,涉及Maven、Servlet、Jetty、Tomcat、Spring框架、SpringWebMVC、SpringSecurity、MyBatis、MySQL、Thymeleaf、Bootstrap、REST客户端、Jersey、WebSocket、JMS、Email、任务执行与调度、缓存、SpringBoot、SpringCloud等方面的内容。“轻量级”开发模式已经深入人心,被广大互联公司所采用,《轻量级JavaEE企业应用开发实战》从开发环境搭建开始,循序渐进地讲解核心技术、热点框架,适时结合项目与案例介绍这些技术与框架的实际应用,特别是对当前热点的微服务开发技术进行了详细的阐述,对于拥有Java基础,想开发企业项目的读者,《轻量级JavaEE企业应用开发实战》可帮助你快速上手。读书笔记读书笔记技术点很全面,很详细的解释了每一种技术用途以及作用,全面了解到了这些技术的全部内容,现在好多培训机构视频教程就是把各种技术融合到一起这里用一点那里用一点,学完根本对技术没有一个全面的了解,对此书不足的地方就是实际代码案例比较少,不过这一点可以自己去尝试着使用书中的技术配合百度去实践。目录分析1.1JavaEE发展简史1.2传统企业级应用技术的不足1.3轻量级JavaEE的技术特点1.4开发环境搭建1.5总结1.6习题010302040506第1章JavaEE概述1.1JavaEE发展简史1.1.1Java平台发展简史1.1.2JavaEE现状1.2传统企业级应用技术的不足1.2.1规范太重1.2.2学习成本太高1.2.3不够灵活1.2.4发展缓慢1.3轻量级JavaEE的技术特点1.3.1轻量级架构1.3.2符合二八定律1.3.3基于开源技术1.3.4支持微服务1.3.5可用性和扩展性1.3.6支撑大型互联应用1.4开发环境搭建1.4.1安装JDK1.4.2Maven安装1.4.3安装Eclipse1.4.4安装IntelliJIDEA1.4.5安装ApacheTomcat2.1Maven概述2.2理解Maven构建生命周期2.3理解POM2.4实战:使用Eclipse创建Maven应用2.5实战:使用IntelliJIEDA创建Maven应用12345第2章项目管理——Maven2.7习题2.6总结第2章项目管理——Maven2.1Maven概述2.1.1Maven的主要功能2.1.2创建Maven项目2.1.3探索Maven项目2.1.4构建Maven项目2.2理解Maven构建生命周期2.2.1Maven阶段2.2.2完整的生命周期阶段2.2.3生命周期阶段在命令行中的调用2.2.4使用构建生命周期来设置项目2.3理解POM2.3.1SuperPOM2.3.2最小化POM2.4实战:使用Eclipse创建Maven应用2.4.1创建Maven应用2.4.2运行Maven应用2.4.3导入Maven应用2.4.4相关问题解决2.5实战:使用IntelliJIEDA创建Maven应用2.5.1创建Maven应用2.5.2运行Maven应用2.5.3导入Maven应用2.5.4相关问题解决3.1Servlet概述3.2Servlet容器3.3过滤器3.4请求3.5Servlet上下文3.6响应010302040506第3章Web应用的基石——Servlet3.7监听器3.9实战:创建基于Servlet的Web应用3.8会话第3章Web应用的基石——Servlet3.10Tomcat服务器概述3.11实战:在应用里面内嵌Tomcat容器3.12Jetty服务器概述3.13实战:在应用里面内嵌Jetty容器3.14总结3.15习题010302040506第3章Web应用的基石——Servlet3.1Servlet概述3.1.1Servlet架构3.1.2Servlet生命周期3.1.3常用方法3.2Servlet容器3.2.1常用Servlet容器3.2.2Tomcat和Jetty的相同点3.2.3Tomcat和Jetty的不同点3.2.4总结3.3过滤器3.3.1什么是过滤器3.3.2过滤器生命周期3.3.3包装请求和响应3.3.4过滤器环境3.3.5Web应用中过滤器的配置3.3.6过滤器和请求分派器3.4请求3.4.1HTTP协议参数3.4.2属性3.4.3请求头3.4.4请求路径元素3.4.5路径转换方法3.4.6请求数据编码3.5Servlet上下文3.5.1ServletContext接口作用域3.5.2初始化参数3.5.3配置方法3.5.4上下文属性3.5.5资源3.6响应3.6.1缓冲3.6.2头3.6.3方法3.7监听器3.7.1事件类型和监听器接口3.7.2部署描述符示例3.7.3监听器实例和线程3.7.4监听器异常3.7.5分布式容器3.7.6会话事件3.8会话3.8.1会话跟踪机制3.8.2创建会话3.8.3会话范围3.8.4绑定属性到会话3.8.5会话超时3.8.6最后访问时间3.8.7线程问题3.8.8分布式环境3.8.9客户端语义3.9实战:创建基于Servlet的Web应用3.9.1创建动态Web项目3.9.2创建Servlet实现类3.9.3编译应用3.9.4运行应用3.10Tomcat服务器概述3.10.1Tomcat目录结构3.10.2Tomcat主要组件3.10.3Tomcat处理HTTP请求的过程3.11实战:在应用里面内嵌Tomcat容器3.11.1安装tomcat7-maven-plugin3.11.2运行应用3.11.3访问应用3.12Jetty服务器概述3.12.1高性能Servlet容器3.12.2可拔插3.12.3Jetty常用配置3.13实战:在应用里面内嵌Jetty容器3.13.1Maven插件形式3.13.2编程方式4.1MySQL概述4.2MySQL的安装4.3使用MySQL客户端4.4MySQL基本操作第4章流行的开源关系型数据库——MySQL4.6习题4.5总结第4章流行的开源关系型数据库——MySQL4.1MySQL概述4.1.1MySQL名字的由来4.1.2MySQL的发展历程4.1.3MySQL的特点4.2MySQL的安装4.2.1下载安装包4.2.2解压安装包4.2.3创建my.ini4.2.4初始化安装4.2.5启动和关闭MySQLServer5.1JDBC概述5.2JDBC的核心概念5.3使用PreparedStatement5.4事务管理第5章Java操作数据库——JDBC5.5实战:使用JDBC操作数据库5.6理解连接池技术5.7实战:使用数据库连接池DBCP5.8总结5.9习题12345第5章Java操作数据库——JDBC5.2JDBC的核心概念5.2.1建立连接5.2.2执行SQL并操作结果集5.2.3两层模型5.2.4三层模型5.2.5JDBC与JavaEE平台的关系5.3使用PreparedStatement5.3.1创建PreparedStatement对象5.3.2为什么使用PreparedStatement5.4事务管理5.4.1事务边界和自动提交5.4.2关闭自动提交模式5.4.3事务隔离级别5.4.4性能考虑5.4.5保存点5.5实战:使用JDBC操作数据库5.5.1初始化数据库5.5.2建表5.5.3初始化应用5.5.4创建测试类5.7实战:使用数据库连接池DBCP5.7.1添加DBCP依赖5.7.2编写数据库工具类5.7.3理解DbUtil的配置化5.7.4编写测试用例6.1Spring概述6.2IoC6.3AOP6.4资源处理第6章一站式应用框架——Spring6.5表达式语言SpEL6.7习题6.6总结第6章一站式应用框架——Spring6.1Spring概述6.1.1Spring的广义与狭义6.1.2Spring框架总览6.1.3Spring框架常用模块6.1.4Spring设计模式6.2IoC6.2.1依赖注入与控制反转6.2.2IoC容器和Bean6.2.3配置元数据6.2.4实例化容器6.2.5使用容器6.2.6Bean的命名6.2.7实例化bean的方式6.2.8注入方式6.2.9实战:依赖注入的例子6.3AOP6.3.1AOP概述6.3.2AOP核心概念6.3.3SpringAOP6.3.4AOP代理6.3.5实战:使用@AspectJ的例子6.3.6基于XML的AOP6.3.7实战:基于XML的AOP的例子6.4资源处理6.4.1常用资源接口6.4.2内置资源接口实现6.4.3ResourceLoader6.4.4ResourceLoaderAware6.4.5资源作为依赖6.5表达式语言SpEL6.5.1表达式接口6.5.2对于bean定义的支持6.5.3实战:使用SpEL的例子7.1测试概述7.2Mock对象7.3测试工具类7.4测试相关的注解第7章Spring测试7.5SpringTestContext框架7.6SpringMVCTest框架7.7总结7.8习题第7章Spring测试7.1测试概述7.1.1传统的测试所面临的问题7.1.2如何破解测试面临的问题7.1.3测试类型7.1.4测试范围及比例7.2Mock对象7.2.1Environment7.2.2JNDI7.2.3ServletAPI7.3测试工具类7.3.1测试工具7.3.2测试SpringWebMVC7.4测试相关的注解7.4.1@BootstrapWith7.4.2@ContextConfiguration7.4.3@WebAppConfiguration7.4.4@ContextHierarchy7.4.5@ActiveProfiles7.4.6@TestPropertySource7.4.7@DirtiesContext7.4.8@TestExecutionListeners7.4.9@Commit7.5SpringTestContext框架7.5.1SpringTestContext框架概述7.5.2核心抽象7.5.3引导TestContext7.5.4TestExecutionListener配置7.5.5上下文管理7.5.6测试夹具的注入7.5.7如何测试requestbean和sessionbean7.5.8事务管理7.5.9执行SQL脚本7.6SpringMVCTest框架7.6.1服务端测试概述7.6.2选择测试策略7.6.3设置测试功能7.6.4执行请求7.6.5定义期望7.6.6注册过滤器7.6.7脱离容器的测试7.6.8实战:服务端测试SpringWebMVC的例子8.1事务管理概述8.3声明式事务管理8.2通过事务实现资源同步第8章Spring事务管理8.4编程式事务管理8.6习题8.5总结第8章Spring事务管理8.1事务管理概述8.1.1Spring事务管理优势8.1.2全局事务与本地事务8.1.3Spring事务模型8.2通过事务实现资源同步8.2.1高级别的同步方法8.2.2低级别的同步方法8.2.3TransactionAwareDataSourceProxy8.3声明式事务管理8.3.1声明式事务管理8.3.2实战:声明式事务管理的例子8.3.3事务回滚8.3.4配置不同的事务策略8.3.5@Transactional详解8.3.6事务传播机制8.4编程式事务管理8.4.1TransactionTemplate8.4.2PlatformTransactionManager8.4.3声明式事务管理和编程式事务管理9.1SpringWebMVC概述9.2DispatcherServlet9.3过滤器9.4控制器9.5异常处理12345第9章MVC模式的典范——SpringWebMVC9.6CORS处理9.7HTTP缓存9.8MVC配置9.9实战:基于SpringWebMVC的JSON类型的处理9.10实战:基于SpringWebMVC的XML类型的处理12345第9章MVC模式的典范——SpringWebMVC9.12习题9.11总结第9章MVC模式的典范——SpringWebMVC9.2DispatcherServlet9.2.1DispatcherServlet概述9.2.2上下文层次结构9.2.3处理流程9.2.4拦截9.3过滤器9.3.1HTTPPUT表单9.3.2转发头9.3.3ShallowEtagHeaderFilter9.3.4CORS9.4控制器9.4.1声明控制器9.4.2请求映射9.4.3处理器方法9.4.4模型方法9.4.5绑定器方法9.5异常处理9.5.1@ExceptionHandler9.5.2框架异常处理9.5.3RESTAPI异常9.5.4注解异常9.5.5容器错误页面9.6CORS处理9.6.1@CrossOrigin9.6.2全局CORS配置9.6.3自定义9.6.4CORS过滤器9.7HTTP缓存9.7.1缓存控制9.7.2静态资源9.7.3控制器缓存9.8MVC配置9.8.1启用MVC配置9.8.2类型转换9.8.3验证9.8.4拦截器9.8.5内容类型9.8.6消息转换器9.8.7视图控制器9.8.8视图解析器9.8.9静态资源9.9实战:基于SpringWebMVC的JSON类型的处理9.9.1接口设计9.9.2系统配置9.9.3后台编码实现9.9.4应用配置9.9.5运行应用9.10实战:基于SpringWebMVC的XML类型的处理9.10.1接口设计9.10.2系统配置9.10.3后台编码实现9.10.4应用配置9.10.5运行应用10.1基于角色的权限管理10.2SpringSecurity概述10.3实战:基于SpringSecurity安全认证10.4总结10.5习题12345第10章全能安全框架——SpringSecurity10.1基于角色的权限管理10.1.1角色的概念10.1.2基于角色的访问控制10.1.3哪种方式更好10.1.4真实的案例10.2SpringSecurity概述10.2.1SpringSecurity的认证模型10.2.2SpringSecurity的安装10.2.3模块10.2.4SpringSecurity5的新特性及高级功能10.3实战:基于SpringSecurity安全认证10.3.1添加依赖10.3.2添加业务代码10.3.3配置消息转换器10.3.4配置SpringSecurity10.3.5创建应用配置类10.3.6创建内嵌Jetty的服务器10.3.7应用启动器10.3.8运行应用11.1MyBatis概述11.2MyBatis四大核心组件11.3生命周期及作用域11.4总结11.5习题12345第11章轻量级持久层框架——MyBatis11.1MyBatis概述11.1.1安装MyBatis11.1.2MyBatis功能架构11.1.3MyBatis的优缺点11.2MyBatis四大核心组件11.2.1SqlSessionFactoryBuilder11.2.2SqlSessionFactory11.2.3SqlSession11.2.4Mapper11.3生命周期及作用域11.3.1SqlSessionFactoryBuilder11.3.2SqlSessionFactory11.3.3SqlSession11.3.4Mapper实例12.1配置文件12.2Mapper映射文件12.3动态SQL12.4常用API第12章MyBatis的高级应用12.5常用插件12.6实战:使用MyBatis操作数据库12.7总结12.8习题第12章MyBatis的高级应用12.1配置文件12.1.1properties12.1.2settings12.1.3typeAliases12.1.4typeHandlers12.1.5objectFactory12.1.6plugins12.1.7environments12.1.8transactionManager12.1.9dataSource12.2Mapper映射文件12.2.1select12.2.2insert、update和delete12.2.3处理主键12.2.4sql12.2.5参数12.2.6结果映射12.2.7自动映射12.2.8缓存12.3动态SQL12.3.1if12.3.2choose、when和otherwise12.3.3trim、where和set12.3.4foreach12.3.5bind12.3.6多数据库支持12.4常用API12.4.1SqlSessionFactoryBuilder12.4.2SqlSessionFactory12.4.3SqlSession12.4.4注解12.5常用插件12.5.1MyBatisGenerator12.5.2PageHelper12.6实战:使用MyBatis操作数据库12.6.1初始化表结构12.6.2添加依赖12.6.3编写业务代码12.6.4编写配置文件12.6.5编写测试用例12.6.6运行测试用例13.1常用Java模板引擎13.2Thymeleaf标准方言13.3Thymeleaf设置属性值13.4Thymeleaf迭代器与条件语句13.5Thymeleaf模板片段12345第13章模板引擎——Thymeleaf13.6Thymeleaf表达式基本对象13.7实战:基于Thymeleaf的Web应用13.8总结13.9习题第13章模板引擎——Thymeleaf13.1常用Java模板引擎13.1.1关于性能13.1.2为什么选择Thymeleaf而不是JSP13.1.3什么是Thymeleaf13.1.4Thymeleaf处理模板13.1.5标准方言13.2Thymeleaf标准方言13.2.1Thymeleaf标准表达式语法13.2.2消息表达式13.2.3变量表达式13.2.4表达式基本对象13.2.5表达式工具对象13.2.6选择表达式13.2.7链接表达式13.2.8分段表达式13.2.9字面量13.3Thymeleaf设置属性值13.3.1设置任意属性值13.3.2设置值到指定的属性13.3.3同时设置多个值13.3.4附加和添加前缀13.3.5固定值布尔属性13.3.6默认属性处理器13.3.7支持对HTML5友好的属性及元素名称13.4Thymeleaf迭代器与条件语句13.4.1迭代器13.4.2条件语句13.5Thymeleaf模板片段13.5.1定义和引用片段13.5.2Thymeleaf片段规范语法13.5.3不使用th:fragment13.5.4th:insert、th:replace和th:include三者的区别13.6Thymeleaf表达式基本对象13.6.1基本对象13.6.2Web上下文命名空间用于request/session属性等13.6.3Web上下文对象13.7实战:基于Thymeleaf的Web应用13.7.1添加依赖13.7.2编写控制器13.7.3应用配置13.7.4编写Thymeleaf模板14.1Bootstrap概述14.3实战:基于Bootstrap的Web应用14.2Bootstrap核心概念第14章锦上添花——Bootstrap14.5习题14.4总结第14章锦上添花——Bootstrap14.1Bootstrap概述14.1.1HTML5Doctype14.1.2响应式meta标签14.1.3Box-Sizing14.14.1.5模板14.2Bootstrap核心概念14.2.1Bootstrap的格系统14.2.2媒体查询14.2.3格选项14.2.4移动设备及桌面设备14.3实战:基于Bootstrap的Web应用14.3.1引入Bootstrap库的样式14.3.2引入Bootstrap库的脚本14.3.3添加Bootstrap样式类14.3.4运行应用15.1RestTemplate15.2WebClient15.3实战:基于RestTemplate的天气预报服务15.4实战:基于WebClient的文件上传和下载第15章REST客户端15.6习题15.5总结第15章REST客户端15.1RestTemplate15.1.1初始化15.1.2URI15.1.3请求头15.1.4消息体15.2WebClient15.2.1retrieve()方法15.2.2exchange()方法15.2.3请求体15.2.4生成器选项15.2.5过滤器15.3实战:基于RestTemplate的天气预报服务15.3.1添加依赖15.3.2后台编码实现15.3.3运行15.4实战:基于WebClient的文件上传和下载15.4.1添加依赖15.4.2文件上传的编码实现15.4.3文件下载的编码实现15.4.4运行16.1REST概述16.2实战:基于Jersey的REST服务16.3JAX-RS核心概念16.4实战:基于SSE构建实时Web应用第16章REST服务框架——Jersey16.6习题16.5总结第16章REST服务框架——Jersey16.1REST概述16.1.1REST的基本概念16.1.2REST设计原则16.1.3成熟度模型16.1.4RESTAPI管理16.1.5常用技术16.2实战:基于Jersey的REST服务16.2.1创建一个新项目16.2.2探索项目16.2.3运行项目16.3JAX-RS核心概念16.3.1根资源类(RootResourceClasses)16.3.2参数注解(@Param)16.3.3子资源16.4实战:基于SSE构建实时Web应用16.4.1发布-订阅模式16.4.2广播模式17.1WebSocket概述17.2WebSocket常用API17.3SockJS17.4STOMP第17章全双工通信——WebSocket17.5实战:基于STOMP的聊天室17.7习题17.6总结第17章全双工通信——WebSocket17.1WebSocket概述17.1.1HTTP与WebSocket对比17.1.2理解WebSocket的使用场景17.2WebSocket常用API17.2.1WebSocketHandler17.2.2WebSocket握手17.2.3部署17.2.4配置17.2.5跨域处理17.3SockJS17.3.1SockJS概述17.3.2启用SockJS17.3.3心跳17.3.4客户端断开连接17.3.5CORS处理17.3.6SockJsClient17.4STOMP17.4.1STOMP概述17.4.2启用STOMP17.4.3消息流程17.4.4处理器方法17.4.5发送消息17.4.6内嵌broker17.4.7外部broker17.4.8连接到broker17.4.9认证17.5实战:基于STOMP的聊天室17.5.1聊天室项目的概述17.5.2设置broker17.5.3服务端编码17.5.4客户端编码17.5.5运行18.1JMS概述18.2SpringJMS18.3发送消息18.4接收消息第18章消息通信——JMS18.5基于注解的监听器18.6JMS命名空间18.7实战:基于JMS的消息发送和接收18.8总结18.9习题12345第18章消息通信——JMS18.1JMS概述18.1.1常用术语18.1.2使用场景18.1.3JMS规范优势18.1.4常用技术18.2SpringJMS18.2.1JmsTemplate18.2.2连接管理18.2.3目的地管理18.2.4消息监听器容器18.2.5事务管理18.3发送消息18.3.1使用消息转换器18.3.2回调18.4接收消息18.4.1同步接收18.4.2异步接收18.4.3SessionAwareMessageListener18.4.4MessageListenerAdapter18.4.5处理事务18.5基于注解的监听器18.5.1启用基于注解的监听器18.5.2编程式端点注册18.5.3基于注解的端点方法签名18.5.4响应管理18.7实战:基于JMS的消息发送和接收18.7.1项目概述18.7.2配置18.7.3编码实现18.7.4运行19.1Email概述19.2实现发送Email19.3使用MimeMessageHelper19.4实战:实现Email服务器第19章消息通知——Email19.6习题19.5总结第19章消息通知——Email19.1Email概述19.1.1Email的起源19.1.2Spring框架对于Email的支持19.2实现发送Email19.2.1MailSender和SimpleMailMessage的基本用法19.2.2JavaMailSender和MimeMessagePreparator的用法19.3使用MimeMessageHelper19.3.1发送附件和内联资源19.3.2使用模板创建Email内容19.4实战:实现Email服务器19.4.1项目概述19.4.2Email服务器编码实现19.4.3格式化Email内容19.4.4运行20.1任务执行与调度概述20.3TaskScheduler20.2TaskExecutor第20章任务执行与调度20.4任务调度及异步执行20.5使用QuartzScheduler20.6实战:基于QuartzScheduler天气预报系统20.7总结20.8习题12345第20章任务执行与调度20.2TaskExecutor20.2.1TaskExecutor类型20.2.2使用TaskExecutor20.3TaskScheduler20.3.1Trigger接口20.3.2实现20.4任务调度及异步执行20.4.1启用调度注解20.4.2@Scheduled20.4.3@Async20.4.4@Async的异常处理20.4.5命名空间20.5使用QuartzScheduler20.5.1使用JobDetailFactoryBean20.5.2使用MethodInvokingJobDetailFactoryBean20.6实战:基于QuartzScheduler天气预报系统20.6.1项目概述20.6.2后台编码实现20.6.3运行21.1缓存概述21.3JCache21.2声明式缓存注解第21章高性能之道——缓存21.4基于XML的声明式缓存21.5配置缓存存储21.6实战:基于缓存的天气预报系统21.7总结21.8习题12345第21章高性能之道—

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论