1.1 Java 2微型版和Java世界 1
目 录 1
11.5.4获取行 35 1
9.3.2将属性分解成数据 27 1
第1章J2ME概述 1
第1部分J2ME基础 1
1.1.1 Java出现 2
1.1.2 Java虚拟机 3
1.1.3 J2EE和J2SE 3
1.1.4 J2EE的诞生 4
1.2 J2ME内幕 5
1.1.5展望未来:J2ME 5
1.3 J2ME和无线设备 9
1.4看清J2ME 10
1.5小型计算设备的其他Java平台 10
第2章小型计算技术 12
2.1无线技术 12
10.8.3保持ResultSet对象的打开状态 3 13
2.1.1无线电传输 13
2.2无线电数据网络 15
2.1.2无线电传输的限制 15
2.3微波技术 17
2.4移动无线电网络 18
2.4.1移动电话网络 18
2.4.2数字无线传输 19
2.4.3移动电话和文本输入 20
2.5消息发送 20
2.6个人数字助理 21
2.7移动电源 22
2.8机顶盒 23
2.9智能卡 24
第3章J2ME架构和开发环境 25
3.1 J2ME架构 25
3.3运行时环境 26
3.2 对小型计算设备的要求 26
3.3.1 Java档案文件 27
3.3.2 Java应用程序描述符文件 28
3.4 MIDlet编程 29
3.4.2用户界面 31
3.4.3设备数据 31
3.4.1事件处理 31
3.5 J2ME的Java语言 32
3.6 J2ME软件开发包 34
3.7 J2ME 风格的Hello World 35
3.7.1编译Hello World 38
3.7.2运行Hello World 38
3.7.3部署Hello World 39
3.7.4当MIDlet不能正常工作时 40
3.8多个MIDlet组成的MIDlet包 41
3.9.1创建和运行工程 43
3.9 J2ME无线工具包 43
3.9.2 Hello World工程 46
3.9.3因特网上的MIDlet 47
第4章J2ME最佳实践和设计模式 49
4.1在J2ME世界中工作的现实 49
4.2最佳实践 50
4.2.1 应用程序越简单越好 50
4.2.2应用程序越小越好 50
第7章低层显示:Canvas 1 51
4.2.3限制对内存的使用 51
4.2.4将计算交给服务器完成 52
4.2.5管理应用程序对网络连接的使用 53
4.2.6简化用户界面 54
4.2.7使用局部变量 55
4.2.8不使用字符串加法 56
4.2.9避免同步 57
4.2.10 ThreadGroup类的解决方案 57
4.2.11从Web服务器下载代码 58
4.2.12从JAD文件中读取设置 58
4.2.13利用下拉列表框 59
4.2.14减小网络流量 60
4.2.15处理时间 60
4.2.16自动数据同步 61
4.2.1 8仔细考虑startApp()方法的内容 62
4.2.17更新改变的数据 62
第2部分J2ME用户界面 64
5.1 J2ME用户界面 64
第5章Command,Item和Event处理 64
5.2 Display类 65
5.3掌上操作系统模拟器 68
5.4Command类 69
5.5 Item类 75
5.6例外处理 80
5.7快速参考指南 84
第6章高层显示:Screen 87
6.1 Screen类 87
6.2 Alert类 88
6.3 Form类 94
6.4 Item类 97
6.4.1 ChoiceGroup类 98
6.4.2 DateField类 106
6.4.3 Gauge类 109
6.4.4 StringItem类 116
6.4.5 TextField类 119
6.4.6 ImageItem类 125
6.5 List类 129
6.6 TextBox类 138
6.7 Ticker类 141
6.8快速参考指南 144
7.1 Canvas概述 151
7.1.1 Canvas的布局 152
7.1.2相称的坐标 152
7.1.3 笔 153
7.1.4绘画 153
7.1.5 showNotify()和hideNotify() 155
7.2用户交互 155
7.2.1使用键盘编码器 155
7.2.2使用游戏操作 161
7.2.3使用指针设备 166
7.3 Graphics 171
7.3.1 画笔的风格和颜色 171
7.3.2直线 173
7.3.3矩形 174
7.3.4圆弧 179
7.3.5文本 183
7.3.6图像 189
7.3.7移动文本和图像 196
7.4裁剪的区域 200
7.5动画 203
7.6快速参考指南 204
第3部分J2ME数据管理 209
第8章记录管理系统 209
8.1记录存储 209
8.1.2记录存储器的范围 210
8.1.1记录存储器 210
8.1.3建立记录存储器 211
8.2读写记录 214
8.2.1创建一条新记录,并且读取一条已存在的记录 215
8.2.2读写复杂数据类型的记录 220
8.3记录枚举表 226
8.3.1把简单数据类型的记录读入RecordEnumeration中 228
8.3.2把复杂数据类型的记录读到RecordEnumeration中 232
8.4排序记录 237
8.4.1排序RecordEnumeration 中的单数据类型的记录 238
8.4.2排序RecordEnumeration 中的复杂数据类型的记录 243
8.5查询记录 249
8.5.1查询单数据类型的记录 250
8.5.2查询复杂数据类型的记录 255
8.6 RecordListener 261
8.7快速参考指南 262
第9章J2ME的数据库概念 266
9.1数据 266
9.3数据库模式 267
9.2数据库 267
9.3.1 标识信息 268
9.3.3定义数据 273
9.3.4规格化数据 275
9.3.5数据分组 276
9.3.8依赖传递 278
9.3.6创建主码 278
9.3.7功能依赖 278
9.3.9外码 279
9.3.10参考一致性 279
9.4索引的技巧 280
9.4.1动态索引 281
9.4.2使用索引的缺点 282
9.4.3聚集码 282
9.4.6精确匹配和局部匹配 283
9.4.5可选的行 283
9.4.4派生码 283
9.4.7语音匹配的查询 284
第1 0章JDBC对象 285
10.1 JDBC的概念 285
10.2 JDBC驱动器的类型 286
10.2.1类型1:JDBC到ODBC的驱动器 286
10.2.2类型2:Java/本地代码的驱动器 286
10.4.1装载JDBC驱动器 287
10.2.3类型3的JDBC驱动器 287
1 0.4 JDBC过程概述 287
10.3 JDBC包 287
10.2.4类型4的JDBC驱动器 287
10.4.3创建与执行SQL语句 288
10.4.2 连接DBMS 288
10.4.4处理DBMS返回的数据 289
10.4.5 中断和DBMS的连接 290
10.5数据库连接 290
10.5.1连接 290
10.5.2超时 293
10.5.3 连接池 294
10.6语句对象 294
10.6.1 Statement 对象 295
10.6.2 PreparedStatement对象 297
10.6.3 CallableStatement 对象 298
10.7 ResultSet 300
10.7.1 读取ResultSet 301
10.7.2可滚动的ResultSet 302
10.7.3指定返回的行数 304
10.7.4 可更新的ResultSet 306
10.8事务处理 309
10.8.1 保存点 310
10.8.2批处理语句 312
10.8.4 RowSet 314
10.9 数据 315
10.8.5自动生成的主码 315
10.10数据类型 316
10.11例外 317
10.12快速参考指南 317
第11章JDBC和内嵌的SQ L 336
11.1程序模式 336
11.1.1模式A的程序 337
11.1.2模式B的程序 338
11.2 表 341
11.2.1创建表 341
11.2.2删除表 343
11.3索引 343
11.3.1创建索引 343
11.3.2删除索引 345
11.4在表中插入数据 345
11.4.2在列中插入系统日期 346
11.4.1插入行 346
11.4.3在列中插入系统时间 347
11.4.4在列中插入时间戳 347
11.5从表中选择数据 348
11.5.1从表中选择所有数据 348
11.5.2查找一列 349
11.5.3获取多列 350
11.5.6 AND、OR和NOT子句 351
11.5.5获取行和列 351
11.5.7连接多个组合表达式 353
11.5.8等号与不等号 354
11.5.9小于号和大于号 355
11.5.10小于等于号和大于等于号 356
11.5.1 1 Between操作符 357
11.5.12 LIKE操作符 357
11.5.13 IS NULL操作符 358
11.5.14 DISTINCT修饰符 358
11.5.15 IN修饰符 359
11.6.1 ResultSet中的列号 360
11.6元数据 360
11.6.2 的数据类型 361
11.6.3列的名称 361
11.6.4 列的尺寸 362
11.7更新表 362
11.7.1更新行和列 363
11.7.2更新多行 363
11.8从表中删除数据 366
11.9表连接 367
11.9.1 连接两张表 369
11.9.2 父-子连接 370
11.9.3多比较连接 371
11.9.4多表连接 372
11.9.5创建列名限定符 373
11.9.6创建表的别名 374
11.9.7内部和外部连接 374
11.10计算数据 378
11.10.1 SUM() 379
11.10.2 AVG() 380
11.10.3 MIN() 380
11.10.6计算表中的所有行的数目 381
11.10.4 MAX() 381
11.10.5 COUNT() 381
11.10.7返回多个计数值 382
11.10.8计算行的子集 382
11.10.9空值和重复值的问题 383
11.10.10不使用内嵌函数计算 383
11.11分组和排序数据 384
11.11.1 GROUPBY 385
11.1 1.2分组多列 386
11.11.4 对空列的操作 387
11.11.3条件分组 387
11.11.5排序数据 388
11.11.6排序派生的数据 389
11.12子查询 390
11.12.1创建子查询 391
11.12.2条件检测 392
11.13视图 395
11.13.1使用视图的规则 395
11.13.2创建视图 397
11.13.3选择视图中出现的列 397
11.13.6分组和排序视图 398
1 1.13.4创建水平视图 398
11.13.5创建多表视图 398
11.13.7修改视图 399
第4部分J2ME个人信息管理器配置 402
第12章个人信息管理器 402
12.1 PIM数据库 402
12.2联系信息数据库 404
12.3事件数据库 405
12.6模式化PIM程序 406
1 2.5错误处理 406
12.4备忘录数据库 406
12.7快速参考指南 421
第5部分J2ME网络与Web服务 430
第13章通用连接框架 430
13.1 连接 430
1 3.2超文本传输协议 433
13.2.1创建HTTP连接 434
13.2.2从HTTP连接读取数据 435
13.2.3文件协议 440
13.2.4 socket 443
13.3使用HTTP命令的通信管理 447
13.4会话管理 455
13.5作为后台进程的传输 457
13.6快速参考指南 460
第14章Web服务 463
14.1 Web服务的基础 463
14.1.1层 463
14.1.2客户端、资源和构件 465
14.1.3访问服务 465
14.2 J2EE的多层Web服务体系结构 466
14.3客户端层的实现 467
14.4 Web层的实现 468
14.5 EJB层的实现 469
14.6 EIS层的实现 470
14.7 WSDL 内幕 471
14.7.1 WSDL文档 472
14.7.2类型元素 474
14.7.3消息元素 474
14.7.4 portType元素 475
14.7.6端口元素 476
14.7.5绑定元素 476
14.7.7服务元素 477
14.8 J2ME的MIDlet和Web服务 477
14.8.1 JAX-RPC 478
14.8.2 Holder类 479
14.9 远程方法调用的概念 480
14.10 SOAP基础 480
14.10.1 SOAP的功能 481
14.10.2 SOAP消息和交付结构 481
14.11.1 SOAP的单向传输方式 482
14.11 WSDL和 SOAP 482
14.11.2 SOAP的请求-应答传输方式 484
14.11.3 SOAP绑定元素 485
14.11.4 SOAP操作元素 485
14.11.5 SOAP体元素 486
14.11.6 SOAP错误元素 486
14.11.7 SOAP头元素 486
14.11.8 SOAP地址元素 486
14.12 WSDL和HTTP绑定 487
14.13快速参考指南 489