本书是与《Java OpenCV高效入门》配套的案例集。全书共15章,第1章是OpenCV简介及开发环境的搭建,第2~15章是14个实用项目(专题),包括魔方图案识别、答题卡评分、围棋盘面识别、停车场车位检测、车道线检测、汉字识别、OCR文字识别、车牌定位与识别、硬币识别、零件检测、银行卡卡号识别、全景拼接、二维码识别、机器学习等内容。书中的项目均有相当的难度,需要综合运用OpenCV的各种算法实现。 本书面向的读者是包括高校学生在内的各类OpenCV学习者、研究计算机视觉的业余爱好者及需要快速上手的专业人员。
本书融合了Java和Android技术,还原企业的真实需求,模拟企业管理项目开发流程,带领读者 从0到1 学习公司管理项目的开发。 该项目的服务端主要采用SpringBoot框架,并集成MyBatis Plus简化了接口的开发,提高了开发效率,还在多个模块的开发中介绍了数据库触发器、Redis的简单使用,通过注解实现定时任务。在移动端主要讲解了Android SDK及其插件的使用,集成第三方接口,调用API查询企业信息等功能。项目中主要实现了客户资料管理、销售机会管理、报价记录管理、合同订单管理等模块的功能,并严格按照用户的权限对各类数据实现管控。 本书适合掌握一定的Java基础,拥有Spring相关框架开发经历的读者使用。
本书将Scratch作为一门程序设计语言看待,通过大量数学和算法方面的编程案例,为广大中小学生提供了一本编程进阶的参考教材。本书根据案例类型分为12章,共有100个妙趣横生的编程案例,涵盖数字黑洞、数学游戏、古算趣题、逻辑推理、玩扑克学算法、分形图等数学内容。本书*的特点是案例丰富多彩,让人脑洞大开,是广大中小学生在受过Scratch编程入门教育之后进一步提高编程能力的编程宝典。通过阅读本书,将使读者更加热爱编程,更加热爱数学和算法,为广大中小学生打开一片新的数学编程天地。本书不是零起点教材,适合已经过Scratch入门教育的广大中小学生、编程爱好者和参加中小学信息学竞赛的学生作为参考读物,也适合少儿编程培训机构作为课程设计的参考读物。
本书旨在帮助Java求职者在面试中脱颖而出,内容涵盖Java通用架构方案的多个关键主题,如微服务架构、高性能架构、高可用架构、高并发架构、分布式原理和分布式缓存等。本书的特点在于,它将互联网领域的名企、大厂的面试问题与实际案例相结合,对面试问题和面试官的心理进行深度剖析,并将面试问题的相关解答和相应技术点详细展开,以帮助读者全面理解相关概念和技术,并能在面试和实际工作中灵活应用。 通过学习本书,读者可以深入了解名企、大厂的实际案例和相关问题的解决方案。书中总结的一些宝贵经验将有助于读者在面试中表现得更加出色,增加成功的机会,斩获高薪Offer,并提升自己的实际工作能力。读者无论是要做好面试准备还是要适应实际工作需求,都能从本书中获益。
OpenCV作为一个应用广泛的开源计算机视觉库,正在受到越来越多的关注。目前OpenCV的各类教程基本上以Python和C 为主,基于Java的OpenCV书籍则少之又少,本书旨在弥补这一空白。 本书共13章,前4章是基础部分,包括OpenCV概述和安装配置、数字图像基础及图像基础操作等内容;第5到11章则包括了图像的几何变换、图像平滑、形态学操作、直方图、边缘检测与轮廓、霍夫变换、特征点检测和匹配等进阶内容;第12~13章属于提高内容,主要介绍机器学习和视频跟踪技术。 本书以通俗易懂的语言,图文并茂的讲解力图使初学者能够快速高效入门。本书面向的读者是包括高校学生在内的各类初学者、研究计算机视觉的业余爱好者及需要快速上手的专业人员。
《名师讲坛 Java微服务架构实战(SpringBoot SpringCloud Docker RabbitMQ)》一共15章,核心内容为SpringBoot、SpringCloud、Docker、RabbitMQ消息组件。其中,SpringBoot是SpringMVC技术的延伸,使用它进行程序开发会更简单,服务整合也会更容易。SpringCloud是当前微架构的核心技术方案,属于SpringBoot的技术延伸,它可以整合云服务,基于RabbitMQ和GITHUB进行微服务管理。除此以外,本书还重点分析了OAuth统一认证服务的应用。
本书用于学习Java网络通信的设计和开发,系统地介绍了Java网络通信的多种技术,由浅入深地阐述了多种通信技术的基础知识、主要模型以及实际可用的案例,使读者能有效地掌握Java网络编程的相关知识,并具备以Java编程来处理和解决网络通信问题的能力。 全书共8章和1个附录。第1~4章依次介绍BIO、NIO、AIO及Netty编程技术,每章均提供3个案例的设计和编码; 第5章与读者分享RESTful应用轻量级框架Jersey的使用经验; 第6章介绍Web服务消息推送规范SSE,并基于Jersey的SSE机制实现订阅 发布功能以及一个可重入的分布式锁; 第7章自行设计了一个RPC框架并进行代码实现; 第8章开发了两个简单常见的应用; 附录解答了Java开发时常见的若干问题。 本书可作为高等院校 网络程序设计 课程的教材,也可供相关领域的技术人员参考。
《码出高效:Java 开发手册》源于影响了全球250万名开发工程师的《阿里巴巴Java开发手册》,作者静心沉淀,对Java规约的来龙去脉进行了全面而彻底的内容梳理。本书以实战为中心,以新颖的角度全面阐述面向对象理论,逐步深入地探索怎样成为一位优秀开发工程师。比如:如何驾轻就熟地使用各类集合框架;如何得心应手地处理高并发多线程问题;如何顺其自然地写出可读性强、可维护性好的优雅代码。本书旁征博引、文风轻松,秉持 图胜于表,表胜于言 的理念,深入浅出地将计算机基础、面向对象思想、JVM探源、数据结构与集合、并发与多线程、单元测试等知识客观、立体地呈现出来。紧扣学以致用、学以精进的目标,结合阿里巴巴实践经验和故障案例,与底层源码解析融会贯通,娓娓道来。本书以打造民族标杆图书为己任,追求极致,打磨精品,在技术广
本手册的愿景是码出高效,码出质量。它结合作者的开发经验和架构历程,提炼阿里巴巴集团技术团队的集体编程经验和软件设计智慧,浓缩成为立体的编程规范和*实践。众所周知,现代软件行业的高速发展对开发工程师的综合素质要求越来越高,因为不仅是编程相关的知识点,其他维度的知识点也会影响软件的*终交付质量,比如,数据库的表结构和索引设计缺陷可能带来软件的架构缺陷或性能风险;单元测试的失位导致系统集成测试困难;没有鉴权的漏洞代码易被黑客攻击等。所以,本手册以开发工程师为中心视角,划分为编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约七个维度,每个条目下提供相应的扩展解释和说明、正例和反例,全面、立体、形象地帮助开发工程师成长,有助于团队代码规约文化的形成。积小流成大海,积
全书分为17章,分别讲解了基本数据类型、枚举和数组、运算符、表达式和语句、类、对象和接口、面向对象的几个基本原则、重要的设计模式、常用实用类、Java Swing图形用户界面、对话框、Java输入/输出流、泛型与集合框架、JDBC数据库操作、Java多线程机制、Java网络基础以及Java Applet等内容。 本书适合作为高等院校计算机专业Java语言程序设计以及面向对象语言课程的教材。
本书提供了300个完整的Java案例,从算法上分为数学、搜索、回溯、递归、排序、迭代、贪心和动态规划等; 从数据结构上分为字符串、数组、指针、区间、队列、矩阵、堆栈、链表、哈希表、线段树、二叉树、二叉搜索树和图结构等。本书针对经典算法,基于相关的数据结构,将问题描述、问题示例、代码实现及运行结果相结合进行讲解,逻辑清晰,内容丰富,可作为程序开发人员及其他IT从业者学习和提升算法能力的参考书,也可作为高校计算机相关专业的教材。
本书详细讲解了Java EE中Spring、Spring MVC和MyBatis三大框架(SSM)的基础知识和实际应用。为了更好地帮助读者学习SSM框架,本书以大量案例介绍了SSM框架的基本思想、方法和技术。 全书共20章,分四部分介绍。第1~5章为第1部分,主要讲解Spring框架的相关知识,内容包括Spring入门、Spring IoC、Spring Bean、Spring AOP以及Spring的事务管理;第6~8章为第2部分,主要讲解MyBatis的相关知识,内容包括MyBatis开发入门、映射器以及动态SQL;第9~18章为第3部分,主要讲解Spring MVC的相关知识,内容包括Spring MVC入门、Controller、类型转换和格式化、数据绑定和表单标签库、拦截器、数据验证、国际化、统一异常处理、文件的上传和下载以及EL与JSTL;第19章、第20章为第4部分,主要讲解SSM框架整合的基本思想与实战开发,内容包括SSM框架整合以及基于SSM框架的电子商务平台的设计与实现
本书归纳了Java学习者、工作者在工作和面试中*容易遭遇的技术短板和算法基础,本书把Java编程中的要点、难点和Java程序员的算法基础知识收集在一起,旨在帮助读者有针对性地提高这些看似 司空见惯 的基本功。本书内容分为四个部分,其中*部分主要介绍Java内存管理,这部分是大多数Java程序员*容易忽略的地方 因为Java不像C语言,而且Java提供了垃圾回收机制,因此导致许多Java程序员对内存管理重视不够;第二部分主要介绍Java编程过程中各种常见的陷阱,这些陷阱有的来自李刚老师早年的痛苦经历,有的来自他的众多学生的痛苦经历,都是Java程序员在编程过程中的 前车之鉴 ,希望读者能引以为戒;第三部分主要介绍学习Java的算法基础知识,包括常用数据结构的各种算法实现,这部分内容是大多数Java程序员重视不够的地方,也是大厂面试的常考面试题;第四
《Java系统分析与架构设计》面向软件工程项目实战,内容按照软件项目的生命周期展开,分别为软件项目需求分析、软件项目架构设计(开发架构模式为主)、软件项目模块设计、软件项目的持久层设计(关系型物理表设计、Redis设计、MongoDB设计)、软件项目的部署等。 《Java系统分析与架构设计》共7章,第1章以大型企业项目 中国石油物资采购管理信息系统 为例,详细讲解需求分析技术,如流程图分解、UML用例图设计、UML状态图设计、概念模型分析等;第2章为 软件架构设计 ,讲解架构设计五视图、Java EE架构模式、微服务架构模式、Dubbo 3架构模式、MOM架构模式等内容,同时结合大型分布式项目 电影院综合票务管理平台 进行详细的架构设计示范;第3章为 项目模块设计 ,讲解UML类图、UML时序图设计方法,同时结合项目 新闻系统 与 物流管理系统 进行模块设
本书介绍了Java EE开发非常流行的三个开源框架:Spring MVC、Spring和MyBatis,其中Spring MVC、Spring用的是5.1版本,MyBatis用的是3.5版本。本书重点介绍了如何整合Spring MVC Spring MyBatis进行开发,内容主要包括三部分。*部分介绍Java EE开发的基础知识,以及如何搭建开发环境。第二部分详细讲解MyBatis、Spring和Spring MVC三个框架的用法,并从Eclipse IDE的使用上手,一步步带领读者深入三个框架的核心。这部分是本书的核心内容,因此也是重点部分。这部分并不是简单地讲授三个框架的基本用法,而是真正剖析它们在实际开发场景中面临的挑战及*实践,并对其诸多关键技术实现提供了源代码解读,这样既能加深读者对框架本质的理解,也能直接提升读者的Java功底。第三部分示范开发了一个包含7个表,表之间具有复杂的关联映射、继承映射等关系,且业务也相对复杂的工作流案例,
本书通过图文结合、通俗易懂的讲解方式帮助大家完成多线程并发编程从入门到实践的飞跃。全书分为三部分,*部分Java 并发编程基础篇主要讲解Java 并发编程的基础知识、线程有关的知识和并发编程中的其他相关概念,这些知识在高级篇都会有所使用,掌握了本篇的内容,就为高级篇奠定了基础;第二部分Java 并发编程高级篇讲解了Java 并发包中核心组件的实现原理,让读者知其然,也要知其所以然,熟练掌握了本篇内容,对我们在日常开发高并发、高流量的系统时会大有裨益;第三部分的内容主要是Java并发编程实践,讲解并发组件的使用方法,以及在使用过程中容易遇到的问题和解决方法。
本书通过通俗易懂的语言、丰富实用的实例,详细讲解了使用Java语言和开源框架进行Web程序开发应该掌握的各项技术。其内容主要包括:安装JDK和Tomcat、JSP脚本和页面指令、request和out对象、session和application对象、使用JavaBean、Servlet技术、使用EL表达式、JSTL标签、JDBC连接MySQL、ODBC连接Access、执行查询和存储过程、显示结果集、文件上传与下载、发送邮件、动态报表、处理XML、使用Ajax技术、Struts框架、Hibernate框架以及Spring框架等。后采用三大框架整合开发一个OA员工管理系统综合讲解本书的知识内容。 本书适合使用Java Web进行动态网站开发的初中级读者和编程爱好者,既可作为软件开发人员的参考手册,也可作为高校教师的教学参考书。
本书以学习笔记的形式循序渐进地讲解了使用Java语言的核心知识,并通过具体实例的实现过程讲解了各个知识点的使用方法和流程。本书简洁而不失其技术深度,内容丰富全面,历史资料翔实齐全。并且本书易于阅读,以极简的文字介绍了复杂的案例,同时涵盖了其他同类图书中很少涉及的历史参考资料,对于读者学习Java语言大有帮助。
本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。首先,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。其次,进一步详细介绍了JDK中对并行程序的强大支持,帮助读者可以快速、稳健地进行并行程序开发。再次,详细讨论了有关"锁 的优化和提高并行程序性能级别的方法和思路。第四,介绍了并行的基本设计模式以及Java 8、9、10对并行程序的支持和改进。第五,介绍了高并发框架Akka的使用方法。第六,详细介绍了并行程序的调试方法。后分析Jetty代码并给出一些其在高并发优化方面的举例。《实战java高并发程序设计》第1~2版得到了读者的认可,而今Java 版本一直在变化,新的技术也有迭代,本书更要与时俱进,进行一些深层技术的更新,如GC一些优化方式等等。
全书分为两部分。*部分为15个上机实践的内容,每个上机实践由若干个实验组成。每个实验由相关知识点、实验目的、实验要求、程序模板、实验指导和实验报告组成。在进行实验之前,首先通过实验目的了解实验要完成的关键主题,通过实验要求知道本实验应达到怎样的标准,然后完成实验模板,填写实验报告。第二部分为主教材的习题参考解答。。 本书适合作为高等院校计算机专业Java语言程序设计以及面向对象语言课程的教材。
本书采用由浅入深、与实际应用紧密结合的方式,利用大量经典实用的实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。本书的实例都基于*的JDK8版本。本书的*特色是以6条主线贯穿书:面向对象编程思想、Java语言的语法、Java虚拟机执行Java程序的原理、在实际项目中的运用、设计模式和性能优化技巧。另外,本书还贯穿了Oracle公司的OCJP(Oracle Certified Java Programmer)认证的考试要点。
2018 年是中国区块链发展的元年,火热的市场环境下,各互联网公司纷纷试水区块链落地项目。本书以区块链原理及其对应的Java 实现为主线展开,详细剖析区块链底层技术,主要内容包括区块链的底层架构、密码学原理、P2P 网络原理、分布式一致性算法、知名公链区块设计、知名公链区块存储技术、知名公链币的设计、联盟链管理后台的原理等。读者在学完本书后,可自行设计联盟链。本书内容基于Java 语言,为读者打开了区块链底层研发大门。
本书讲述Apache Flink大数据框架的原理,以及如果将Apache Flink应用于大数据的实时流处理、批处理、批流一体分析等各个场景。通过原理深入学习和实践示例、案例的学习应用,使读者了解并掌握Apache Flink流处理的框架的基本原理和技能,接近理论与实践的距离。 全书共分为8章,主要内容包括Flink架构与集群安装、Flink开发环境准备(基于IntelliJ IDEA和Maven)、开发Flink实时数据处理程序、Flink流数据分析、时间和水印概念、窗口操作、状态和容错、侧输出流、Flink流连接器、Flink流处理案例、开发Flink批数据处理程序、使用Table API进行数据处理、Flink on YARN、基于Flink构建批流一体数仓、基于Flink和Iceberg数据湖构建实时数仓。本书源码全部在Apache Flink 1.13.2上调试成功,所有示例和案例均提供Scala语言和Java语言两套API的实现(第8章除外),供读者参考。 本书系统讲解了Apach