书籍详情
Jakarta Commons Cookbook中文版
作者:(美)奥布莱恩
出版社:清华大学出版社
出版时间:2006-11-01
ISBN:9787302139645
定价:¥45.00
购买这本书可以去
内容简介
Java一直承诺向开发人员提供可重用、模块化和可移植的特性。开发者无需从头构建,而是可以对已有的框架和组件进行扩展,或按需定制。一个典型的例子就是万维网联盟(W3C)定义的DOM接口。应用程序开发人员很少会去编写自己的XML解析器,但他们常常编写自己的组件,而这些组件的功能在一些自由软件库中已经实现了,只是开发者们不知道这些开源组件的存在罢了。本书采用O'Reilly Cookbook系列丛书所惯用的“问题-求解”模式,概述了可供使用的软件库,从而为开发者提供使用这些工具的桥梁。这里仅列出部分本书所涵盖的Commons项目和组件:· 对核心Java语言的扩展,包括字符串和日期操作、字符串编码和参数验证 · 对XML的支持,从解析、生成文档到使用搜索引擎索引XML文档所需的XPath· 模板化框架,它使你能超越JSP的基本功能,不仅Web页面,甚至XML文件或者电子邮件都能够进行模板化· 使用FTP、SMTP、POP、NNTP,特别是HTTP和WebDAV等功能所需的工具· 使用函子进行编程的新方法,包括使用Predicate、Closure、Transformer和Functor替换控制结构,如for和while· 新的Collection和Collection工具,包括LRU Map、predicated collection、适用于Java 1.4的typed collection、filtering iterator和set操作· 对JavaBean的扩展,从bean到map的转换至序列化bean为XML字符串· 提供对矩阵、复数、线性回归支持的新数学工具库· 对Jakarta Commons组件和Maven、Ant协同使用的指导· 日志和编码 仅仅了解一两个有用的工具类是不够的,你必须能意识到其他的可能性,并对所选技术的背景有所了解。如果您希望摆脱令人手忙脚乱的编程方法并熟练掌握Java语言,本书正是您所需要的工具。
作者简介
Timothy M.O’Brien是一位Jakarta社区的活跃成员。而Jakarta是Apache软件基金会(Apache Software Fundation)所属Apache工程的子项目。作为一名顾问人员,Tim致力于提倡采用开源软件,并敦促各组织把参与社区看作一项重要战略。除了专业工作外,他还是一位男中低音歌手,常在芝加哥地区一展歌喉。Tim的编程生涯起始于家乡Massachu setts州的Wellesley,开始时学习的是Basic Four、TRS-80及Commodore64,后来他进入弗吉尼亚大学(the University of Virginia)学习计算机工程。
目录
第1章 扩展J2SE平台 11
1.0 简介 11
1.1 获取Commons Lang 12
1.2 加入Commons-User邮件列表 13
1.3 获取Commons Lang源代码 14
1.4 自动生成toString()内容 15
1.5 自定义toString()内容 17
1.6 自动生成hashCode()和equals() 19
1.7 自动实现compateTo() 21
1.8 输出数组内容 23
1.9 克隆和反转数组 24
1.10 对象数组和基本类型数组的互相转换 27
1.11 在数组中搜索特定项 29
1.12 由多维数组生成Map 30
1.13 格式化日期 32
1.14 舍入Date对象 34
1.15 截取Date对象 36
1.16 创建枚举量 37
1.17 生成唯一的数字标识符 41
1.18 验证方法参数 44
1.19 度量时间 46
第2章 处理文本 49
2.0 简介 49
2.1 获取StringUtils和WordUtils 50
2.2 检查空字符串 50
2.3 缩减字符串 52
2.4 分割字符串 54
2.5 搜寻嵌套字符串 55
2.6 裁减字符串 57
2.7 字符串的chomp处理 58
2.8 创建醒目的标题 59
2.9 反转字符串 59
2.10 单词折回 61
2.11 检测字符串内容 62
2.12 检测字符串出现频率 64
2.13 解析格式化字符串 66
2.14 计算字符串的差别 68
2.15 使用Commons Codec 70
2.16 获取Commons Codec源代码 71
2.17 计算Soundex编码 72
第3章 JavaBeans 74
3.0 简介 74
3.1 以图形方式表示Beans 75
3.2 获取Commons BeanUtils 78
3.3 获取Commons BeanUtils源代码 79
3.4 访问简单的Bean属性 80
3.5 访问嵌套Bean属性 82
3.6 访问带有下标的Bean属性 84
3.7 访问Map型Bean属性内容 85
3.8 访问一个嵌套的带有下标的Map型简单Bean属性 87
3.9 确定Bean属性的类型 88
3.10 比较Beans 90
3.11 复制Bean属性 93
3.12 Bean的克隆 95
3.13 设置Bean属性 95
3.14 检查可否访问属性 97
3.15 通过Predicates验证Beans 98
3.16 创建包含Bean属性的Map 100
3.17 使用Map封装Bean 101
3.18 创建动态Bean 103
3.19 以字符串形式读取和设置属性 105
第4章 函子 107
4.0 简介 107
4.1 获取Commons Collections 108
4.2 获取Commons Collections源代码 109
4.3 Comparator的功能反转 109
4.4 Comparators的链接 112
4.5 对null的比较 114
4.6 以固定顺序比较 116
4.7 使用简单的Predicates 119
4.8 自定义Predicate 124
4.9 创建复合Predicate 126
4.10 对象转换 130
4.11 创建转换链 131
4.12 实现条件转换 133
4.13 编写Closure 135
4.14 链接多个Closure 136
4.15 使用Closures模拟条件语句 137
4.16 使用Closure模拟循环 140
第5章 Collections 142
5.0 简介 142
5.1 获取Commons Collections 142
5.2 使用循环迭代器 143
5.3 遍历ArrayList 145
5.4 使用Predicate筛选Collection 147
5.5 遍历相异的元素 150
5.6 使用Bag 151
5.7 使用Buffer 156
5.8 创建优先队列 158
5.9 使用阻塞式缓冲区 162
5.10 在Map中存储多个值 165
5.11 根据值检索相应的键 167
5.12 使用大小写不敏感的Map 170
5.13 创建特定类型的Collection和Map 172
5.14 限制Map的取值 176
5.15 限制List的内容 179
5.16 转换Collections 180
5.17 创建LRU缓存 183
5.18 使用LazyMap 184
5.19 统计Collection中对象的出现次数 188
5.20 执行集合操作 190
5.21 不经强制转换检索Map的值 192
第6章 XML 194
6.0 简介 194
6.1 获取 Jakarta Commons Digester 195
6.2 将XML文档转为对象 196
6.3 带命名空间的解析 200
6.4 创建简单XML命令语言 204
6.5 变量置换和XML解析 207
6.6 获取Jakarta Commons Betwixt 210
6.7 转换Beans为XML文档 211
6.8 定制由对象生成的XML 213
6.9 转换XML文档为Beans 216
第7章 应用程序基础设施 219
7.0 简介 219
7.1 获取Commons CLI 219
7.2 解析简单命令行 220
7.3 解析复杂命令行 222
7.4 显示使用方法信息 223
7.5 获取Commons Configuration 225
7.6 通过属性文件配置应用程序 226
7.7 通过XML配置应用程序 227
7.8 使用复合配置 229
7.9 获取Commons Logging 232
7.10 使用抽象日志接口 233
7.11 指定日志的实现 234
7.12 获取Apache Log4J 235
7.13 根据属性文件配置Log4J 236
7.14 通过XML配置Log4J 238
第8章 Math 240
8.0 简介 240
8.1 使用分数 241
8.2 在数组里寻找最大和最小数 243
8.3 处理数字的范围 244
8.4 生成随机变量 246
8.5 获取Commons Math 247
8.6 计算简单的单变量统计量 248
8.7 解线性方程系统 250
8.8 带复数的算术操作 252
8.9 在变量间建立关联 254
8.10 估计剩余处理时间 256
第9章 模板 261
9.0 简介 261
9.1 获取 Commons JEXL 264
9.2 使用表达式语言 265
9.3 在表达式中调用方法 268
9.4 以表达式语言外置逻辑 269
9.5 获取Jakarta Velocity 271
9.6 使用简单模板语言 272
9.7 编写含有条件和循环的模板 274
9.8 在模板引擎中使用宏 277
9.9 在模板中调用方法 280
9.10 获取FreeMarker 284
9.11 使用复杂的脚本引擎 285
9.12 从模板引擎访问XML文档 288
9.13 在Web应用程序中使用Velocity 291
9.14 在Web应用程序中使用FreeMarker 292
9.15 在Eclipse中编写模板 294
第10章 I/O与网络 295
10.0 简介 295
10.1 获取Commons IO 296
10.2 拷贝Stream、byte[]数组、Reader和Writer 297
10.3 关闭Stream、Reader和Writer 298
10.4 输出易于理解的文件大小值 300
10.5 拷贝文件、字符串和URL 302
10.6 递归删除目录 303
10.7 获取目录大小 304
10.8 文件touch操作 304
10.9 筛选文件 305
10.10 测量Stream流量 306
10.11 拆分OutputStream 308
10.12 获取Jakarta ORO 308
10.13 使用glob表达式和Perl5正则表达式列举文件 309
10.14 获取Commons Net 310
10.15 编写FTP客户端 311
10.16 通过SMTP发送邮件 313
10.17 查看POP3邮箱 315
第11章 HTTP和WebDAV 318
11.0 简介 318
11.1 获取Jakarta HttpClient 318
11.2 获取Jakarta HttpClient源代码 320
11.3 执行HTTP GET 321
11.4 在查询字符串中发送参数 323
11.5 通过条件GET检索内容 325
11.6 调试HTTP 328
11.7 执行HTTP POST请求 330
11.8 发送来自文件的POST数据 332
11.9 通过Multipart POST上传文件 333
11.10 Basic型身份验证 335
11.11 NTLM身份验证 338
11.12 处理Cookie 339
11.13 处理重定向 342
11.14 SSL 345
11.15 使用自签发的证书 346
11.16 获取Jakarta Slide 347
11.17 连接WebDAV资源 349
11.18 修改WebDAV资源 351
第12章 搜索和筛选 353
12.0 简介 353
12.1 获取Commons JXPath 354
12.2 通过XPath查询对象图表354
12.3 搜索一组简单对象 357
12.4 在复杂的对象图表中使用XPath查询 359
12.5 获取Jakarta Lucene 362
12.6 为XML文档创建索引 363
12.7 在文档索引中搜索指定词语 368
12.8 找出索引中词语出现的频率 372
1.0 简介 11
1.1 获取Commons Lang 12
1.2 加入Commons-User邮件列表 13
1.3 获取Commons Lang源代码 14
1.4 自动生成toString()内容 15
1.5 自定义toString()内容 17
1.6 自动生成hashCode()和equals() 19
1.7 自动实现compateTo() 21
1.8 输出数组内容 23
1.9 克隆和反转数组 24
1.10 对象数组和基本类型数组的互相转换 27
1.11 在数组中搜索特定项 29
1.12 由多维数组生成Map 30
1.13 格式化日期 32
1.14 舍入Date对象 34
1.15 截取Date对象 36
1.16 创建枚举量 37
1.17 生成唯一的数字标识符 41
1.18 验证方法参数 44
1.19 度量时间 46
第2章 处理文本 49
2.0 简介 49
2.1 获取StringUtils和WordUtils 50
2.2 检查空字符串 50
2.3 缩减字符串 52
2.4 分割字符串 54
2.5 搜寻嵌套字符串 55
2.6 裁减字符串 57
2.7 字符串的chomp处理 58
2.8 创建醒目的标题 59
2.9 反转字符串 59
2.10 单词折回 61
2.11 检测字符串内容 62
2.12 检测字符串出现频率 64
2.13 解析格式化字符串 66
2.14 计算字符串的差别 68
2.15 使用Commons Codec 70
2.16 获取Commons Codec源代码 71
2.17 计算Soundex编码 72
第3章 JavaBeans 74
3.0 简介 74
3.1 以图形方式表示Beans 75
3.2 获取Commons BeanUtils 78
3.3 获取Commons BeanUtils源代码 79
3.4 访问简单的Bean属性 80
3.5 访问嵌套Bean属性 82
3.6 访问带有下标的Bean属性 84
3.7 访问Map型Bean属性内容 85
3.8 访问一个嵌套的带有下标的Map型简单Bean属性 87
3.9 确定Bean属性的类型 88
3.10 比较Beans 90
3.11 复制Bean属性 93
3.12 Bean的克隆 95
3.13 设置Bean属性 95
3.14 检查可否访问属性 97
3.15 通过Predicates验证Beans 98
3.16 创建包含Bean属性的Map 100
3.17 使用Map封装Bean 101
3.18 创建动态Bean 103
3.19 以字符串形式读取和设置属性 105
第4章 函子 107
4.0 简介 107
4.1 获取Commons Collections 108
4.2 获取Commons Collections源代码 109
4.3 Comparator的功能反转 109
4.4 Comparators的链接 112
4.5 对null的比较 114
4.6 以固定顺序比较 116
4.7 使用简单的Predicates 119
4.8 自定义Predicate 124
4.9 创建复合Predicate 126
4.10 对象转换 130
4.11 创建转换链 131
4.12 实现条件转换 133
4.13 编写Closure 135
4.14 链接多个Closure 136
4.15 使用Closures模拟条件语句 137
4.16 使用Closure模拟循环 140
第5章 Collections 142
5.0 简介 142
5.1 获取Commons Collections 142
5.2 使用循环迭代器 143
5.3 遍历ArrayList 145
5.4 使用Predicate筛选Collection 147
5.5 遍历相异的元素 150
5.6 使用Bag 151
5.7 使用Buffer 156
5.8 创建优先队列 158
5.9 使用阻塞式缓冲区 162
5.10 在Map中存储多个值 165
5.11 根据值检索相应的键 167
5.12 使用大小写不敏感的Map 170
5.13 创建特定类型的Collection和Map 172
5.14 限制Map的取值 176
5.15 限制List的内容 179
5.16 转换Collections 180
5.17 创建LRU缓存 183
5.18 使用LazyMap 184
5.19 统计Collection中对象的出现次数 188
5.20 执行集合操作 190
5.21 不经强制转换检索Map的值 192
第6章 XML 194
6.0 简介 194
6.1 获取 Jakarta Commons Digester 195
6.2 将XML文档转为对象 196
6.3 带命名空间的解析 200
6.4 创建简单XML命令语言 204
6.5 变量置换和XML解析 207
6.6 获取Jakarta Commons Betwixt 210
6.7 转换Beans为XML文档 211
6.8 定制由对象生成的XML 213
6.9 转换XML文档为Beans 216
第7章 应用程序基础设施 219
7.0 简介 219
7.1 获取Commons CLI 219
7.2 解析简单命令行 220
7.3 解析复杂命令行 222
7.4 显示使用方法信息 223
7.5 获取Commons Configuration 225
7.6 通过属性文件配置应用程序 226
7.7 通过XML配置应用程序 227
7.8 使用复合配置 229
7.9 获取Commons Logging 232
7.10 使用抽象日志接口 233
7.11 指定日志的实现 234
7.12 获取Apache Log4J 235
7.13 根据属性文件配置Log4J 236
7.14 通过XML配置Log4J 238
第8章 Math 240
8.0 简介 240
8.1 使用分数 241
8.2 在数组里寻找最大和最小数 243
8.3 处理数字的范围 244
8.4 生成随机变量 246
8.5 获取Commons Math 247
8.6 计算简单的单变量统计量 248
8.7 解线性方程系统 250
8.8 带复数的算术操作 252
8.9 在变量间建立关联 254
8.10 估计剩余处理时间 256
第9章 模板 261
9.0 简介 261
9.1 获取 Commons JEXL 264
9.2 使用表达式语言 265
9.3 在表达式中调用方法 268
9.4 以表达式语言外置逻辑 269
9.5 获取Jakarta Velocity 271
9.6 使用简单模板语言 272
9.7 编写含有条件和循环的模板 274
9.8 在模板引擎中使用宏 277
9.9 在模板中调用方法 280
9.10 获取FreeMarker 284
9.11 使用复杂的脚本引擎 285
9.12 从模板引擎访问XML文档 288
9.13 在Web应用程序中使用Velocity 291
9.14 在Web应用程序中使用FreeMarker 292
9.15 在Eclipse中编写模板 294
第10章 I/O与网络 295
10.0 简介 295
10.1 获取Commons IO 296
10.2 拷贝Stream、byte[]数组、Reader和Writer 297
10.3 关闭Stream、Reader和Writer 298
10.4 输出易于理解的文件大小值 300
10.5 拷贝文件、字符串和URL 302
10.6 递归删除目录 303
10.7 获取目录大小 304
10.8 文件touch操作 304
10.9 筛选文件 305
10.10 测量Stream流量 306
10.11 拆分OutputStream 308
10.12 获取Jakarta ORO 308
10.13 使用glob表达式和Perl5正则表达式列举文件 309
10.14 获取Commons Net 310
10.15 编写FTP客户端 311
10.16 通过SMTP发送邮件 313
10.17 查看POP3邮箱 315
第11章 HTTP和WebDAV 318
11.0 简介 318
11.1 获取Jakarta HttpClient 318
11.2 获取Jakarta HttpClient源代码 320
11.3 执行HTTP GET 321
11.4 在查询字符串中发送参数 323
11.5 通过条件GET检索内容 325
11.6 调试HTTP 328
11.7 执行HTTP POST请求 330
11.8 发送来自文件的POST数据 332
11.9 通过Multipart POST上传文件 333
11.10 Basic型身份验证 335
11.11 NTLM身份验证 338
11.12 处理Cookie 339
11.13 处理重定向 342
11.14 SSL 345
11.15 使用自签发的证书 346
11.16 获取Jakarta Slide 347
11.17 连接WebDAV资源 349
11.18 修改WebDAV资源 351
第12章 搜索和筛选 353
12.0 简介 353
12.1 获取Commons JXPath 354
12.2 通过XPath查询对象图表354
12.3 搜索一组简单对象 357
12.4 在复杂的对象图表中使用XPath查询 359
12.5 获取Jakarta Lucene 362
12.6 为XML文档创建索引 363
12.7 在文档索引中搜索指定词语 368
12.8 找出索引中词语出现的频率 372
猜您喜欢