本书从操作系统底层的IO原理入手讲解Java高并发核心编程知识,同时提供高性能开发的实战案例,是一本Java高并发编程的基础原理和实战图书。 本书共15章。第1~4章为高并发基础,浅显易懂地剖析高并发IO的底层原理,图文并茂地介绍Java异步回调模式,细致地讲解Reactor高性能模式。这些原理方面的基础知识非常重要,会为读者打下坚实的基础,也是日常开发Java后台应用时解决实际问题的金钥匙。第5~8章为Netty的原理和实战,是本书的重中之重,主要介绍高性能通信框架Netty、Netty的重要组件、单体IM的实战设计和模块实现。第9~12章从TCP、HTTP入手,介绍客户端与服务端、服务端与服务端之间的高性能HTTP通信和WebSocket通信。第13~15章对ZooKeeper、Curator API、Redis、Jedis API的使用进行详尽的说明,以提升读者设计和开发高并发、可扩展系统的能力。 本书兼具基础知识和实战
本书聚焦Java高并发编程基础知识,介绍Java多线程、线程池、内置锁、JMM、CAS、JUC、高并发设计模式等并发编程方面的核心原理和实战知识。 本书共10章。第1、2章剖析多线程、线程池的核心原理和实战应用,揭秘线程安全问题和Java内置锁的核心原理。第3、4章讲解CAS原理与JUC原子类、JMM的核心原理,揭秘CAS操作的弊端和两类规避措施,以及Java内存可见性和volatile关键字的底层知识。第5章讲解JUC显式锁的原理和各种显式锁的使用。第6章阐述JUC高并发的基础设施 AQS抽象同步器的核心原理。第7章介绍JUC容器类。第8~10章介绍常见的Java高并发设计模式的原理和使用。 本书既可以作为Java工程师、架构师的编程参考书,又可以作为参加互联网大厂面试、笔试的人员的学习参考书。
本书从动态代理模式、Reactor模式、三大限流策略等知识入手,深入浅出地剖析Spring Cloud Nginx系统架构的核心原理以及Web高并发开发技术。全书从基础设计模式和基础原理出发,理论与实战相结合,系统、详尽地介绍Spring Cloud Nginx高并发核心编程。 本书共10章。前6章剖析Feign高并发RPC的底层原理,解析Hystrix高性能配置的核心选项,阐述Hystrix滑动窗口的核心原理;后4章介绍Nginx的核心原理及其配置,并结合秒杀场景实现Spring Cloud秒杀、Spring Cloud Nginx Lua秒杀,为广大Java开发者提供一个全面学习高并发开发的实战案例。这些知识会为广大Java工程师解决后台开发中遇到的高并发、高性能问题打下坚实的技术基础。
本书从问题入手,使用100多个创意编程范例,试图在深入理解原理的基础上,通过自造 轮子 帮助读者提升代码编写功底和工程实现能力。全书分为12章,内容包括Java入门、分形图像处理、数据结构、网络通信、动态装载、多线程、Raft协议、分布式编程和ZooKeeper框架等,由浅入深实现 美颜相机 迷你通信会议 迷你Web服务器 迷你Raft 等项目。本书针对每一个范例,首先给出代码实现和重要知识点,然后提出任务以使读者发挥创意,提升代码编写技能。 本书由浅入深,有趣有料,适合想提升代码编写水平的大学生、求职者、编程爱好者阅读,也适合有1~2年开发经验的程序员参考,还可以作为各类培训班的培训教材。
本书从整个Java后端研发的视角,通过大量的案例分析日常开发过程中可能遇到的150多个坑点及其解决方案,并讨论一些best实践。这些坑点涵盖编码(不仅涉及Java语法层面,还涉及多线程、连接池、数据库索引、事务、日志、Spring框架等层面)、系统设计、代码安全等方面。本书在剖析这些坑点时还会讲解排查思路和相关工具的使用,让读者不仅能了解常见的坑点,还能具备一定的问题分析能力,以便日后自行排查更多的坑点。
内容简介本书是Java并发编程领域公认的标准性著作,第1版自2015年出版以来,累计印刷23次,销售超过10万册,全网读者评论超过40000条,口碑爆棚。第2版在第1版的良好基础上,与时具进,反映了Java技术的最新发展;去芜存菁:处理了广大读者反馈的问题;博采众长:吸收了行业专家的宝贵建议;厚积薄发,融入了作者近8年在Java并发编程方面积累的新技术和新经验。新增和修订的内容超过50%,无论是理论、方法还是实践,都有了大幅度的提升。本书从并发编程的底层实现机制入手,围绕JDK源码、JVM、CPU等多角度详细介绍了设计Java并发程序的框架、原理、核心技术、设计模式与应用,同时辅以丰富的示例代码,使得开发人员能够更快地领悟Java并发编程的要领,利用Java平台的基础并发功能快速地构建大规模的并发应用。本书具体包含如下核心内容:?Java并发编程的
OpenCV作为一个应用广泛的开源计算机视觉库,正在受到越来越多的关注。目前OpenCV的各类教程基本上以Python和C 为主,基于Java的OpenCV书籍则少之又少,本书旨在弥补这一空白。 本书共13章,前4章是基础部分,包括OpenCV概述和安装配置、数字图像基础及图像基础操作等内容;第5到11章则包括了图像的几何变换、图像平滑、形态学操作、直方图、边缘检测与轮廓、霍夫变换、特征点检测和匹配等进阶内容;第12~13章属于提高内容,主要介绍机器学习和视频跟踪技术。 本书以通俗易懂的语言,图文并茂的讲解力图使初学者能够快速高效入门。本书面向的读者是包括高校学生在内的各类初学者、研究计算机视觉的业余爱好者及需要快速上手的专业人员。
《Java官方入门教程(第9版 Java 17)》针对Java SE 17做了全面细致的更新,将引导你轻松学习最新的核心Java编程技能。《Java官方入门教程(第9版 Java 17)》由畅销编程书作者Herbert Schildt撰写,开篇讲述基础知识,内容涉及如何创建、编译和运行Java程序。此后浓墨重彩地描述构成Java语言核心的关键字、语法和结构。本书还涵盖Java的一些更高级特性,如多线程编程、泛型、lambda表达式、模块、记录、密封类和Swing。另外,还介绍了Java的交互式编程工具JShell。本书通俗易懂、简明扼要、详略得当,成为全球数百万读者的选择。
本书提供了300个完整的Java案例,从算法上分为数学、搜索、回溯、递归、排序、迭代、贪心和动态规划等; 从数据结构上分为字符串、数组、指针、区间、队列、矩阵、堆栈、链表、哈希表、线段树、二叉树、二叉搜索树和图结构等。本书针对经典算法,基于相关的数据结构,将问题描述、问题示例、代码实现及运行结果相结合进行讲解,逻辑清晰,内容丰富,可作为程序开发人员及其他IT从业者学习和提升算法能力的参考书,也可作为高校计算机相关专业的教材。
本书从JVM和Java API两个方面,深入地介绍了Java 8和Java 11等新的Java长期支持版本中影响性能的因素。本书先从Java应用程序的通用方法、基准测试的缺陷、性能监控工具等方面,分析了如何通过JVM的配置方式影响程序的性能;接着从即时编译、垃圾回收、堆内存与原生内存实践、线程与同步的性能等方面,分析了常见的优化方向及其特性。第2版专注于更加成熟的Java 8和Java 11,主要的更新内容涉及G1垃圾回收器和Java飞行记录器,以及Java在容器化环境下的性能变化。
《Java系统分析与架构设计》面向软件工程项目实战,内容按照软件项目的生命周期展开,分别为软件项目需求分析、软件项目架构设计(开发架构模式为主)、软件项目模块设计、软件项目的持久层设计(关系型物理表设计、Redis设计、MongoDB设计)、软件项目的部署等。 《Java系统分析与架构设计》共7章,第1章以大型企业项目 中国石油物资采购管理信息系统 为例,详细讲解需求分析技术,如流程图分解、UML用例图设计、UML状态图设计、概念模型分析等;第2章为 软件架构设计 ,讲解架构设计五视图、Java EE架构模式、微服务架构模式、Dubbo 3架构模式、MOM架构模式等内容,同时结合大型分布式项目 电影院综合票务管理平台 进行详细的架构设计示范;第3章为 项目模块设计 ,讲解UML类图、UML时序图设计方法,同时结合项目 新闻系统 与 物流管理系统 进行模块设
现代软件规模大、实时性要求高,所以掌握提升处理和响应速度的多线程技术势在必行。本书涵盖多线程编程的核心库、方法、原理,透彻讲解了高并发的本质与应对方法,帮助读者解决高并发环境下的业务瓶颈。 ●本书具体内容如下。 第1章讲解Java多线程的基础知识,包括Thread类的核心API的使用。 第2章讲解在多线程中通过synchronized关键字对并发访问进行控制的方法,为读者学习同步知识打好坚实的基础。 第3章介绍线程间通信,以在多线程中进行数据传递。 第4章介绍并发访问时的同步处理实现,包括读写锁(Lock对象)等相关技术点。 第5章剖析定时器Timer类的内部原理。定时器在Android开发中会有深入应用,是很重要的技术点。 第6章介绍单例模式下多线程的全面解决方案。 第7章对前面遗漏的知识点进行补充,使多线程的知识体系更加完整,尽量做到不出现
本书内容主要是对《On Java 中文版 基础卷》的拓展延伸,重点讲解 Java 的高级特性、并发、设计模式等相关进阶知识,对一些和开发密切相关的底层操作(如 I/O 系统、底层并发、数据压缩等)进行深入探讨,同时针对基础卷的重点章节进行了补充说明(如第 3 章增补了一些关于集合的高级特性)。在附录中,作者给出了 67 条关于低级程序设计和编写代码的建议,并分享了自己成为程序员的一些经验之谈。 本书适合有一定项目开发经验的 Java 程序员阅读。
《JavaWeb从入门到项目实践(超值版)》采用 基础知识 核心应用 核心技术 高级应用 项目实践 结构和 从入门到项目实践 的学习模式进行讲解。《JavaWeb从入门到项目实践(超值版)》共5篇22章,讲解了Java Web开发环境及服务器的搭建,HTML和CSS的基础知识,Web工程结构,JDBC基础,Java与数据库,Servlet基础,Filter开发,Listener开发,JSP基础语法,JSP元素,JavaBean技术,JSP标签,DAO和MVC设计模式,Spring应用,MyBatis应用,JDBC应用开发,Servlet应用开发,Servlet和JSP应用开发,Spring整合MyBatis应用开发等。在项目实践篇详细介绍了在线健身管理系统、银行日常业务管理系统开发,全面展示了项目开发的全过程。《JavaWeb从入门到项目实践(超值版)》的目的是多角度、全方位地帮助读者快速掌握软件开发技能,构建从高校到社会的就职桥梁,让有志于从事软件开发行业的读者轻松
本书结合样例,介绍 Django 的基础知识、主要模块的开发以及权限管理等高级内容,并且通过图书管理系统、博客系统、车费管理系统 3 个项目的开发实战,使读者既能掌握 Django 的重要开发技术,又能对这些知识在项目中的综合应用有深入了解。 本书共有 16 章,分为 3 个篇章,准备篇介绍了 Web 框架以及 Django 的基本知识;入门篇详细讲解了路由系统、模板系统等5 个主要模块的开发过程,并通过图书管理系统和博客系统的开发综合应用这些知识;进阶篇介绍了 AJAX、中间件、权限管理等内容,并完成了车费管理系统的项目开发。 本书讲解详细,内容通俗易懂,案例丰富,适合 Python 进阶读者或 Django 开发入门读者阅读,也可以作为 Web 开发人员或编程爱好者的自学参考。
本书从入门学习者的角度出发,通过通俗易懂的语言、丰富典型的实例,循序渐进地使读者在实践中学习Java编程知识,并提升自己的实际开发能力。全书共有17章,具体内容包括初识Java、Java语言基础、运算符与流程控制、面向对象基础、继承与多态、接口、异常处理、常用类、JSP基本语法、JSP内置对象、Servlet技术、过滤器和监听器、Struts2框架、Hibernate技术、Spring框架、Spring与Struts2、Hibernate框架的整合和Spring与SpringMVC、MyBatis框架的整合。书中的大部分知识都结合具体实例进行介绍,涉及的程序代码也大多给出了详细的注释,可以使读者轻松领会Java程序开发的精髓,快速提高开发技能。
在本书中,我们将带领您进入有趣且令人兴奋的计算机编程世界。在整个 旅程 中,我们将为您提供大量的解决问题的练习。毕竟,优秀的程序员需要善于解决问题。我们将展示如何使用Java程序实现问题解决方案。我们提供了大量的示例,简短的示例集中解释一个概念,而较长的示例更贴近真实的程序设计。我们以会话的方式呈现材料,以便于理解,让这个 旅程 更加愉快。读完这本书后,你应该可以成为一名熟练的Java程序员。 本书面向广泛的读者。它既适合标准的大学水平的 程序设计入门 课程或课程序列的学生,也适合有一些编程经验并想学习Java的行业从业者和大学水平的学生,本书还适合自学Java的学生。 本书特色: 1 教材的基石:解决问题 解决问题的能力是所有程序员必须掌握的核心技能。本书通过强调算法开发和程序设计两个关键元素讲解程序化地解
本书全面介绍了Java 8、9、10版本的新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、CompletableFuture以及新的日期和时间API,是程序员了解Java新特性的经典指南。全书共分六个部分:基础知识、使用流进行函数式数据处理、使用流和Lambda进行高效编程、无所不在的Java、提升Java的并发性、函数式编程以及Java未来的演进。
本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。首先,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。其次,进一步详细介绍了JDK中对并行程序的强大支持,帮助读者可以快速、稳健地进行并行程序开发。再次,详细讨论了有关"锁 的优化和提高并行程序性能级别的方法和思路。第四,介绍了并行的基本设计模式以及Java 8、9、10对并行程序的支持和改进。第五,介绍了高并发框架Akka的使用方法。第六,详细介绍了并行程序的调试方法。后分析Jetty代码并给出一些其在高并发优化方面的举例。《实战java高并发程序设计》第1~2版得到了读者的认可,而今Java 版本一直在变化,新的技术也有迭代,本书更要与时俱进,进行一些深层技术的更新,如GC一些优化方式等等。
本书以Java为开发语言,系统地介绍了网络爬虫的理论知识和基础工具,包括网络爬虫涉及的Java基础知识、HTTP协议基础与网络抓包、网页内容获取、网页内容解析和网络爬虫数据存储等。本书选取典型网站,采用案例讲解的方式介绍网络爬虫中涉及的问题,以增强读者的动手实践能力。同时,本书还介绍了3种Java网络爬虫开源框架,即Crawler4j、WebCollector和WebMagic。本书适用于Java网络爬虫开发的初学者和进阶者;也可作为网络爬虫课程教学的参考书,供高等院校文本挖掘、自然语言处理、大数据商务分析等相关学科的大学生和研究生参考使用;也可供企业网络爬虫开发人员参考使用。
本书从实验科学的角度探讨了Java性能优化的方方面面,重点阐述了*的实用JVM性能调优策略、工具和技巧。通过本书,我们不仅可以了解Java原理和技术如何充分利用现代硬件和操作系统、衡量Java性能的陷阱以及微基准测试的弊端有哪些,还能深入研究可能使团队烦恼的几种性能测试和常见反模式、JVM垃圾收集、JIT编译和Java语言性能技术等。本书为读者打开了深入理解Java性能的大门,并以路标助力其优化之旅。
本书以实用的设计模式为例,讲解了Java近年来在改善语法方面取得的进展,同时在实现这些模式的过程中展示了语言特性、设计模式与平台效率之间的关系。本书涵盖23种传统的设计模式、11种较为常见的模式,以及8种适用于多线程环境的并发模式。另外,本书还简要介绍了15种反模式。作者讲解这些模式的时候不仅给出了简洁、直观的范例代码,而且还利用UML类图与JFR工具展示了运用该模式的程序所具备的架构及运行细节,让读者能够更全面地了解模式对代码结构的影响,以及模式与Java虚拟机的交互情况。本书的特点在于把Java这种成熟的编程语言以及该语言最近新增的特性与各种设计模式结合起来,告诉读者怎样充分发挥Java的特性与优势,从而更好地实现设计模式,避免陷入空谈概念而无法落实的境地。