-
分类:ç¼–ç¨‹å¼€å‘ 语言:简体中文 大小:未知 发布时间:18-03-04
䏋颿˜¯å¦ä¹ 资料下载列表,您å¯ä»¥ç‚¹å‡»è¿™äº›æ–‡ ä»¶å进行下载,如果ä¸èƒ½ä¸‹è½½ï¼Œè¯·æŸ¥çœ‹ä¸‹è½½å¸®åŠ© 共享下载链接:《Javaæ ¸å¿ƒæŠ€æœ¯(å·I)基础知识(原书第9版)》[www.minxue.net].pdf 86.05 MB网盘下载链接:《Javaæ ¸å¿ƒæŠ€æœ¯(å·I)基础知识(原书第9版)》[www.minxue.net].pdf 86.05 MB å†…å®¹ä»‹ç» ã€ŠJavaæ ¸å¿ƒæŠ€æœ¯ å·I:基础知识(第9版·英文版)(上ã€ä¸‹å†Œ)》是ç»å…¸çš„《Javaæ ¸å¿ƒæŠ€æœ¯ å·I:基础知识》的最新版。这一版针对Java SE 7å¹³å°è¿›è¡Œäº†å…¨é¢æ›´æ–°ï¼Œä»¥åæ˜ Java SE 7的特性。 å†…å®¹ä»‹ç» Â· · · · · ·《Javaæ ¸å¿ƒæŠ€æœ¯ å·I:基础知识(第9版·英文版)(上ã€ä¸‹å†Œ)》是ç»å…¸çš„《Javaæ ¸å¿ƒæŠ€æœ¯ å·I:基础知识》的最新版。这一版针对Java SE 7å¹³å°è¿›è¡Œäº†å…¨é¢æ›´æ–°ï¼Œä»¥åæ˜ Java SE 7的特性。书ä¸å›Šæ‹¬äº†Java的全部基础知识,æä¾›äº†å¤§é‡å®Œæ•´ä¸”具有实际æ„义的应用示例,详细介ç»äº†Javaè¯è¨€åŸºç¡€ã€é¢å‘对象编程ã€å射与代ç†ã€æŽ¥å£ä¸Žå†…部类ã€äº‹ä»¶ç›‘å¬å™¨æ¨¡åž‹ã€ä½¿ç”¨Swing GUI工具进行图形用户界é¢ç¨‹åºè®¾è®¡ã€æ‰“包应用程åºã€å¼‚常处ç†ã€ç™»å½•ä¸Žè°ƒè¯•ã€æ³›åž‹ç¼–程ã€é›†åˆæ¡†æž¶ã€å¤šçº¿ç¨‹ç‰å†…容。《Javaæ ¸å¿ƒæŠ€æœ¯ å·I:基础知识(第9版·英文版)(上ã€ä¸‹å†Œ)ã€‹é€‚åˆæƒ³å°†Java应用于实际项目的软件开å‘人员ã€é«˜ç‰é™¢æ ¡æ•™å¸ˆå’Œå¦ç”Ÿå‚考阅读。作者简介 · · · · · ·Cay S. Horstmann 是Scala for the Impatient的作者,还与人åˆè‘—了Core JavaServer Faces。他是圣何塞州立大å¦è®¡ç®—机科å¦ä¸“业的教授,还是一åJava Champion,并ç»å¸¸åœ¨å¾ˆå¤šå¼€å‘者大会上演讲。Gary Cornell åœ¨ç¼–ç¨‹æ–¹é¢æ‹¥æœ‰20多年的写作和教育ç»éªŒã€‚他是Apress的创始人之一,编写了很多与开å‘相关的畅销书,是Jolt大奖的获奖者之一,还è£èŽ·è¿‡Visual Basic Magazine的读者选择奖。目录 · · · · · ·ContentsPreface vAcknowledgments ixChapter 1: An Introduction to Java 11.1 Java As a Programming Platform 11.2 The Java “White Paper†Buzzwords 21.2.1 Simple 31.2.2 Object-Oriented 41.2.3 Network-Savvy 41.2.4 Robust 51.2.5 Secure 51.2.6 Architecture-Neutral 61.2.7 Portable 71.2.8 Interpreted 71.2.9 High-Performance 81.2.10 Multithreaded 81.2.11 Dynamic 81.3 Java Applets and the Internet 91.4 A Short History of Java 101.5 Common Misconceptions about Java 13Chapter 2: The Java Programming Environment 172.1 Installing the Java Development Kit 182.1.1 Downloading the JDK 182.1.2 Setting the Executable Path 202.1.3 Installing the Library Source and Documentation 222.1.4 Installing the Core Java Program Examples 232.1.5 Navigating the Java Directories 242.2 Choosing a Development Environment 242.3 Using the Command-Line Tools 252.3.1 Troubleshooting Hints 272.4 Using an Integrated Development Environment 282.4.1 Locating Compilation Errors 322.5 Running a Graphical Application 332.6 Building and Running Applets 36Chapter 3: Fundamental Programming Structures in Java 413.1 A Simple Java Program 423.2 Comments 453.3 Data Types 463.3.1 Integer Types 473.3.2 Floating-Point Types 483.3.3 The char Type 493.3.4 The boolean Type 513.4 Variables 523.4.1 Initializing Variables 533.4.2 Constants 543.5 Operators 553.5.1 Increment and Decrement Operators 563.5.2 Relational and boolean Operators 573.5.3 Bitwise Operators 583.5.4 Mathematical Functions and Constants 593.5.5 Conversions between Numeric Types 603.5.6 Casts 613.5.7 Parentheses and Operator Hierarchy 623.5.8 Enumerated Types 633.6 Strings 643.6.1 Substrings 643.6.2 Concatenation 643.6.3 Strings Are Immutable 653.6.4 Testing Strings for Equality 673.6.5 Empty and Null Strings 683.6.5 Code Points and Code Units 683.6.6 The String API 693.6.7 Reading the Online API Documentation 723.6.8 Building Strings 743.7 Input and Output 763.7.1 Reading Input 763.7.2 Formatting Output 793.7.3 File Input and Output 843.8 Control Flow 863.8.1 Block Scope 863.8.2 Conditional Statements 873.8.3 Loops 913.8.4 Determinate Loops 953.8.5 Multiple Selections—The switch Statement 993.8.6 Statements That Break Control Flow 1023.9 Big Numbers 1053.10 Arrays 1073.10.1 The “for each†Loop 1093.10.2 Array Initializers and Anonymous Arrays 1103.10.3 Array Copying 1113.10.4 Command-Line Parameters 1123.10.5 Array Sorting 1133.10.6 Multidimensional Arrays 1163.10.7 Ragged Arrays 120Chapter 4: Objects and Classes 1254.1 Introduction to Object-Oriented Programming 1264.1.1 Classes 1274.1.2 Objects 1284.1.3 Identifying Classes 1294.1.4 Relationships between Classes 1294.2 Using Predefined Classes 1324.2.1 Objects and Object Variables 1324.2.2 The GregorianCalendar Class of the Java Library 1364.2.3 Mutator and Accessor Methods 1384.3 Defining Your Own Classes 1454.3.1 An Employee Class 1454.3.2 Use of Multiple Source Files 1484.3.3 Dissecting the Employee Class 1494.3.4 First Steps with Constructors 1504.3.5 Implicit and Explicit Parameters 1524.3.6 Benefits of Encapsulation 1534.3.7 Class-Based Access Privileges 1564.3.8 Private Methods 1564.3.9 Final Instance Fields 1574.4 Static Fields and Methods 1574.4.1 Static Fields 1574.4.2 Static Constants 1584.4.3 Static Methods 1594.4.4 Factory Methods 1614.4.5 The main Method 1614.5 Method Parameters 1644.6 Object Construction 1714.6.1 Overloading 1714.6.2 Default Field Initialization 1724.6.3 The Constructor with No Arguments 1734.6.4 Explicit Field Initialization 1744.6.5 Parameter Names 1754.6.6 Calling Another Constructor 1764.6.7 Initialization Blocks 1764.6.8 Object Destruction and the finalize Method 1814.7 Packages 1824.7.1 Class Importation 1824.7.2 Static Imports 1844.7.3 Addition of a Class into a Package 1854.7.4 Package Scope 1884.8 The Class Path 1904.8.1 Setting the Class Path 1924.9 Documentation Comments 1934.9.1 Comment Insertion 1934.9.2 Class Comments 1944.9.3 Method Comments 1954.9.4 Field Comments 1964.9.5 General Comments 1964.9.6 Package and Overview Comments 1974.9.7 Comment Extraction 1984.10 Class Design Hints 199Chapter 5: Inheritance 2035.1 Classes, Superclasses, and Subclasses 2045.1.1 Inheritance Hierarchies 2125.1.2 Polymorphism 2135.1.3 Dynamic Binding 2145.1.4 Preventing Inheritance: Final Classes and Methods 2175.1.5 Casting 2185.1.6 Abstract Classes 2215.1.7 Protected Access 2275.2 Object: The Cosmic Superclass 2285.2.1 The equals Method 2285.2.2 Equality Testing and Inheritance 2305.2.3 The hashCode Method 2345.2.4 The toString Method 2365.3 Generic Array Lists 2435.3.1 Accessing Array List Elements 2465.3.2 Compatibility between Typed and Raw Array Lists 2495.4 Object Wrappers and Autoboxing 2515.5 Methods with a Variable Number of Parameters 2545.6 Enumeration Classes 2565.7 Reflection 2585.7.1 The Class Class 2595.7.2 A Primer on Catching Exceptions 2615.7.3 Using Reflection to Analyze the Capabilities of Classes 2635.7.4 Using Reflection to Analyze Objects at Runtime 2695.7.5 Using Reflection to Write Generic Array Code 2745.7.6 Invoking Arbitrary Methods 2785.8 Design Hints for Inheritance 282Chapter 6: Interfaces and Inner Classes 2856.1 Interfaces 2866.1.1 Properties of Interfaces 2926.1.2 Interfaces and Abstract Classes 2946.2 Object Cloning 2956.3 Interfaces and Callbacks 3026.4 Inner Classes 3056.4.1 Use of an Inner Class to Access Object State 3076.4.2 Special Syntax Rules for Inner Classes 3116.4.3 Are Inner Classes Useful? Actually Necessary? Secure? 3126.4.4 Local Inner Classes 3156.4.5 Accessing final Variables from Outer Methods 3156.4.6 Anonymous Inner Classes 3186.4.7 Static Inner Classes 3226.5 Proxies 3266.5.1 Properties of Proxy Classes 331Chapter 7: Graphics Programming 3337.1 Introducing Swing 3347.2 Creating a Frame 3397.3 Positioning a Frame 3427.3.1 Frame Properties 3457.3.2 Determining a Good Frame Size 3457.4 Displaying Information in a Component 3507.5 Working with 2D Shapes 3567.6 Using Color 3657.7 Using Special Fonts for Text 3697.8 Displaying Images 378Chapter 8: Event Handling 3838.1 Basics of Event Handling 3838.1.1 Example: Handling a Button Click 3868.1.2 Becoming Comfortable with Inner Classes 3918.1.3 Creating Listeners Containing a Single Method Call 3948.1.4 Example: Changing the Look-and-Feel 3958.1.5 Adapter Classes 3998.2 Actions 4038.3 Mouse Events 4118.4 The AWT Event Hierarchy 4198.4.1 Semantic and Low-Level Events 421Chapter 9: User Interface Components with Swing 4259.1 Swing and the Model-View-Controller Design Pattern 4269.1.1 Design Patterns 4269.1.2 The Model-View-Controller Pattern 4289.1.3 A Model-View-Controller Analysis of Swing Buttons 4329.2 Introduction to Layout Management 4339.2.1 Border Layout 4379.2.2 Grid Layout 4399.3 Text Input 4439.3.1 Text Fields 4449.3.2 Labels and Labeling Components 4469.3.3 Password Fields 4479.3.4 Text Areas 4489.3.5 Scroll Panes 4499.4 Choice Components 4529.4.1 Checkboxes 4529.4.2 Radio Buttons 4549.4.3 Borders 4589.4.4 Combo Boxes 4629.4.5 Sliders 4669.5 Menus 4739.5.1 Menu Building 4739.5.2 Icons in Menu Items 4769.5.3 Checkbox and Radio Button Menu Items 4779.5.4 Pop-Up Menus 4799.5.5 Keyboard Mnemonics and Accelerators 4809.5.6 Enabling and Disabling Menu Items 4839.5.7 Toolbars 4889.5.8 Tooltips 4909.6 Sophisticated Layout Management 4929.6.1 The Grid Bag Layout 4949.6.1.1 The gridx, gridy, gridwidth, and gridheight Parameters 4969.6.1.2 Weight Fields 4969.6.1.3 The fill and anchor Parameters 4979.6.1.4 Padding 4979.6.1.5 Alternative Method to Specify the gridx, gridy, idwidth,and gridheight Parameters 4979.6.1.6 A Helper Class to Tame the Grid Bag Constraints 4999.6.2 Group Layout 5059.6.3 Using No Layout Manager 5169.6.4 Custom Layout Managers 5169.6.5 Traversal Order 5219.7 Dialog Boxes 5229.7.1 Option Dialogs 5239.7.2 Creating Dialogs 5339.7.3 Data Exchange 5389.7.4 File Dialogs 5459.7.5 Color Choosers 557Chapter 10: Deploying Applications and Applets 56510.1 JAR Files 56610.1.1 The Manifest 56710.1.2 Executable JAR Files 56810.1.3 Resources 56910.1.4 Sealing 57310.2 Java Web Start 57410.2.1 The Sandbox 57810.2.2 Signed Code 57910.2.3 The JNLP API 58210.3 Applets 59110.3.1 A Simple Applet 59110.3.1.1 Converting Applications to Applets 59510.3.2 The applet HTML Tag and Its Attributes 59610.3.3 The object Tag 59910.3.4 Use of Parameters to Pass Information to Applets 60010.3.5 Accessing Image and Audio Files 60610.3.6 The Applet Context 60710.3.6.1 Inter-Applet Communication 60810.3.6.2 Displaying Items in the Browser 60910.4 Storage of Application Preferences 61010.4.1 Property Maps 61110.4.2 The Preferences API 616Chapter 11: Exceptions, Assertions, Logging, and Debugging 62511.1 Dealing with Errors 62611.1.1 The Classification of Exceptions 62811.1.2 Declaring Checked Exceptions 63011.1.3 How to Throw an Exception 63211.1.4 Creating Exception Classes 63411.2 Catching Exceptions 63511.2.1 Catching Multiple Exceptions 63711.2.2 Rethrowing and Chaining Exceptions 63911.2.3 The finally Clause 64011.2.4 The Try-with-Resources Statement 64411.2.5 Analyzing Stack Trace Elements 64611.3 Tips for Using Exceptions 64911.4 Using Assertions 65311.4.1 Assertion Enabling and Disabling 65411.4.2 Using Assertions for Parameter Checking 65511.4.3 Using Assertions for Documenting Assumptions 65611.5 Logging 65711.5.1 Basic Logging 65811.5.2 Advanced Logging 65811.5.3 Changing the Log Manager Configuration 66111.5.4 Localization 66211.5.5 Handlers 66311.5.6 Filters 66711.5.7 Formatters 66711.5.8 A Logging Recipe 66811.6 Debugging Tips 67711.7 Tips for Troubleshooting GUI Programs 68211.7.1 Letting the AWT Robot Do the Work 68611.8 Using a Debugger 690Chapter 12: Generic Programming 69712.1 Why Generic Programming? 69812.1.1 Who Wants to Be a Generic Programmer? 69912.2 Defining a Simple Generic Class 70012.3 Generic Methods 70212.4 Bounds for Type Variables 70412.5 Generic Code and the Virtual Machine 70612.5.1 Translating Generic Expressions 70812.5.2 Translating Generic Methods 70812.5.3 Calling Legacy Code 71112.6 Restrictions and Limitations 71212.6.1 Type Parameters Cannot Be Instantiated with Primitive Types 71212.6.2 Runtime Type Inquiry Only Works with Raw Types 71212.6.3 You Cannot Create Arrays of Parameterized Types 71312.6.4 Varargs Warnings 71312.6.5 You Cannot Instantiate Type Variables 71512.6.6 Type Variables Are Not Valid in Static Contexts of Generic Classes 71712.6.7 You Cannot Throw or Catch Instances of a Generic Class 71712.6.7.1 You Can Defeat Checked Exception Checking 71812.6.8 Beware of Clashes after Erasure 72012.7 Inheritance Rules for Generic Types 72112.8 Wildcard Types 72312.8.1 Supertype Bounds for Wildcards 72512.8.2 Unbounded Wildcards 72812.8.3 Wildcard Capture 72812.9 Reflection and Generics 73112.9.1 Using Class Parameters for Type Matching 73212.9.2 Generic Type Information in the Virtual Machine 733Chapter 13: Collections 74113.1 Collection Interfaces 74113.1.1 Separating Collection Interfaces and Implementation 74213.1.2 Collection and Iterator Interfaces in the Java Library 74513.1.2.1 Iterators 74513.1.2.2 Removing Elements 74813.1.2.3 Generic Utility Methods 74813.2 Concrete Collections 75113.2.1 Linked Lists 75213.2.2 Array Lists 76213.2.3 Hash Sets 76313.2.4 Tree Sets 76713.2.5 Object Comparison 76813.2.6 Queues and Deques 77413.2.7 Priority Queues 77613.2.8 Maps 77713.2.9 Specialized Set and Map Classes 78213.2.9.1 Weak Hash Maps 78213.2.9.2 Linked Hash Sets and Maps 78313.2.9.3 Enumeration Sets and Maps 78513.2.9.4 Identity Hash Maps 78513.3 The Collections Framework 78713.3.1 Views and Wrappers 79213.3.1.1 Lightweight Collection Wrappers 79313.3.1.2 Subranges 79413.3.1.3 Unmodifiable Views 79413.3.1.4 Synchronized Views 79613.3.1.5 Checked Views 79613.3.1.6 A Note on Optional Operations 79713.3.2 Bulk Operations 79913.3.3 Converting between Collections and Arrays 80013.4 Algorithms 80113.4.1 Sorting and Shuffling 80213.4.2 Binary Search 80513.4.3 Simple Algorithms 80613.4.4 Writing Your Own Algorithms 80813.5 Legacy Collections 81013.5.1 The Hashtable Class 81013.5.2 Enumerations 81013.5.3 Property Maps 81113.5.4 Stacks 81213.5.5 Bit Sets 81313.5.5.1 The “Sieve of Eratosthenes†Benchmark 814Chapter 14: Multithreading 81914.1 What Are Threads? 82014.1.1 Using Threads to Give Other Tasks a Chance 82714.2 Interrupting Threads 83314.3 Thread States 83614.3.1 New Threads 83614.3.2 Runnable Threads 83614.3.3 Blocked and Waiting Threads 83714.3.4 Terminated Threads 83914.4 Thread Properties 83914.4.1 Thread Priorities 84014.4.2 Daemon Threads 84114.4.3 Handlers for Uncaught Exceptions 84114.5 Synchronization 84314.5.1 An Example of a Race Condition 84314.5.2 The Race Condition Explained 84814.5.3 Lock Objects 85014.5.4 Condition Objects 85414.5.5 The synchronized Keyword 85914.5.6 Synchronized Blocks 86414.5.7 The Monitor Concept 86514.5.8 Volatile Fields 86614.5.9 Final Variables 86714.5.10 Atomics 86814.5.11 Deadlocks 86814.5.12 Thread-Local Variables 87114.5.13 Lock Testing and Timeouts 87314.5.14 Read/Write Locks 87414.5.15 Why the stop and suspend Methods Are Deprecated 87514.6 Blocking Queues 87714.7 Thread-Safe Collections 88614.7.1 Efficient Maps, Sets, and Queues 88614.7.2 Copy on Write Arrays 88814.7.3 Older Thread-Safe Collections 88814.8 Callables and Futures 89014.9 Executors 89514.9.1 Thread Pools 89614.9.2 Scheduled Execution 90014.9.3 Controlling Groups of Tasks 90114.9.4 The Fork-Join Framework 90214.10 Synchronizers 90514.10.1 Semaphores 90614.10.2 Countdown Latches 90714.10.3 Barriers 90714.10.4 Exchangers 90814.10.5 Synchronous Queues 90814.11 Threads and Swing 90914.11.1 Running Time-Consuming Tasks 91014.11.2 Using the Swing Worker 91514.11.3 The Single-Thread Rule 923Appendix: Java Keywords 925Index 929· · · · ·...
-
分类:综åˆèµ„æ–™ 语言:简体中文 大小:未知 发布时间:18-03-04
䏋颿˜¯å¦ä¹ 资料下载列表,您å¯ä»¥ç‚¹å‡»è¿™äº›æ–‡ ä»¶å进行下载,如果ä¸èƒ½ä¸‹è½½ï¼Œè¯·æŸ¥çœ‹ä¸‹è½½å¸®åŠ©å…±äº«ä¸‹è½½é“¾æŽ¥ï¼šç”µè„‘æŠ¥2018年第07期[www.minxue.net].pdf 12.19 MB 网盘下载链接:电脑报2018年第07期[www.minxue.net].pdf 12.19 MB å†…å®¹ä»‹ç» ç”µè„‘æŠ¥2018年第7期PDF高清版 电脑报2018年第7期PDF高清版...
-
分类:编程开发 语言:简体中文 大小:未知 发布时间:18-03-02
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 《Java核心技术 卷II 高级特性 (原书第9版)》[www.minxue.net].pdf 146.47 MB 内容介绍 Java领域最有影响力和价值的著作之一,由拥有20多年教学与研究经验的资深Java技术专家撰写(获Jolt大奖),与《Java编程思想》齐名,10余年全球畅销不衰,广受好评。第9版根据Java SE 7全面更新,同时修正了第8版中的不足,系统全面讲解Java语言的核心概念、语法、重要特性和开发方法。本书全面覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、国际化等,详细描述了图形与GUI编程,还涉及安全、远程方法、注解处理、本地方法等。本书对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例代码,能够帮助读者充分理解Java语言并灵活应用。 作者简介Cay S。 Horstmann,圣何塞州立大学计算机科学系教授、Java的倡导者,经常在开发人员会议上发表演讲。他是《Scala for the Impatient》(Addison-Wesley, 2012)的作者,并参与撰写了《Core JavaServerTM Faces,Third Edition》(Prentice Hall, 2010)。Gary Cornell,已经教授程序设计专业课程20余年,并撰写了多部专著。他是Apress的创始人之一。他撰写的程序设计专业书籍十分畅销,曾荣获Jolt大奖,并获得Visual Basic Magazine的读者最喜爱作品大奖。目录译者序前言第1章 流与文件 11.1 流 11.1.1 读写字节 11.1.2 完整的流家族 31.1.3 组合流过滤器 71.2 文本输入与输出 101.2.1 如何写出文本输出 101.2.2 如何读入文本输入 131.2.3 以文本格式存储对象 131.2.4 字符集 161.3 读写二进制数据 201.4 ZIP文档 271.5 对象流与序列化 291.5.1 理解对象序列化的文件格式 341.5.2 修改默认的序列化机制 391.5.3 序列化单例和类型安全的枚举 401.5.4 版本管理 421.5.5 为克隆使用序列化 441.6 操作文件 461.6.1 Path 461.6.2 读写文件 481.6.3 复制、移动和删除文件 491.6.4 创建文件和目录 501.6.5 获取文件信息 511.6.6 迭代目录中的文件 531.6.7 ZIP文件系统 551.7 内存映射文件 561.7.1 缓冲区数据结构 621.7.2 文件加锁机制 641.8 正则表达式 66第2章 XML 762.1 XML概述 762.2 解析XML文档 812.3 验证XML文档 912.3.1 文档类型定义 922.3.2 XML Schema 982.3.3 实用示例 1012.4 使用XPath来定位信息 1132.5 使用命名空间 1192.6 流机制解析器 1212.6.1 使用SAX解析器 1222.6.2 使用StAX解析器 1262.7 生成XML文档 1292.7.1 不带命名空间的文档 1302.7.2 带命名空间的文档 1302.7.3 写出文档 1312.7.4 示例:生成SVG文件 1312.7.5 使用StAX写XML文档 1332.8 XSL转换 140第3章 网络 1513.1 连接到服务器 1513.1.1 套接字超时 1553.1.2 因特网地址 1563.2 实现服务器 1573.2.1 为多个客户端服务 1603.2.2 半关闭 1633.3 可中断套接字 1643.4 获取Web数 1713.4.1 URL和URI 1713.4.2 使用URLConnection获取信息 1733.4.3 提交表单数据 1813.5 发送E-mail 187第4章 数据库编程 1914.1 JDBC的设计 1914.1.1 JDBC驱动程序类型 1924.1.2 JDBC的典型用法 1934.2 结构化查询语言 1944.3 JDBC配置 1984.3.1 数据库URL 1994.3.2 驱动程序JAR文件 1994.3.3 启动数据库 1994.3.4 注册驱动器类 2004.3.5 连接到数据库 2014.4 执行SQL语句 2034.4.1 管理连接、语句和结果集 2064.4.2 分析SQL异常 2074.4.3 组装数据库 2094.5 执行查询操作 2124.5.1 预备语句 2124.5.2 读写LOB 2184.5.3 SQL转义 2194.5.4 多结果集 2204.5.5 获取自动生成键 2214.6 可滚动和可更新的结果集 2224.6.1 可滚动的结果集 2224.6.2 可更新的结果集 2244.7 行集 2284.7.1 构建行集 2284.7.2 被缓存的行集 2294.8 元数据 2314.9 事务 2404.9.1 保存点 2414.9.2 批量更新 2414.9.3 高级SQL类型 2434.10 Web与企业应用中的连接管理 244第5章 国际化 2465.1 Locales 2465.2 数字格式 2515.3 日期和时间 2575.4 排序 2645.4.1 排序强度 2655.4.2 分解 2655.5 消息格式化 270选择格式 2725.6 文本文件和字符集 273源文件的字符编码 2745.7 资源包 2755.7.1 定位资源包 2755.7.2 属性文件 2765.7.3 包类 2775.8 一个完整的例子 278......
-
分类:网站建设 语言:简体中文 大小:未知 发布时间:18-03-02
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 构建高性能WEB站点[www.minxue.net].pdf 47.56 MB 内容介绍 本书围绕如何构建高性能Web站点,从多个方面、多个角度进行了全面的阐述,涵盖了Web站点性能优化的几乎所有内容,包括数据的网络传输、服务器并发处理能力、动态网页缓存、动态网页静态化、应用层数据缓存、分布式缓存、Web服务器缓存、反向代理缓存、脚本解释速度 内容介绍 · · · · · ·本书围绕如何构建高性能Web站点,从多个方面、多个角度进行了全面的阐述,涵盖了Web站点性能优化的几乎所有内容,包括数据的网络传输、服务器并发处理能力、动态网页缓存、动态网页静态化、应用层数据缓存、分布式缓存、Web服务器缓存、反向代理缓存、脚本解释速度、页面组件分离、浏览器本地缓存、浏览器并发请求、文件的分发、数据库I/O优化、数据库访问、数据库分布式设计、负载均衡、分布式文件系统、性能监控等。在这些内容中充分抓住本质并结合实践,通过通俗易懂的文字和生动有趣的配图,让读者充分并深入理解高性能架构的真相。同时,本书充分应用跨学科知识和科学分析方法,通过宽泛的视野和独特的角度,将本书的内容展现得更加透彻和富有趣味。作者简介 · · · · · ·郭欣,曾在腾讯网基础平台研发团队,负责诸多Web应用的开发和技术管理,并致力于性能研究和实践推广.在加入腾讯之前,获得国家系统分析师职称.目前在工作之余从事独立研究,其中包括高性能Web架构和Web敏捷开发框架,并且积极投身开源事业,同时在为SmartcDeveloper系列进行创作.目录 · · · · · ·第1章 绪论1.1 等待的真相1.2 瓶颈在哪里1.3 增加带宽1.4 减少网页中的HTTP请求1.5 加快服务器脚本计算速度1.6 使用动态内容缓存1.7 使用数据缓存1.8 将动态内容静态化1.9 更换Web服务器软件1.10 页面组件分离1.11 合理部署服务器1.12 使用负载均衡1.13 优化数据库1.14 考虑可扩展性1.15 减少视觉等待第2章 数据的网络传输2.1 分层网络模型2.2 带宽2.3 响应时间2.4 互联互通第3章 服务器并发处理能力3.1 吞吐率3.2 CPU并发计算3.3 系统调用3.4 内存分配3.5 持久连接3.6 I/O模型3.7 服务器并发策略第4章 动态内容缓存4.1 重复的开销4.2 缓存与速度4.3 页面缓存4.4 局部无缓存4.5 静态化内容第5章 动态脚本加速5.1 opcode缓存5.2 解释器扩展模块5.3 脚本跟踪与分析第6章 浏览器缓存6.1 别忘了浏览器6.2 缓存协商6.3 彻底消灭请求第7章 Web服务器缓存7.1 URL映射7.2 缓存响应内容7.3 缓存文件描述符第8章 反向代理缓存8.1 传统代理8.2 何为反向8.3 在反向代理上创建缓存8.4 小心穿过代理8.5 流量分配第9章 Web组件分离9.1 备受争议的分离9.2 因材施教9.3 拥有不同的域名9.4 浏览器并发数9.5 发挥各自的潜力第10章 分布式缓存10.1 数据库的前端缓存区10.2 使用memcached10.3 读操作缓存10.4 写操作缓存10.5 监控状态10.6 缓存扩展第11章 数据库性能优化11.1 友好的状态报告11.2 正确使用索引11.3 锁定与等待11.4 事务性表的性能11.5 使用查询缓存11.6 临时表11.7 线程池11.8 反范式化设计11.9 放弃关系型数据库第12章 Web负载均衡12.1 一些思考12.2 HTTP重定向12.3 DNS负载均衡12.4 反向代理负载均衡12.5 IP负载均衡12.6 直接路由12.7 IP隧道12.8 考虑可用性第13章 共享文件系统13.1 网络共享13.2 NFS13.3 局限性第14章 内容分发和同步14.1 复制14.2 SSH14.3 WebDAV14.4 rsync14.5 Hashtree14.6 分发还是同步14.7 反向代理第15章 分布式文件系统15.1 文件系统15.2 存储节点和追踪器15.3 MogileFS第16章 数据库扩展16.1 复制和分离16.2 垂直分区16.3 水平分区第17章 分布式计算17.1 异步计算17.2 并行计算第18章 性能监控18.1 实时监控18.2 监控代理18.3 系统监控18.4 服务监控18.5 响应时间监控参考文献索引· · · · · ...
-
分类:网站建设 语言:简体中文 大小:未知 发布时间:18-03-02
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 零成本实现Web性能测试[www.minxue.net].pdf 33.55 MB 内容介绍 《零成本实现Web性能测试:基于Apache JMeter》内容丰富、知识点讲解透彻,适合软件测试工程师、测试经理、高等院校相关专业的学生参考学习,同时也可作为相关培训班的教材。 内容介绍 · · · · · ·《零成本实现Web性能测试:基于Apache JMeter》是一本关于Web性能测试的实战书籍,读者朋友们在认真阅读完《零成本实现Web性能测试:基于Apache JMeter》后,相信能够将所学知识应用到生产实践中。《零成本实现Web性能测试:基于Apache JMeter》首先介绍基础的性能测试理论,接着详细介绍如何使用JMeter完成各种类型的性能测试。实战章节中作者以测试某大型保险公司电话销售系统为例,手把手教会读者如何用JMeter来完成一个实际的性能测试任务。《零成本实现Web性能测试:基于Apache JMeter》内容丰富、知识点讲解透彻,适合软件测试工程师、测试经理、高等院校相关专业的学生参考学习,同时也可作为相关培训班的教材。作者简介 · · · · · ·温素剑, 毕业于电子科技大学电子信息工程专业,有多年金融和电信行业软件开发和测试经验。目前在中国平安担任软件测试经理,带领测试团队负责新渠道电销领域的测试工作。专注于自动化测试和性能测试领域,有丰富的Web、Android/iOS自动化测试和性能测试经验。目录 · · · · · ·第1章 性能测试基础 11.1 初识性能测试 11.1.1 性能测试的概念 11.1.2 性能测试的目的 21.1.3 性能测试的常见分类 21.1.4 性能测试的常见指标 31.1.5 性能测试的基本流程 41.2 开源Web性能测试 81.2.1 Web性能测试的重要性 81.2.2 开源Web性能测试介绍 81.2.3 开源性能测试的优势 91.3 本章小结 10第2章 JMeter基础知识 112.1 JMeter简介 112.1.1 JMeter主要特点 122.1.2 JMeter常用术语 132.1.3 JMeter测试结果字段的意义 132.2 JMeter工作原理 142.3 JMeter的安装与目录结构 152.3.1 JMeter安装配置要求 152.3.2 JMeter目录结构 152.4 如何运行JMeter 182.5 配置JMeter 252.6 JMeter与 LoadRunner优缺点对比 252.7 本章小结 26第3章 Web性能测试脚本录制与开发 273.1 JMeter GUI基本操作 273.2 JMeter常用测试元件 303.3 JMeter脚本开发基础 373.3.1 JMeter执行顺序规则 373.3.2 作用域规则 383.3.3 JMeter属性和变量 403.3.4 使用变量参数化测试 403.4 创建Web测试计划 413.5 录制Web测试脚本 473.5.1 使用代理录制Web性能测试脚本 473.5.2 使用Badboy录制Web性能测试脚本 523.6 创建高级Web测试计划 573.7 本章小结 58第4章 数据库性能测试脚本开发 594.1 创建数据库测试计划 594.2 九步轻松搞定Oracle数据库性能测试 624.3 本章小结 68第5章 FTP性能测试脚本开发 695.1 FTP是什么 695.2 创建FTP测试计划 745.3 本章小结 78第6章 LDAP性能测试脚本开发 796.1 LDAP是什么 796.2 创建LDAP测试计划 906.3 LDAP常见操作指南 956.4 创建扩展LDAP测试计划 976.5 本章小结 107第7章 Web Service性能测试脚本开发 1087.1 Web Service是什么 1087.2 创建Web Service测试计划 1127.3 本章小结 115第8章 JMS性能测试脚本开发 1168.1 JMS是什么 1168.2 创建JMS点对点测试计划 1218.3 创建JMS Topic测试计划 1248.4 本章小结 128第9章 服务器监控测试脚本开发 1299.1 创建监控测试计划 1299.2 本章小结 133第10章 详解JMeter测试原件 13410.1 详解JMeter监听器 13410.2 详解JMeter逻辑控制器 14410.3 详解JMeter配置元件 16110.4 详解JMeter定时器 18110.5 详解JMeter前置处理器 18710.6 详解JMeter后置处理器 19610.7 详解JMeter采样器 20510.8 详解JMeter其他测试元件 24810.9 本章小结 261第11章 JMeter进阶知识 26211.1 详解JMeter函数和变量 26211.2 详解JMeter正则表达式 28211.3 详解JMeter远程测试 28511.4 详解JMeter最佳实践经验 29111.5 一些小技巧 29711.6 本章小结 299第12章 性能测试结果分析 30012.1 如何分析性能测试结果 30012.2 如何借助监听器发现性能缺陷 30312.2.1 监听器——性能测试分析的基石 30312.2.2 巧用监听器——识别性能缺陷 32212.3 借助Ant实现批量测试和报表生成 33012.4 本章小结 331第13章 JMeter性能测试实战——电话销售系统 33213.1 测试背景和测试目标 33213.2 分析确定性能测试指标 33213.3 录制创建性能测试脚本 33413.4 运行性能测试脚本 33713.5 分析性能测试结果 34013.6 上报性能测试缺陷 34213.7 本章小结 343· · · · · ·...
-
分类:编程开发 语言:简体中文 大小:未知 发布时间:18-03-02
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 java性能优化权威指南(带书签)[www.minxue.net].pdf 157.61 MB 内容介绍 本书由曾任职于Oracle/Sun的性能优化专家编写,系统而详细地讲解了性能优化的各个方面,帮助你学习Java虚拟机的基本原理、掌握一些监控Java程序性能的工具,从而快速找到程序中的性能瓶颈,并有效改善程序的运行性能。 内容介绍 · · · · · ·Java性能优化圣经!Java之父重磅推荐!本书由曾任职于Oracle/Sun的性能优化专家编写,系统而详细地讲解了性能优化的各个方面,帮助你学习Java虚拟机的基本原理、掌握一些监控Java程序性能的工具,从而快速找到程序中的性能瓶颈,并有效改善程序的运行性能。Java性能优化的任何问题,都可以从本书中找到答案!作者简介 · · · · · ·Charlie Hunt现任Salesforce公司的性能工程架构师。曾任Oracle公司首席JVM性能工程师,负责HotSpot Java虚拟机和Java SE类库性能的改进。Charlie拥有美国伊利诺伊理工大学的计算机科学硕士学位、爱荷华州立大学的计算机科学学士学位。Binu John是世界上最大的社交网站创建平台Ning.com的高级性能工程师。他目前的职责是着力改善Ning平台的性能和扩展性,以支持每月数百万PV的访问量。Binu拥有美国爱荷华大学生物医学工程和计算机科学硕士学位。目录 · · · · · ·第1章 策略、方法和方法论 11.1 性能问题的现状 11.2 性能分析的两种方法:自顶向下和自底向上 41.2.1 自顶向下 41.2.2 自底向上 51.3 选择正确的平台并评估系统性能 51.3.1 选择正确的CPU架构 61.3.2 评估系统性能 71.4 参考资料 7第2章 操作系统性能监控 82.1 定义 82.2 CPU使用率 92.2.1 监控CPU使用率:Windows 92.2.2 监控CPU使用率:Windows typeperf 122.2.3 监控CPU使用率:Linux 132.2.4 监控CPU使用率:Solaris 142.2.5 命令行监控CPU使用率:Linux和Solaris 162.3 CPU调度程序运行队列 192.3.1 监控CPU调度程序运行队列:Windows 192.3.2 监控CPU调度程序运行队列:Solaris 212.3.3 监控CPU调度程序运行队列:Linux 212.4 内存使用率 222.4.1 监控内存利用率:Windows 222.4.2 监控内存使用率:Solaris 232.4.3 监控内存使用率:Linux 242.4.4 监控锁竞争:Solaris 252.4.5 监控锁竞争:Linux 262.4.6 监控锁竞争:Windows 272.4.7 隔离竞争锁 272.4.8 监控抢占式上下文切换 272.4.9 监控线程迁移 282.5 网络I/O使用率 282.5.1 监控网络I/O使用率:Solaris 292.5.2 监控网络I/O使用率:Linux 302.5.3 监控网络I/O使用率:Windows 302.5.4 应用性能改进的考虑 312.6 磁盘I/O使用率 312.7 其他命令行工具 342.8 监控CPU使用率:SPARC T系列系统 352.9 参考资料 36第3章 JVM概览 383.1 HotSpot VM的基本架构 383.2 HotSpot VM运行时 403.2.1 命令行选项 403.2.2 VM生命周期 413.2.3 VM类加载 443.2.4 字节码验证 463.2.5 类数据共享 473.2.6 解释器 483.2.7 异常处理 493.2.8 同步 503.2.9 线程管理 513.2.10 C++堆管理 533.2.11 Java本地接口 543.2.12 VM致命错误处理 553.3 HotSpot VM垃圾收集器 563.3.1 分代垃圾收集 563.3.2 新生代 583.3.3 快速内存分配 603.3.4 垃圾收集器 603.3.5 Serial收集器 613.3.6 Parallel收集器:吞吐量为先! 623.3.7 Mostly-Concurrent收集器:低延迟为先! 623.3.8 Garbage-First收集器:CMS替代者 643.3.9 垃圾收集器比较 643.3.10 应用程序对垃圾收集器的影响 653.3.11 简单回顾收集器历史 653.4 HotSpot VM JIT编译器 653.4.1 类型继承关系分析 673.4.2 编译策略 673.4.3 逆优化 683.4.4 Client JIT编译器概览 693.4.5 Server JIT编译器概览 693.4.6 静态单赋值——程序依赖图 693.4.7 未来增强展望 713.5 HotSpot VM自适应调优 713.5.1 Java 1.4.2的默认值 713.5.2 Java 5自动优化的默认值 713.5.3 Java 6 Update 18更新后的默认优化值 733.5.4 自适应Java堆调整 743.5.5 超越自动优化 753.6 参考资料 75第4章 JVM性能监控 774.1 定义 774.2 垃圾收集 784.2.1 重要的垃圾收集数据 784.2.2 垃圾收集报告 784.2.3 垃圾收集数据的离线分析 864.2.4 图形化工具 894.3 JIT编译器 1034.4 类加载 1044.5 Java应用监控 1064.6 参考资料 109第5章 Java应用性能分析 1105.1 术语 1115.1.1 通用性能分析术语 1115.1.2 Oracle Solaris Studio Performance Analyzer术语 1125.1.3 NetBeans Profiler术语 1125.2 Oracle Solaris Studio Performance Analyzer 1125.2.1 支持平台 1135.2.2 下载/安装Oracle Solaris Studio Performance Analyzer 1145.2.3 使用Oracle Solaris Studio Performance Analyzer 抓取性能数据 1145.2.4 查看性能数据 1185.2.5 数据表示 1255.2.6 过滤性能数据 1285.2.7 命令行工具er_print 1295.3 NetBeans Profiler 1355.3.1 支持平台 1365.3.2 下载安装NetBeans Profiler 1365.3.3 开始方法分析会话 1375.3.4 Controls子面板 1435.3.5 Status子面板 1435.3.6 Profiling Results子面板 1435.3.7 Saved Snapshots子面板 1445.3.8 View子面板 1445.3.9 Basic Telemetry子面板 1445.3.10 查看动态结果 1455.3.11 对结果进行快照 1455.3.12 启动内存分析会话 1465.3.13 查看实时结果 1485.3.14 对结果进行快照 1505.3.15 定位内存泄漏 1505.3.16 分析堆转储 1515.4 参考资料 152第6章 Java应用性能分析技巧 1536.1 性能优化机会 1536.2 系统或内核态CPU使用 1546.3 锁竞争 1616.4 Volatile的使用 1716.5 调整数据结构的大小 1726.5.1 StringBuilder或StringBuffer大小的调整 1726.5.2 Java Collection类大小调整 1756.6 增加并行性 1796.7 过高的CPU使用率 1816.8 其他有用的分析提示 1826.9 参考资料 184第7章 JVM性能调优入门 1857.1 方法 1857.1.1 假设条件 1877.1.2 测试基础设施需求 1887.2 应用程序的系统需求 1887.2.1 可用性 1887.2.2 可管理性 1887.2.3 吞吐量 1897.2.4 延迟及响应性 1897.2.5 内存占用 1897.2.6 启动时间 1897.3 对系统需求分级 1907.4 选择JVM部署模式 1907.4.1 单JVM部署模式 1907.4.2 多JVM部署模式 1907.4.3 通用建议 1917.5 选择JVM运行模式 1917.5.1 Client模式或Server模式 1917.5.2 32位/64位 JVM 1927.5.3 垃圾收集器 1927.6 垃圾收集调优基础 1937.6.1 性能属性 1937.6.2 原则 1937.6.3 命令行选项及GC日志 1947.7 确定内存占用 1977.7.1 约束 1977.7.2 HotSpot VM堆的布局 1977.7.3 堆大小调优着眼点 2007.7.4 计算活跃数据大小 2017.7.5 初始堆空间大小配置 2027.7.6 其他考量因素 2037.8 调优延迟/响应性 2047.8.1 输入 2057.8.2 优化新生代的大小 2057.8.3 优化老年代的大小 2077.8.4 为CMS调优延迟 2107.8.5 Survivor空间介绍 2127.8.6 解析晋升阈值 2147.8.7 监控晋升阈值 2157.8.8 调整Survivor空间的容量 2167.8.9 显式的垃圾收集 2227.8.10 并发永久代垃圾收集 2237.8.11 调优CMS停顿时间 2247.8.12 下一步 2257.9 应用程序吞吐量调优 2257.9.1 CMS吞吐量调优 2257.9.2 Throughput收集器调优 2267.9.3 Survivor空间调优 2287.9.4 调优并行垃圾收集线程 2317.9.5 在NUMA系统上部署 2317.9.6 下一步 2327.10 极端示例 2327.11 其他性能命令行选项 2327.11.1 实验性(最近最大)优化 2327.11.2 逃逸分析 2337.11.3 偏向锁 2337.11.4 大页面支持 2347.12 参考资料 236第8章 Java应用的基准测试 2378.1 基准测试所面临的挑战 2378.1.1 基准测试的预热阶段 2388.1.2 垃圾收集 2408.1.3 使用Java Time接口 2408.1.4 剔除无效代码 2418.1.5 内联 2478.1.6 逆优化 2518.1.7 创建微基准测试的注意事项 2568.2 实验设计 2578.3 使用统计方法 2588.3.1 计算均值 2588.3.2 计算标准差 2588.3.3 计算置信区间 2598.3.4 使用假设测试 2608.3.5 使用统计方法的注意事项 2628.4 参考文献 2638.5 参考资料 263第9章 多层应用的基准测试 2649.1 基准测试难题 2649.2 企业级应用基准测试的考量 2669.2.1 定义被测系统 2669.2.2 制定微基准测试 2669.2.3 定义用户交互模型 2679.2.4 定义性能指标 2709.2.5 扩展基准测试 2739.2.6 用利特尔法则验证 2749.2.7 思考时间 2759.2.8 扩展性分析 2789.2.9 运行基准测试 2789.3 应用服务器监控 2819.3.1 GlassFish监控 2819.3.2 监控子系统 2869.3.3 Solaris 2879.3.4 Linux 2889.3.5 Windows 2889.3.6 外部系统的性能 2899.3.7 磁盘I/O 2929.3.8 监控和调优资源池 2939.4 企业级应用性能分析 2949.5 参考资料 295第10章 Web应用的性能调优 29710.1 Web应用的基准测试 29810.2 Web容器的组件 29810.2.1 HTTP连接器 29910.2.2 Servlet引擎 30010.3 Web容器的监控和性能调优 30010.3.1 容器的开发和生产模式 30010.3.2 安全管理器 30110.3.3 JVM调优 30110.3.4 HTTP服务和Web容器 30310.3.5 HTTP监听器 30310.4 最佳实践 31510.4.1 Servlet和JSP最佳实践 31510.4.2 内容缓存 32410.4.3 会话持久化 32810.4.4 HTTP服务器文件缓存 32910.5 参考资料 333第11章 Web Service的性能 33411.1 XML的性能 33411.1.1 XML处理的生命周期 33511.1.2 解析/解编组 33511.1.3 访问 33811.1.4 修改 33811.1.5 序列化/编组 33911.2 验证 33911.3 解析外部实体 34111.4 XML文档的局部处理 34311.5 选择合适的API 34611.6 JAX-WS参考实现栈 34911.7 Web Service基准测试 35011.8 影响Web Service性能的因素 35311.8.1 消息大小的影响 35311.8.2 不同Schema类型的性能特征 35511.8.3 终端服务器的实现 35811.8.4 处理程序的性能 35911.9 最佳性能实践 36111.9.1 二进制负载的处理 36111.9.2 处理XML文档 36511.9.3 使用MTOM发送XML文档 36511.9.4 使用Provider接口 36811.9.5 快速信息集 37011.9.6 HTTP压缩 37211.9.7 Web Service客户端的性能 37311.10 参考资料 374第12章 Java持久化及Enterprise Java Bean的性能 37512.1 EJB编程模型 37612.2 Java持久化API及其参考实现 37612.3 监控及调优EJB容器 37912.3.1 线程池 38012.3.2 Bean池和缓存 38212.3.3 EclipseLink会话缓存 38512.4 事务隔离级 38612.5 Enterprise Java Bean的最佳实践 38712.5.1 简要说明使用的EJB基准测试 38712.5.2 EJB 2.1 38812.5.3 EJB 3.0 40012.6 Java持久化最佳实践 40312.6.1 JPA查询语言中的查询 40312.6.2 查询结果缓存 40512.6.3 FetchType 40612.6.4 连接池 40812.6.5 批量更新 40912.6.6 选择正确的数据库锁策略 41112.6.7 不带事务的读取 41112.6.8 继承 41112.7 参考资料 412附录A 重要的HotSpot VM选项 413附录B 性能分析技巧示例源代码 429B.1 锁竞争实现1 429B.2 锁竞争实现2 439B.3 锁竞争实现3 449B.4 锁竞争实现4 459B.5 锁竞争实现5 469B.6 调整容量变化1 481B.7 调整容量变化2 492B.8 增加并发性的单线程实现 504B.9 增加并发性的多线程实现 514· · · · · ...
-
分类:ç¼–ç¨‹å¼€å‘ 语言:简体中文 大小:未知 发布时间:18-03-02
䏋颿˜¯å¦ä¹ 资料下载列表,您å¯ä»¥ç‚¹å‡»è¿™äº›æ–‡ ä»¶å进行下载,如果ä¸èƒ½ä¸‹è½½ï¼Œè¯·æŸ¥çœ‹ä¸‹è½½å¸®åŠ© 实战Java高并å‘程åºè®¾è®¡[www.minxue.net].pdf 80.01 MB å†…å®¹ä»‹ç» ã€Šå®žæˆ˜Java高并å‘程åºè®¾è®¡ã€‹å†…å®¹ä¸°å¯Œï¼Œå®žä¾‹å…¸åž‹ï¼Œå®žç”¨æ€§å¼ºï¼Œé€‚åˆæœ‰ä¸€å®šJava基础的技术开å‘人员阅读。 å†…å®¹ä»‹ç» Â· · · · · Â·åœ¨è¿‡åŽ»å•æ ¸CPU时代,å•任务在一个时间点åªèƒ½æ‰§è¡Œå•一程åºï¼Œéšç€å¤šæ ¸CPUçš„å‘展,并行程åºå¼€å‘就显得尤为é‡è¦ã€‚《实战Java高并å‘程åºè®¾è®¡ã€‹ä¸»è¦ä»‹ç»åŸºäºŽJava的并行程åºè®¾è®¡åŸºç¡€ã€æ€è·¯ã€æ–¹æ³•和实战。第一,立足于并å‘程åºåŸºç¡€ï¼Œè¯¦ç»†ä»‹ç»Javaä¸è¿›è¡Œå¹¶è¡Œç¨‹åºè®¾è®¡çš„基本方法。第二,进一æ¥è¯¦ç»†ä»‹ç»JDKä¸å¯¹å¹¶è¡Œç¨‹åºçš„强大支æŒï¼Œå¸®åŠ©è¯»è€…å¿«é€Ÿã€ç¨³å¥åœ°è¿›è¡Œå¹¶è¡Œç¨‹åºå¼€å‘。第三,详细讨论有关“é”â€çš„优化和æé«˜å¹¶è¡Œç¨‹åºæ€§èƒ½çº§åˆ«çš„æ–¹æ³•å’Œæ€è·¯ã€‚第四,介ç»å¹¶è¡Œçš„基本设计模å¼åŠJava 8对并行程åºçš„æ”¯æŒå’Œæ”¹è¿›ã€‚第五,介ç»é«˜å¹¶å‘框架Akka的使用方法。最åŽï¼Œè¯¦ç»†ä»‹ç»å¹¶è¡Œç¨‹åºçš„调试方法。《实战Java高并å‘程åºè®¾è®¡ã€‹å†…å®¹ä¸°å¯Œï¼Œå®žä¾‹å…¸åž‹ï¼Œå®žç”¨æ€§å¼ºï¼Œé€‚åˆæœ‰ä¸€å®šJava基础的技术开å‘人员阅读。目录 · · · · · ·第1ç« ã€€èµ°å…¥å¹¶è¡Œä¸–ç•Œ 11.1 何去何从的并行计算 11.1.1 忘掉那该æ»çš„并行 21.1.2ã€€å¯æ€•的现实:摩尔定律的失效 41.1.3ã€€æŸ³æš—èŠ±æ˜Žï¼šä¸æ–地å‰è¿› 51.1.4 光明或是黑暗 61.2ã€€ä½ å¿…é¡»çŸ¥é“çš„å‡ ä¸ªæ¦‚å¿µ 61.2.1ã€€åŒæ¥ï¼ˆSynchronous)和异æ¥ï¼ˆAsynchronous) 71.2.2 并å‘(Concurrency)和并行(Parallelism) 81.2.3 临界区 91.2.4 阻塞(Blocking)和éžé˜»å¡žï¼ˆNon-Blocking) 91.2.5 æ»é”(Deadlock)ã€é¥¥é¥¿ï¼ˆStarvation)和活é”(Livelock) 91.3 并å‘级别 111.3.1 阻塞(Blocking) 111.3.2ã€€æ— é¥¥é¥¿ï¼ˆStarvation-Free) 111.3.3ã€€æ— éšœç¢ï¼ˆObstruction-Free) 121.3.4ã€€æ— é”(Lock-Free) 121.3.5ã€€æ— ç‰å¾…(Wait-Free) 131.4 有关并行的两个é‡è¦å®šå¾‹ 131.4.1 Amdahl定律 131.4.2 Gustafson定律 161.4.3 Amdahl定律和Gustafson定律是å¦ç›¸äº’矛盾 161.5 回到Java:JMM 171.5.1ã€€åŽŸåæ€§ï¼ˆAtomicity) 181.5.2 å¯è§æ€§ï¼ˆVisibility) 201.5.3ã€€æœ‰åºæ€§ï¼ˆOrdering) 221.5.4 哪些指令ä¸èƒ½é‡æŽ’:Happen-Before规则 271.6 å‚考文献 27第2ç« ã€€Java并行程åºåŸºç¡€ 292.1ã€€æœ‰å…³çº¿ç¨‹ä½ å¿…é¡»çŸ¥é“的事 292.2 åˆå§‹çº¿ç¨‹ï¼šçº¿ç¨‹çš„基本æ“作 322.2.1 新建线程 322.2.2 终æ¢çº¿ç¨‹ 342.2.3ã€€çº¿ç¨‹ä¸æ– 382.2.4 ç‰å¾…(wait)和通知(notify) 412.2.5 挂起(suspendï¼‰å’Œç»§ç»æ‰§è¡Œï¼ˆresume)线程 442.2.6 ç‰å¾…线程结æŸï¼ˆjoin)和谦让(yield) 482.3 volatile与Javaå†…å˜æ¨¡åž‹ï¼ˆJMM) 502.4 分门别类的管ç†ï¼šçº¿ç¨‹ç»„ 522.5 驻守åŽå°ï¼šå®ˆæŠ¤çº¿ç¨‹ï¼ˆDaemon) 542.6 先干é‡è¦çš„事:线程优先级 552.7 线程安全的概念与synchronized 572.8 程åºä¸çš„å¹½çµï¼šéšè”½çš„错误 612.8.1ã€€æ— æç¤ºçš„错误案例 612.8.2 并å‘下的ArrayList 622.8.3 并å‘下诡异的HashMap 632.8.4 åˆå¦è€…常è§é—®é¢˜ï¼šé”™è¯¯çš„åŠ é” 662.9 å‚考文献 68第3ç« ã€€JDKå¹¶å‘包 703.1 多线程的团队åä½œï¼šåŒæ¥æŽ§åˆ¶ 703.1.1 synchronized的功能扩展:é‡å…¥é” 713.1.2 é‡å…¥é”çš„å¥½ææ¡£ï¼šConditionæ¡ä»¶ 803.1.3 å…è®¸å¤šä¸ªçº¿ç¨‹åŒæ—¶è®¿é—®ï¼šä¿¡å·é‡ï¼ˆSemaphore) 833.1.4 ReadWriteLockè¯»å†™é” 853.1.5 倒计时器:CountDownLatch 873.1.6ã€€å¾ªçŽ¯æ …æ :CyclicBarrier 893.1.7 线程阻塞工具类:LockSupport 923.2 线程å¤ç”¨ï¼šçº¿ç¨‹æ± 953.2.1ã€€ä»€ä¹ˆæ˜¯çº¿ç¨‹æ± 963.2.2 ä¸è¦é‡å¤å‘明轮å:JDKå¯¹çº¿ç¨‹æ± çš„æ”¯æŒ 973.2.3ã€€åˆ¨æ ¹ç©¶åº•ï¼šæ ¸å¿ƒçº¿ç¨‹æ± çš„å†…éƒ¨å®žçŽ° 1023.2.4 超负载了怎么办:拒ç»ç–ç•¥ 1063.2.5 自定义线程创建:ThreadFactory 1093.2.6 我的应用我åšä¸»ï¼šæ‰©å±•çº¿ç¨‹æ± 1103.2.7 åˆç†çš„é€‰æ‹©ï¼šä¼˜åŒ–çº¿ç¨‹æ± çº¿ç¨‹æ•°é‡ 1123.2.8ã€€å †æ ˆåŽ»å“ªé‡Œäº†ï¼šåœ¨çº¿ç¨‹æ± ä¸å¯»æ‰¾å †æ ˆ 1133.2.9 分而治之:Fork/Join框架 1173.3 ä¸è¦é‡å¤å‘明轮å:JDK的并å‘容器 1213.3.1 超好用的工具类:并å‘集åˆç®€ä»‹ 1213.3.2 线程安全的HashMap 1223.3.3 有关List的线程安全 1233.3.4 高效读写的队列:深度剖æžConcurrentLinkedQueue 1233.3.5 高效读å–:ä¸å˜æ¨¡å¼ä¸‹çš„CopyOnWriteArrayList 1293.3.6 数æ®å…±äº«é€šé“:BlockingQueue 1303.3.7ã€€éšæœºæ•°æ®ç»“构:跳表(SkipList) 1343.4 å‚考资料 136第4ç« ã€€é”çš„ä¼˜åŒ–åŠæ³¨æ„事项 1384.1 有助于æé«˜â€œé”â€æ€§èƒ½çš„å‡ ç‚¹å»ºè®® 1394.1.1 å‡å°é”æŒæœ‰æ—¶é—´ 1394.1.2 å‡å°é”粒度 1404.1.3ã€€è¯»å†™åˆ†ç¦»é”æ¥æ›¿æ¢ç‹¬å é” 1424.1.4 é”分离 1424.1.5 é”粗化 1444.2 Java虚拟机对é”优化所åšçš„努力 1464.2.1 é”åå‘ 1464.2.2 轻é‡çº§é” 1464.2.3ã€€è‡ªæ—‹é” 1464.2.4ã€€é”æ¶ˆé™¤ 1464.3 人手一支笔:ThreadLocal 1474.3.1 ThreadLocal的简å•使用 1484.3.2 ThreadLocalçš„å®žçŽ°åŽŸç† 1494.3.3 对性能有何帮助 1554.4ã€€æ— é” 1574.4.1 与众ä¸åŒçš„å¹¶å‘ç–略:比较交æ¢ï¼ˆCAS) 1584.4.2ã€€æ— é”的线程安全整数:AtomicInteger 1594.4.3 Javaä¸çš„æŒ‡é’ˆï¼šUnsafeç±» 1614.4.4ã€€æ— é”的对象引用:AtomicReference 1624.4.5 带有时间戳的对象引用:AtomicStampedReference 1654.4.6ã€€æ•°ç»„ä¹Ÿèƒ½æ— é”:AtomicIntegerArray 1684.4.7 让普通å˜é‡ä¹Ÿäº«å—åŽŸåæ“ä½œï¼šAtomicIntegerFieldUpdater 1694.4.8ã€€æŒ‘æˆ˜æ— é”ç®—æ³•ï¼šæ— é”çš„Vector实现 1714.4.9 让线程之间互相帮助:细看SynchronousQueue的实现 1764.5 有关æ»é”的问题 1794.6 å‚考文献 183第5ç« ã€€å¹¶è¡Œæ¨¡å¼ä¸Žç®—法 1845.1 探讨å•ä¾‹æ¨¡å¼ 1845.2 ä¸å˜æ¨¡å¼ 1875.3 生产者-æ¶ˆè´¹è€…æ¨¡å¼ 1905.4 高性能的生产者-æ¶ˆè´¹è€…ï¼šæ— é”的实现 1945.4.1ã€€æ— é”çš„ç¼“å˜æ¡†æž¶ï¼šDisruptor 1955.4.2 用Disruptor实现生产者-消费者案例 1965.4.3 æé«˜æ¶ˆè´¹è€…çš„å“应时间:选择åˆé€‚çš„ç–ç•¥ 1995.4.4 CPU Cache的优化:解决伪共享问题 2005.5 Futureæ¨¡å¼ 2045.5.1 Future模å¼çš„主è¦è§’色 2065.5.2 Future模å¼çš„简å•实现 2075.5.3 JDKä¸çš„Futureæ¨¡å¼ 2105.6ã€€å¹¶è¡Œæµæ°´çº¿ 2125.7 并行æœç´¢ 2165.8ã€€å¹¶è¡ŒæŽ’åº 2185.8.1 分离数æ®ç›¸å…³æ€§ï¼šå¥‡å¶äº¤æ¢æŽ’åº 2185.8.2 改进的æ’入排åºï¼šå¸Œå°”æŽ’åº 2215.9 并行算法:矩阵乘法 2265.10 准备好了å†é€šçŸ¥æˆ‘:网络NIO 2305.10.1 基于Socketçš„æœåŠ¡ç«¯çš„å¤šçº¿ç¨‹æ¨¡å¼ 2305.10.2 使用NIO进行网络编程 2355.10.3 使用NIOæ¥å®žçŽ°å®¢æˆ·ç«¯ 2435.11 读完了å†é€šçŸ¥æˆ‘:AIO 2455.11.1 AIO EchoServer的实现 2455.11.2 AIO Echo客户端实现 2485.12 å‚考文献 249第6ç« ã€€Java 8ä¸Žå¹¶å‘ 2516.1 Java 8的函数å¼ç¼–程简介 2516.1.1 函数作为一ç‰å…¬æ°‘ 2526.1.2ã€€æ— å‰¯ä½œç”¨ 2526.1.3 申明å¼çš„(Declarative) 2536.1.4 ä¸å˜çš„对象 2546.1.5 易于并行 2546.1.6 更少的代ç 2546.2 函数å¼ç¼–程基础 2556.2.1 FunctionalInterface注释 2556.2.2 接å£é»˜è®¤æ–¹æ³• 2566.2.3 lambdaè¡¨è¾¾å¼ 2596.2.4 方法引用 2606.3 一æ¥ä¸€æ¥èµ°å…¥å‡½æ•°å¼ç¼–程 2636.4 并行æµä¸Žå¹¶è¡ŒæŽ’åº 2676.4.1 使用并行æµè¿‡æ»¤æ•°æ® 2676.4.2 从集åˆå¾—åˆ°å¹¶è¡Œæµ 2686.4.3ã€€å¹¶è¡ŒæŽ’åº 2686.5 增强的Future:CompletableFuture 2696.5.1 完æˆäº†å°±é€šçŸ¥æˆ‘ 2696.5.2ã€€å¼‚æ¥æ‰§è¡Œä»»åŠ¡ 2706.5.3 æµå¼è°ƒç”¨ 2726.5.4 CompletableFutureä¸çš„å¼‚å¸¸å¤„ç† 2726.5.5 组åˆå¤šä¸ªCompletableFuture 2736.6 读写é”的改进:StampedLock 2746.6.1 StampedLock使用示例 2756.6.2 StampedLockçš„å°é™·é˜± 2766.6.3 有关StampedLockçš„å®žçŽ°æ€æƒ³ 2786.7 原å类的增强 2816.7.1 更快的原å类:LongAdder 2816.7.2 LongAdder的功能增强版:LongAccumulator 2876.8 å‚考文献 288第7ç« ã€€ä½¿ç”¨Akka构建高并å‘ç¨‹åº 2897.1ã€€æ–°å¹¶å‘æ¨¡åž‹ï¼šActor 2907.2 Akka之Hello World 2907.3ã€€æœ‰å…³æ¶ˆæ¯æŠ•é€’çš„ä¸€äº›è¯´æ˜Ž 2937.4 Actor的生命周期 2957.5 监ç£ç–ç•¥ 2987.6 选择Actor 3037.7ã€€æ¶ˆæ¯æ”¶ä»¶ç®±ï¼ˆInbox) 3037.8 消æ¯è·¯ç”± 3057.9 Actor的内置状æ€è½¬æ¢ 3087.10 询问模å¼ï¼šActorä¸çš„Future 3117.11 多个ActoråŒæ—¶ä¿®æ”¹æ•°æ®ï¼šAgent 3137.12ã€€åƒæ•°æ®åº“ä¸€æ ·æ“ä½œå†…å˜æ•°æ®ï¼šè½¯ä»¶äº‹åŠ¡å†…å˜ 3167.13 一个有趣的例å:并å‘ç²’å群的实现 3197.13.1 什么是粒å群算法 3207.13.2 粒å群算法的计算过程 3207.13.3 粒å群算法能åšä»€ä¹ˆ 3227.13.4 使用Akka实现粒å群 3237.14 å‚考文献 330第8ç« ã€€å¹¶è¡Œç¨‹åºè°ƒè¯• 3318.1ã€€å‡†å¤‡å®žéªŒæ ·æœ¬ 3318.2 æ£å¼èµ·èˆª 3328.3 挂起整个虚拟机 3348.4 调试进入ArrayList内部 336· · · · · ·...
-
分类:网站建设 语言:简体中文 大小:未知 发布时间:18-03-02
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 微服务架构与实践(王磊著)完整版[www.minxue.net].pdf 27.96 MB 内容介绍 随着RESTful、云计算、DevOps、持续交付等概念的深入人心,微服务架构逐渐成为系统架构的一个代名词。本书首先从理论出发,介绍了微服务架构的概念、诞生背景、本质特征以及优缺点;然后基于实践,探讨了如何从零开始构建第一个微服务, 内容介绍 · · · · · ·随着RESTful、云计算、DevOps、持续交付等概念的深入人心,微服务架构逐渐成为系统架构的一个代名词。本书首先从理论出发,介绍了微服务架构的概念、诞生背景、本质特征以及优缺点;然后基于实践,探讨了如何从零开始构建第一个微服务,包括Hello World API、Docker 映像构建与部署、日志聚合、监控告警、持续交付流水线等;最后,在进阶部分讨论了微服务的轻量级通信、消费者驱动的契约测试,并通过一个真实的案例描述了如何使用微服务架构改造遗留系统。全书内容丰富,条理清晰,通俗易懂,是一本理论结合实践的微服务架构的实用书籍。 本书不仅适合架构师、开发人员、测试人员以及运维人员阅读,也适合正在尝试使用微服务架构解耦历史遗留系统的团队或者个人参考,希望本书能在实际工作中对读者有所帮助。作者简介 · · · · · ·ThoughtWorks的首席咨询师王磊是国内较早倡导和实践微服务的先行者。王磊是开源软件的爱好者和贡献者,社区活动的参与者,《Ruby Gems开发实战》(Practical RubyGems)一书的译者,GDCR西安的组织者。他于2012年加入ThoughtWorks,为国内外诸多客户提供项目交付和咨询服务;在加入ThoughtWorks之前,曾就职过多家知名外企,具有丰富的敏捷项目实战经验。目前致力于微服务架构、高可用的Web应用以及DevOps的研究与实践。目录 · · · · · ·第1部分 基础篇第1章 单块架构及其面临的挑战 31.1 三层应用架构 41.1.1 三层应用架构的发展 41.1.2 什么是三层架构 51.1.3 三层架构的优势 61.2 单块架构 61.2.1 什么是单块架构 61.2.2 单块架构的优势 71.2.3 单块架构面临的挑战 81.3 小结 12第2章 微服务架构综述 132.1 什么是微服务架构 132.1.1 多微才够微 142.1.2 单一职责 172.1.3 轻量级通信 172.1.4 独立性 192.1.5 进程隔离 202.2 微服务的诞生背景 222.2.1 互联网行业的快速发展 232.2.2 敏捷、精益方法论的深入人心 232.2.3 单块架构系统面临的挑战 232.2.4 容器虚拟化技术 232.3 微服务架构与 SOA 242.3.1 SOA概述 242.3.2 微服务与 SOA 252.4 微服务的本质 262.4.1 服务作为组件 272.4.2 围绕业务组织团队 282.4.3 关注产品而非项目 292.4.4 技术多样性 312.4.5 业务数据独立 322.4.6 基础设施自动化 332.4.7 演进式架构 332.5 微服务不是银弹 342.5.1 分布式系统的复杂度 352.5.2 运维成本 362.5.3 部署自动化 362.5.4 DevOps与组织架构 372.5.5 服务间的依赖测试 372.5.6 服务间的依赖管理 372.6 小结 38第2部分 实践篇第3章 构建第一个服务 413.1 场景分析 413.2 任务拆分 43第4章 Hello World API 454.1 API实现 454.1.1 开发语言 ——Ruby 454.1.2 Web框架——Grape 464.1.3 API的具体实现 474.2 代码测试与静态检查 504.2.1 代码测试 504.2.2 测试覆盖率统计 534.2.3 静态检查 544.2.4 代码复杂度检查 57第5章 构建 Docker映像 615.1 定义 Dockerfile 615.2 配置 Docker主机 635.3 构建 Docker映像 645.4 运行 Docker容器 645.5 发布 Docker映像 655.6 小结 69第6章 部署 Docker映像 716.1基础设施 AWS 716.2基础设施自动化 736.3 部署 Docker映像 806.4自动化部署 816.5 小结 84第7章 持续交付流水线 857.1 持续集成环境 857.2 提交阶段 877.3 验证阶段 917.4 构建阶段 917.5 发布阶段 947.6 小结 96第8章 日志聚合 978.1 日志聚合工具简介 978.2 Splunk的核心 998.3 安装 Splunk索引器 1008.4 安装 Splunk转发器 1018.5 日志查找 1028.6 告警设置 1038.7 小结 104第9章 监控与告警 1059.1 Nagios简介 1059.2 Nagios的工作原理 1079.3 Nagios安装 1089.4 Nagios的配置 1099.5 监控 products-service 1119.6 告警 1139.7 小结 114第10章 功能迭代 11510.1 定义模型 11610.2 持久化模型 11710.3 定义表现形式 11910.4 实现 API 12210.5 服务描述文件 12510.6 小结 127第3部分 进阶篇第11章 微服务与持续交付 13111.1 持续交付的核心 13211.2 微服务架构与持续交付 13311.2.1 开发 13311.2.2 测试 13711.2.3 持续集成 13911.2.4 构建 13911.2.5 部署 14011.2.6 运维 14311.3 小结 144第12章 微服务与轻量级通信机制 14512.1 同步通信与异步通信 14512.1.1 概述 14512.1.2 同步通信与异步通信的选择 14612.2 远程调用 RPC 14712.2.1 远程过程调用的核心 14712.2.2 远程方法调用 14812.2.3 远程过程调用的弊端 14812.3 REST 14912.3.1 概述 14912.3.2 REST的核心 15012.3.3 REST的优势 15212.3.4 REST的不足 15212.3.5 本节小结 15512.4 HAL 15512.4.1 概述 15512.4.2 HAL的核心 15612.4.3 HAL浏览器 16012.5 消息队列 16112.5.1 核心部分 16212.5.2 访问方式 16312.5.3 消息队列的优缺点 16412.6 后台任务处理系统 16512.6.1 核心部分 16512.6.2 服务回调 16612.6.3 一个例子 16712.6.4 后台任务与微服务 16912.7 小结 170第13章 微服务与测试 17113.1 微服务的结构 17113.2 微服务的测试策略 17313.3 微服务的单元测试 17513.3.1 单元测试综述 17513.3.2 单元测试的内容 17613.4 微服务的集成测试 17913.4.1 集成测试综述 17913.4.2 集成测试的实施方法 17913.4.3 集成测试的内容 18013.5 基于消费者驱动的契约测试 18113.5.1 集成测试存在的弊端 18113.5.2 什么是契约 18313.5.3 什么是契约测试 18413.5.4 契约测试的方法 18513.5.5 Pact实现契约测试 18713.5.6 一个例子 19213.5.7 本节小结 20513.6 微服务的组件测试 20513.6.1 组件测试概述 20513.6.2 组件测试的方法 20613.6.3 本节小结 20713.7 微服务的端到端测试 20813.7.1 端到端测试概述 20813.7.2 端到端测试的内容 20813.7.3 本节小结 20913.8 小结 210第14章 使用微服务架构改造遗留系统 21114.1 背景与挑战 21114.2 改造策略 21214.2.1 昀小修改 21214.2.2 功能剥离 21214.2.3 数据解耦 21314.2.4 数据同步 21314.2.5 迭代替换 21414.3 快速开发实践 21514.3.1 快速开发模板 21514.3.2 代码生成工具 21714.3.3 持续集成模板 21714.3.4 一键部署工具 21714.4 微服务架构下的新系统 21814.5 小结 220· · · · ·...
-
分类:建筑工程 语言:简体中文 大小:未知 发布时间:18-02-22
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 钢筋理论重量表及计算公式[www.minxue.net].pdf 136.34 KB 内容介绍 各种钢筋及钢材的理论计算公式,简便,各种砼构件的下料尺寸,造价预算的好帮手 钢筋,我想还是有很多人应该见过,钢筋是指钢筋混凝土用和预应力钢筋混凝土用钢材,其横截面为圆形,有时为带有圆角的方形。而接下来小编要说的是钢筋理论重量表和钢筋重量计算公式。...
-
分类:电子通信 语言:简体中文 大小:未知 发布时间:18-02-21
下面是学习资料下载列表,您可以点击这些文 件名进行下载,如果不能下载,请查看下载帮助 20121019_IC_Card_Specification20_eng[www.minxue.net].pdf 533.78 KB 内容介绍 JCB标准的EMV IC卡技术规范 JCB标准的EMV IC卡技术规范,IC行业的开发人员,尤其是开发日本信用卡标准的不要错过了。...