精通Java核心技术
2003-8
电子工业出版社
刘晓华等编
525
858
无
本书力图用深刻的理论和丰富的实例揭示Java企业版中的最新核心技术,全面扫除Java领域的学习障碍。全书分为两篇,共21章,包括GUI程序设计、线程、本地方法调用、远程方法调用、命名与目录服务、JavaBeans 技术、JSP技术、网络编程、EJB技术、事务处理、基于JMS的消息处理、JavaMail技术、基于JAAS的安全技术、Web服务技术等专业开发者最关心的Java技术内容,使读者对整个J2EE架构有一个全面而透彻的认识。书中的例程对实际的应用开发有非常强的借鉴意义。飞思在线http://www.fecit.com.cn提供全书示例代码下载。
本书适合于专业和准专业的Java程序员阅读,也可作为正在转向Java开发的各类程序员的必备Java参考书。
第1篇 基 础 篇第1章 J2EE概述 31.1 J2EE的产生背景及其优点 31.2 J2EE的体系结构 41.3 J2EE技术概览 61.4 小结 8第2章 Java语言基础 92.1 标识符和关键字 92.2 数据类型和变量 102.3 运算符 122.3.1 算术运算符 122.3.2 赋值运算符 122.3.3 关系运算符 132.3.4 逻辑运算符 132.3.5 位运算符 142.3.6 移位运算符 142.3.7 条件运算符 152.3.8 运算符的优先级 162.4 控制语句 162.4.1 选择语句 162.4.2 循环语句 192.4.3 break和continue语句 202.5 类和对象 212.6 专题讨论:转型 242.6.1 向上转型 242.6.2 向下转型 262.6.3 混合转型 272.7 专题讨论:类的动态加载 282.8 小结 30第3章 GUI程序设计 313.1 事件处理模型 313.2 常用组件 323.2.1 JOptionPane 333.2.2 JFrame 343.2.3 JLabel 353.2.4 JTextField和JPasswordField 373.2.5 JButton 393.2.6 JCheckBox和JRadioButton 423.2.7 JTextArea 473.2.8 JMenu 483.3 键盘和鼠标事件 513.3.1 实例:键盘事件 513.3.2 实例:鼠标事件 533.3.3 实例:Adapter类的使用 563.4 布局管理器 583.4.1 实例:FlowLayout布局 593.4.2 实例:BorderLayout布局 613.4.3 实例:CardLayout布局 653.4.4 实例:GridLayout布局 683.5 Graphics和Java2D 693.5.1 实例:Graphics绘图 693.5.2 实例:Java2D绘图 713.6 常用高级Swing组件的使用 763.6.1 JTree的使用 763.6.2 JTable的使用 783.7 小结 80第2篇 技 术 篇第4章 异常处理 834.1 何谓异常 834.2 使用try和catch捕获异常 844.2.1 实例:异常的捕获 854.3 使用throw和throws引发异常 864.3.1 实例:throw语句的使用 864.3.2 实例:throws语句的使用 874.4 finally关键字 894.4.1 实例:finally关键字的用法 894.5 getMessage和printStackTrace方法 904.5.1 实例:输出异常信息 914.6 创建自己的异常类 924.6.1 实例:用自定义异常类控制端口访问 924.7 小结 94第5章 流和序列化 955.1 字节流 955.1.1 实例:使用字节流进行I/O操作 975.2 字符流 995.2.1 实例:使用FileReader类进行文件操作 1005.3 随机访问文件 1025.3.1 使用RandomAccessFile写文件 1025.3.2 使用RandomAccessFile读文件 1035.4 序列化 1045.4.1 实例:序列化的应用 1055.5 综合实例:典型的IO使用 1065.6 Java NIO的使用 1125.7 小结 115第6章 接口和抽象类 1176.1 接口 1176.1.1 接口的定义 1176.1.2 接口的实现 1186.1.3 接口的扩展 1206.1.4 实例:接口的使用 1206.2 抽象类 1226.2.1 抽象类的概念 1226.2.2 实例:使用抽象类计算图形面积 1236.3 小结 126第7章 线程 1277.1 何谓线程 1277.2 线程的生命周期 1287.3 Thread类和Runnable接口 1297.3.1 实例:通过继承Thread类实现线程体 1307.3.2 实例:通过实现Runnable接口实现线程体 1327.4 线程优先级与线程的调度 1347.4.1 实例:优先级的设置对程序运行的影响 1357.5 线程同步 1377.5.1 实例:用synchronized 关键字实现线程同步 1387.6 线程间通信 1407.6.1 实例:用wait()和notify()方法实现线程间通信 1407.7 小结 142第8章 本地方法调用 1438.1 JNI概述 1438.2 数据类型的对应 1448.2.1 Java字符串与C字符串 1448.2.2 Java数组与C数组 1458.3 Java与C/C++代码的互相调用 1468.3.1 实例:从Java程序调用C/C++代码 1468.3.2 实例:从C/C++程序调用Java代码 1508.4 本地方法中的线程和同步 1568.5 小结 157第9章 远程方法调用 1599.1 RMI概述 1599.2 如何创建RMI应用程序 1619.3 实例:用RMI构建一个简单的分布式系统 1629.3.1 定义远程接口 1639.3.2 实现远程接口和服务器 1649.3.3 编写客户端程序 1669.3.4 运行程序 1679.4 RMI的一些高级话题 1689.5 小结 170第10章 命名与目录服务 17110.1 JNDI的实现原理 17110.1.1 命名与目录服务 17110.1.2 JNDI的体系结构 17210.2 JNDI与LDAP 17510.3 使用JNDI访问命名与目录服务 17710.3.1 实例:访问命名服务 17710.3.2 实例:访问目录服务 17910.4 小结 182第11章 JavaBeans技术 18311.1 何谓Bean 18311.2 Bean的优点 18411.3 实例:编写一个简单的Bean 18411.3.1 编写Bean要遵循的规则 18511.3.2 创建一个简单的Bean 18711.4 Bean的属性 19411.4.1 单值属性 19511.4.2 关联属性 19511.4.3 受限属性 19611.4.4 索引属性 19611.5 属性编辑器与定制器 19611.6 java.beans包 19711.6.1 BeanInfo接口 19811.6.2 SimpleBeanInfo类 19811.6.3 FeatureDescription类 19911.6.4 MethodDescriptor类 20011.6.5 ParameterDescriptor类 20011.6.6 PropertyDescriptor类 20011.6.7 IndexedPropertyDescriptor类 20111.6.8 BeanDescriptor类 20211.6.9 EventSetDescriptor类 20211.6.10 IntroSpector类 20311.7 小结 204第12章 Java网络编程 20512.1 Java网络类和接口 20512.2 InetAddress类 20512.2.1 创建InetAddress对象的方法 20612.2.2 实例:查询IP地址的版本 20712.3 URL和URLConnection类 20912.3.1 实例:URL对象的创建及使用 21112.3.2 实例:使用URLConnection从Web服务器读取文件 21212.4 TCP/IP服务器与客户端套接字 21312.4.1 客户端套接字 21412.4.2 服务器套接字 21612.4.3 实例:C/S环境下的套接字应用程序 21812.5 Datagram套接字 22412.5.1 UDP套接字 22412.5.2 实例:利用DatagramSocket查询端口占用情况 22612.5.3 实例:利用数据报通信的C/S程序 22812.5.4 组播套接字 23012.5.5 实例:组播套接字C/S程序 23112.6 使用Java NIO提高服务端程序的性能 23612.7 小结 241第13章 JDBC数据访问接口 24313.1 JDBC的体系结构 24313.2 JDBC的作用及重要接口 24413.2.1 DriverManager 24513.2.2 Connection 24513.2.3 Statement 24613.2.4 ResultSet 25113.3 连接数据库 25213.3.1 创建指定数据库的URL 25213.3.2 加载驱动程序 25313.3.3 实例:建立数据库连接 25313.4 实例:数据库的增删查改 25413.5 数据库事务 25913.6 高级数据类型 26113.7 数据源在JDBC中的应用 26213.7.1 实例:注册数据源 26313.7.2 实例:查找数据源 26413.7.3 实例:数据源的重新绑定 26613.7.4 实例:删除数据源 26713.8 小结 268第14章 Java Servlets技术 26914.1 Java Servlet概述 26914.1.1 Servlet的功能 26914.1.2 Java Servlet与现有网络技术的差别 27014.1.3 Servlet的生命周期 27014.2 编写HTTP Servlet程序 27214.2.1 实例:一个简单的Servlet程序 27614.3 HTTP POST/GET请求 27914.3.1 实例:Servlet处理POST请求 28314.4 会话跟踪 28714.4.1 实例:会话跟踪Servlet程序 28814.5 Cookie的应用 29014.5.1 实例:使用Cookie的Servlet程序 29114.6 Filter Servlet 29414.7 Listener Servlet 29914.8 小结 302第15章 Java Server Pages技术 30315.1 JSP在Web程序中的应用 30315.1.1 B/S应用开发技术 30315.1.2 JSP技术 30415.1.3 JSP应用 30515.1.4 JSP与XML 30615.1.5 JSP与ASP、PHP 30715.2 JSP语法 30815.2.1 JSP语法概述 30815.2.2 JSP指令 30915.2.3 JSP动作标识 31315.2.4 脚本元素 32215.3 JSP内置对象 32415.3.1 request对象 32415.3.2 实例:使用request对象获取表单参数 32715.3.3 response对象 32915.3.4 实例:URL重定向和定时刷新 32915.3.5 out对象 33015.3.6 session对象 33215.3.7 pageContext对象 33315.3.8 application对象 33315.3.9 config对象 33415.3.10 page对象 33415.4 JavaBean在JSP中的应用 33415.5 标签库的开发 33615.5.1 简单标签 33715.5.2 带有主体和属性的标签 33915.6 在JSP页面的安全 34415.6.1 配置Web服务器的SSL 34415.6.2 配置realms 34515.7 小结 347第16章 事务处理 34916.1 事务的ACID特征 34916.2 J2EE事务服务 35116.3 JTA事务 35316.3.1 UserTransaction接口 35316.3.2 Status接口 35416.3.3 JTA定义的事务属性 35516.4 JTS 35616.5 小结 358第17章 基于JMS的消息处理 35917.1 JMS概述 35917.2 JMS API编程模型 36117.2.1 Administered Objects 36117.2.2 Destinations 36217.2.3 Connections 36217.2.4 Sessions 36317.2.5 Message Producers 36317.2.6 Message Consumers 36417.2.7 Message Listeners 36517.2.8 Message Selectors 36517.2.9 Message 36517.3 JMS Point-to-Point(PTP)模型编程 36717.4 JMS Publish/Subscribe(Pub/Sub)模型编程 38217.5 小结 389第18章 EJB技术 39118.1 何谓EJB 39118.1.1 EJB的设计目标 39118.1.2 EJB容器和服务器 39218.1.3 EJB的体系结构 39318.1.4 EJB的重要特性 39518.1.5 EJB中的角色 39518.1.6 EJB与JavaBean的区别 39618.2 EJB的开发过程 39718.2.1 Home接口 39718.2.2 远程接口 39818.2.3 Bean类 39818.2.4 配置描述器 39818.3 会话Bean 40518.3.1 有状态会话Bean 40618.3.2 无状态会话Bean 41018.3.3 会话Bean的特点及适用场合 41418.4 实体Bean 41518.4.1 实体Bean的开发 41618.4.2 实体Bean的关系 41918.4.3 EJB 查询语言 42418.4.4 在客户端使用EJB 42618.5 消息驱动Bean 43018.6 小结 433第19章 JavaMail技术 43519.1 E-mail协议概述 43519.1.1 SMTP协议 43519.1.2 POP3协议 43619.1.3 IMAP协议 43619.1.4 MIME协议 43619.2 邮件消息模型 43619.2.1 简单消息模型 43719.2.2 Multipart消息模型 43719.3 JavaMail核心类 43819.3.1 Session 43819.3.2 Message 43819.3.3 Address 43919.3.4 Authenticator 44019.3.5 Transport 44019.3.6 Store和Folder 44119.4 发送邮件 44119.5 获取邮件 44719.6 邮件的回复和转发 44919.7 小结 450第20章 基于JAAS的安全技术 45120.1 Java的安全性 45120.2 JAAS概览 45320.3 JAAS核心类 45420.3.1 Subject和Principal 45520.3.2 LoginContext 45520.3.3 LoginModule 45620.3.4 CallbackHandler和Callback 45720.4 认证 45820.4.1 实例:使用JAAS进行认证 45820.5 授权 46320.5.1 实例:声明性授权 46420.5.2 实例:程序性授权 46520.6 小结 466第21章 Web服务技术 46721.1 Web服务体系结构 46721.2 XML解析——JAXP 46921.3 UDDI 47621.3.1 商业实体信息 47821.3.2 商业服务信息 47821.3.3 绑定模板信息 47821.3.4 技术规范信息 47921.4 WSDL 48021.5 SOAP 48321.5.1 常用术语 48421.5.2 SOAP消息 48521.5.3 SOAP Fault 48721.5.4 SOAP编码规则 48821.5.5 SOAP RPC表示 49021.6 Web服务开发 49221.6.1 Servlet作为Web服务的端点 49221.6.2 EJB作为Web服务的端点 49821.7 小结 502附录A 主题词表 503附录B J2EE兼容应用服务器 505附录C 参考资料 526
无