图书目录

目  录

第1篇  Java语法与面向对象技术

 

第1章  开发环境的应用 2 

1.1  Java环境 3

实例001  下载JDK开发工具包 3

  实例002  把JDK工具包安装到指定磁盘 4

  实例003  设置JDK的环境变量 6

实例004  验证Java开发环境 7

实例005  下载并安装JRE执行环境 8

实例006  编程输出星号组成的等腰三角形 9

1.2  开发工具 11

实例007  下载最新的Eclipse 11

实例008  为最新的Eclipse安装中文语言包 12

  实例009  活用Eclipse的工作空间 14

  实例010  在Eclipse项目中编程输出字符表情 15

实例011  为Eclipse添加新的JDK环境 17

实例012  设置Eclipse中文API提示信息 18

实例013  为项目添加类库 20

实例014  使当前项目依赖另一个项目 21

1.3  界面设计器 22

实例015  安装界面设计器 22

实例016  设计Windows系统的运行对话框

界面 23

实例017  设计计算器程序界面 26

实例018  设计关于进销存管理系统的界面 27

第2章  Java基础应用 29

2.1  基本语法 30

实例019  输出错误信息与调试信息 30

实例020  从控制台接收输入字符 31

  实例021  重定向输出流实现程序日志 31

实例022  自动类型转换与强制类型转换 33

2.2  运算符 34

  实例023  加密可以这样简单(位运算) 34

实例024  用三元运算符判断奇数和偶数 35

实例025  更精确地使用浮点数 35

实例026  不用乘法运算符实现2×16 37

实例027  实现两个变量的互换(不借助

第3个变量) 37

2.3  条件语句 38

实例028  判断某一年是否为闰年 38

实例029  验证登录信息的合法性 39

  实例030  为新员工分配部门 40

实例031  用Switch语句根据消费金额计算折扣 41

实例032  判断用户输入月份的季节 42

2.4  循环控制 43

实例033  使用while与自增运算符循环遍历

数组 43

实例034  使用for循环输出杨辉三角 43

  实例035  使用嵌套循环在控制台上输出

九九乘法表 44

实例036  用while循环计算1+1/2!+1/3!…1/20! 45

实例037  for循环输出空心的菱形 46

实例038  foreach循环优于for循环 47

实例039  终止循环体 48

实例040  循环体的过滤器 49

实例041  循环的极限 50

第3章  数组与集合的应用 51 

3.1  数组演练 52

实例042  获取一维数组最小值 52

实例043  将二维数组中的行列互换 53

实例044  利用数组随机抽取幸运观众 54

  实例045  用数组设置JTable表格的列名与列宽 55

3.2  数组操作 57

实例046  数组的下标界限 57

  实例047  按钮控件数组实现计数器界面 58

实例048  复选框控件数组 59

实例049  用数组反转字符串 60

3.3  数组排序与查询 61

  实例050  使用选择排序法 61

实例051  使用冒泡排序法 62

实例052  使用快速排序法 64

实例053  使用直接插入法 65

实例054  使用sort方法对数组进行排序 67

  实例055  反转数组中元素的顺序 68

3.4  常用集合的使用 69

实例056  用动态数组保存学生姓名 69

实例057  用List集合传递学生信息 70

实例058  用TreeSet生成不重复自动排序

随机数组 71

实例059  Map映射集合实现省市级联选择框 73

第4章  字符串处理技术 75 

4.1  格式化字符串 76

实例060  把数字格式化为货币字符串 76

实例061  格式化当前日期 77

实例062  货币金额大写格式 78

实例063  String类格式化当前日期 80

实例064  字符串大小写转换 82

实例065  字符与Unicode码的转换 83

4.2  辨别字符串 84

实例066  判断用户名是否正确 84

  实例067  用户名排序 85

实例068  判断网页请求与FTP请求 86

实例069  判断文件类型 87

实例070  判断字符串是否为数字 89

实例071  验证IP地址的有效性 90

实例072  鉴别非法电话号码 91

4.3  操作字符串 92

实例073  根据标点符号对字符串进行分行 92

实例074  将字符串的每个字符进行倒序输出 94

实例075  获取字符串中汉字的个数 94

实例076  批量替换某一类字符串 95

  实例077  把异常与错误信息显示到窗体中 97

实例078  从字符串中分离文件路径、

文件名及扩展名 98

实例079  判断手机号的合法性 99

  实例080  用字符串构建器追加字符 100

实例081  去掉字符串中的所有空格 101

  实例082  汉字与区位码的转换 102

第5章  面向对象技术应用 103 

5.1  Java中类的定义 104

  实例083  自定义图书类 104

实例084  温度单位转换工具 105

实例085  域的默认初始化值 106

实例086  编写同名的方法 107

实例087  构造方法的应用 108

5.2  修饰符的使用 109

实例088  单例模式的应用 109

实例089  祖先的止痒药方 110

实例090  统计图书的销售量 111

实例091  汉诺塔问题求解 112

实例092  不能重写的方法 113

5.3  包装类的使用 114

  实例093  将字符串转换成整数 114

实例094  整数进制转换器 115

实例095  查看数字的取值范围 116

实例096  ASCII编码查看器 117

实例097  Double类型的比较 118

5.4  面向对象的特征 119

实例098  经理与员工的差异 119

实例099  重写父类中的方法 121

实例100  计算几何图形的面积 122

实例101  提高产品质量的方法 123

实例102  简单的汽车销售商场 124

5.5  Object类的应用 126

实例103  两只完全相同的宠物 126

  实例104  简化equals()方法的重写 127

实例105  重新计算对象的哈希码 129

实例106  简化hashCode()方法的重写 130

实例107  使用字符串输出对象 132

实例108  简化toString()方法的重写 133

5.6  克隆与序列化 134

实例109  Java对象的假克隆 134

实例110  Java对象的浅克隆 135

  实例111  Java对象的深克隆 137

实例112  序列化与对象克隆 139

实例113  深克隆效率的比较 141

实例114  transient关键字的应用 143

5.7  接口和内部类 145

实例115  使用sort()方法排序 145

实例116  简化compareTo()方法的重写 146

实例117  策略模式的简单应用 148

实例118  适配器模式的简单应用 149

实例119  普通内部类的简单应用 151

实例120  局部内部类的简单应用 152

实例121  匿名内部类的简单应用 153

实例122  静态内部类的简单应用 154

 

第2篇  Java高级应用

 

第6章  多线程技术 158 

6.1  线程的基础 159

实例123  新建无返回值的线程 159

  实例124  查看线程的运行状态 160

实例125  查看JVM中的线程名 161

实例126  查看和修改线程名称 163

  实例127  查看和修改线程优先级 165

实例128  使用守护线程 166

实例129  休眠当前线程 167

实例130  终止指定线程 169

实例131  线程的插队运行 170

6.2  线程的同步 171

实例132  非同步的数据读写 171

  实例133  使用方法实现线程同步 172

实例134  使用代码块实现线程同步 174

实例135  使用特殊域变量实现线程同步 175

实例136  使用重入锁实现线程同步 176

实例137  使用线程局部变量实现线程同步 177

实例138  简单的线程通信 179

实例139  简单的线程死锁 180

实例140  解决线程的死锁问题 182

6.3  线程的进阶 183

实例141  使用阻塞队列实现线程同步 183

实例142  新建有返回值的线程 184

  实例143  使用线程池优化多线程编程 186

实例144  Object类中线程相关的方法 187

实例145  哲学家就餐问题 189

实例146  使用信号量实现线程同步 190

实例147  使用原子变量实现线程同步 191

实例148  使用事件分配线程更新Swing控件 193

实例149  使用SwingWorker类完成耗时操作 194

第7章  反射与异常处理 195 

7.1  反射的基础 196

实例150  实例化Class类的5种方式 196

实例151  获得Class对象表示实体的名称 197

实例152  查看类的声明 198

  实例153  查看类的成员 199

实例154  按继承层次对类排序 201

实例155  查看内部类信息 202

7.2  反射的进阶 203

实例156  动态设置类的私有域 203

实例157  动态调用类中的方法 204

实例158  动态实例化类 205

  实例159  创建长度可变的数组 206

实例160  利用反射重写toString()方法 208

实例161  反射与动态代理 209

7.3  常见的未检查型异常 210

实例162  算数异常 210

实例163  数组存值异常 211

实例164  数组下标越界异常 212

  实例165  空指针异常 213

7.4  常见的已检查型异常 214

实例166  类未发现异常 214

实例167  非法访问异常 215

  实例168  文件未发现异常 216

实例169  数据库操作异常 217

7.5  处理异常 218

实例170  方法中抛出异常 218

实例171  方法上抛出异常 219

实例172  自定义异常类 220

实例173  捕获单个异常 221

实例174  捕获多个异常 222

第8章  枚举与泛型的应用 223 

8.1  枚举使用的简介 224

  实例175  查看枚举类型的定义 224

实例176  枚举类型的基本特性 225

实例177  增加枚举元素的信息 226

实例178  选择合适的枚举元素 227

实例179  高效的枚举元素集合 228

实例180  高效的枚举元素映射 229

实例181  遍历枚举接口的元素 230

  实例182  简单的文件合并工具 231

8.2  泛型使用的简介 233

实例183  自定义非泛型栈结构 233

  实例184  使用泛型实现栈结构 234

实例185  自定义泛型化数组类 235

实例186  泛型方法与数据查询 236

实例187  泛型化方法与最小值 238

实例188  泛型化接口与最大值 239

实例189  使用通配符增强泛型 240

  实例190  泛型化的折半查找法 241

第9章  编程常用类 343 

9.1  Calendar类的使用 244

实例191  简单的数字时钟 244

实例192  简单的电子时钟 245

实例193  简单的模拟时钟 246

  实例194  简单的公历万年历 248

实例195  查看生日相关信息 249

9.2  SimpleDateFormat与TimeZone

类的使用 250

实例196  日期格式有效性判断 250

实例197  常见日期格式使用 252

实例198  查看本地时区 253

  实例199  简单的时区转换工具 254

9.3  System类的使用 255

  实例200  查看常用系统属性 255

实例201  重定向标准输出 256

实例202  计算程序运行时间 257

实例203  从控制台输入密码 258

9.4  Math类的使用 259

实例204  角度和弧度的转换 259

实例205  三角函数的使用 260

实例206  反三角函数的使用 261

实例207  双曲函数的使用 262

实例208  指数与对数运算 263

9.5  其他常用类的使用 264

实例209  高精度整数运算 264

实例210  高精度浮点运算 265

实例211  七星彩号码生成器 266

实例212  大乐透号码生成器 267

  实例213  监视JVM内存状态 268

实例214  启动默认文本工具 269

实例215  简单的截图软件 270

第10章  Commons组件 272 

10.1  Commons Lang组件简介 273

实例216  数组元素的增加 273

实例217  数组元素的删除 274

实例218  生成随机字符串 275

实例219  序列化与反序列化 276

  实例220  分数的常见运算 277

实例221  整数取值范围判断 279

10.2  Commons Math组件简介 280

实例222  描述统计学应用 280

  实例223  绘制简单直方图 281

实例224  一元线性回归计算 282

实例225  实数矩阵的运算 283

实例226  复数的常见运算 284

实例227  T分布常用计算 285

10.3  Commons IO组件简介 286

  实例228  简化文件(夹)删除 286

实例229  简化文件(夹)复制 287

实例230  简化文件(夹)排序 288

实例231  简化文件(夹)过滤 289

实例232  简化文件的读写操作 290

10.4  Commons BeanUtils组件简介 291

实例233  设置JavaBean简单属性 291

实例234  设置JavaBean级联属性 293

实例235  动态生成JavaBean 295

实例236  复制JavaBean属性 296

实例237  动态排序JavaBean 298

10.5  其他Commons组件简介 299

实例238  优雅的JDBC代码 299

实例239  结果集与Bean列表 301

  实例240  编写MD5查看器 302

实例241  基于Base64编码 304

实例242  基于Base64解码 305

实例243  发送简单的Email 306

实例244  发送带附件的Email 308

实例245  读取XML文件属性 310

 

第3篇  窗体与控件应用

 

第11章  窗体设计 314

11.1  设置窗体位置 315

实例246  控制窗体加载时的位置 315

实例247  设置窗体在屏幕中的位置 315

  实例248  从上次关闭位置启动窗体 316

实例249  始终在桌面最顶层显示的窗体 317

11.2  设置窗体大小 319

实例250  设置窗体大小 319

实例251  根据桌面大小调整窗体大小 320

  实例252  自定义最大化、最小化和关闭按钮 321

实例253  禁止改变窗体的大小 323

11.3  设置窗体的标题栏 324

实例254  指定窗体标题栏图标 324

实例255  拖动没有标题栏的窗体 325

实例256  取消窗体标题栏与边框 326

实例257  设置闪烁的标题栏 328

11.4  设置窗体的背景 329

实例258  设置窗体背景颜色为淡蓝色 329

实例259  实现带背景图片的窗体 330

实例260  使背景图片自动适应窗体的大小 331

实例261  背景为渐变色的主界面 332

实例262  随机更换窗体背景 334

11.5  窗体形状及应用 335

实例263  椭圆形窗体界面 335

  实例264  钻石形窗体 336

实例265  创建透明窗体 337

11.6  对话框 338

实例266  模态对话框与非模态对话框 338

实例267  信息提示对话框 340

实例268  设置信息提示对话框的图标 341

实例269  文件选择对话框指定数据库备份文件 342

实例270  指定打开对话框的文件类型 343

实例271  文件的保存对话框 344

实例272  为保存对话框设置默认文件名 346

实例273  支持图片预览的文件选择对话框 347

实例274  颜色选择对话框 348

实例275  信息输入对话框 350

实例276  定制信息对话框 350

11.7  MDI窗体的使用 352

实例277  创建内部子窗体 352

实例278  使子窗体最大化显示 353

  实例279  对子窗体进行平铺排列 354

实例280  禁用MDI窗体控制栏中的“最大化”

按钮 355

第12章  窗体特效 357 

12.1  让窗体更有活力 358

  实例281  右下角弹出信息窗体 358

  实例282  淡入淡出的窗体 359

  实例283  窗体顶层的进度条 361

实例284  设置窗体的鼠标光标 362

  实例285  窗体抖动 363

实例286  窗体标题显示计时器 364

实例287 动态展开窗体 365

实例288  仿QQ隐藏窗体 366

实例289  窗体百叶窗登场特效 367

实例290  关闭窗体打开网址 368

12.2  窗体与控件外观 369

实例291  Nimbus外观 369

实例292 本地系统外观 370

实例293  分割的窗体界面 371

实例294  圆周运动的窗体 373

第13章  基本控件应用 375 

13.1  顶层容器的应用 376

实例295  框架容器的背景图片 376

实例296  更多选项的框架容器 377

实例297  拦截事件的玻璃窗格 378

实例298  简单的每日提示信息 379

  实例299  震动效果的提示信息 380

13.2  布局管理器应用 382

实例300  边框布局的简单应用 382

实例301  流式布局的简单应用 383

实例302  网格布局的简单应用 384

  实例303  制作圆形布局管理器 385

实例304  制作阶梯布局管理器 386

13.3  输入控件的应用 387

实例305  可以打开网页的标签 387

实例306  密码域控件的简单应用 389

实例307  给文本域设置背景图片 390

实例308  给文本区设置背景图片 391

实例309  简单的字符统计工具 392

13.4  选择控件的应用 393

实例310  能预览图片的复选框 393

实例311  简单的投票计数软件 394

实例312  单选按钮的简单应用 395

实例313  能显示图片的组合框 396

  实例314  使用滑块来选择日期 398

13.5  菜单控件的应用 400

实例315  模仿记事本的菜单栏 400

实例316  自定义纵向的菜单栏 401

实例317  复选框与单选按钮菜单 402

实例318  包含图片的弹出菜单 404

实例319  工具栏的实现与应用 405

13.6  其他技术的应用 406

实例320  自定义软件安装向导 406

  实例321  查看系统支持的外观 407

实例322  制作软件的闪屏界面 408

实例323  自定义系统托盘图标 410

实例324  使用撤销与重做功能 412

第14章  复合数据类型控件应用 414 

14.1  列表的简单应用 415

实例325  修改列表项显示方式 415

实例326  修改列表项选择模式 416

实例327  列表项的全选与不选 417

实例328  列表元素与提示信息 419

实例329  监听列表项单击事件 420

实例330  监听列表项双击事件 421

14.2  列表的高级应用 422

实例331  实现自动排序的列表 422

实例332  列表项的增加与删除 423

实例333  查找特定的列表元素 425

实例334  包含边框的列表元素 426

实例335  包含图片的列表元素 427

  实例336  可以预览字体的列表 428

14.3  表格的简单应用 430

实例337  表头与列的高度设置 430

实例338  调整表格各列的宽度 431

实例339  设置表格的选择模式 433

实例340  为表头增添提示信息 434

实例341  单元格的粗粒度排序 436

  实例342  实现表格的查找功能 437

14.4  表格的高级应用 438

实例343  在表格中应用组合框 438

实例344  删除表格中选中的行 440

实例345  实现表格的分页技术 442

实例346  为单元格绘制背景色 444

  实例347  实现表格的栅栏效果 445

实例348  单元格的细粒度排序 446

14.5  树控件简单应用 448

  实例349  编写中国省市信息树 448

实例350  树控件常用遍历方式 449

实例351  自定义树节点的图标 451

实例352  监听节点的选择事件 452

实例353  设置树控件选择模式 453

实例354  查看节点的各种状态 455

14.6  树控件高级应用 456

实例355  在树控件中增加节点 456

实例356  在树控件中删除节点 458

实例357  在树控件中查找节点 459

实例358  自定义树节点的外观 460

实例359  为树节点增加提示信息 463

实例360  双击编辑树节点功能 464

第15章  其他高级控件应用 466 

15.1  JTextPane控件的应用 467

  实例361  自定义文档标题的样式 467

实例362  文档中显示自定义图片 468

实例363  检查代码中的括号是否匹配 469

实例364  描红显示100以内的质数 471

15.2  JEditorPane控件的应用 472

实例365  自定义RTF文件查看器 472

实例366  编写简单的浏览器 474

实例367  支持超链接的浏览器 474

  实例368  高亮用户指定的关键字 476

15.3  其他文本控件的应用 477

实例369  只能输入整数的文本域 477

实例370  强制输入合法的整数 478

实例371  使用微调控件调整时间 479

实例372  使用微调控件浏览图片 480

15.4  进度指示器的应用 481

实例373  显示完成情况的进度条 481

  实例374  监听进度条的变化事件 482

实例375  进度监视器控件的应用 484

实例376  监视文件读入的进度 485

15.5  控件组织器的应用 487

实例377  分割面板的简单应用 487

  实例378  为选项卡增加快捷键 488

实例379  为选项卡标题设置图标 489

实例380  记录选项卡的访问状态 490

第16章  控件特效与自定义控件 492 

16.1  控件边框效果 493

实例381  实现标签控件的立体边框 493

实例382  实现按钮控件边框留白 494

实例383  实现文本域控件的浮雕化边框 495

实例384  为文本框控件添加LineBorder

线形边框 496

实例385  控件的纯色边框与图标边框 498

实例386  实现带标题边框的面板容器 499

  实例387  指定字体的标题边框 501

实例388  嵌套的标题边框 502

实例389  带图标边框的标题边框 503

  实例390  文本框的下划线边框 504

16.2  控件渲染让界面UI更灵活 506

  实例391  支持图标的列表控件 506

实例392  在列表控件中显示单选按钮 507

实例393  列表控件折行显示列表项 508

  实例394  使用图片制作绚丽按钮 510

实例395  实现按钮关键字描红 511

实例396  忙碌的按钮控件 512

实例397  实现透明效果的表格控件 513

实例398  在表格中显示工作进度百分比 515

实例399  在表格中显示图片 517

16.3  让控件活起来 518

实例400  鼠标经过时按钮放大效果 518

实例401  迟到的登录按钮 520

  实例402  焦点按钮的缩放 521

实例403  标签文本的跑马灯特效 522

实例404  延迟生效的按钮 524

实例405  动态加载表格数据 525

16.4  自定义控件 526

实例406  石英钟控件 526

实例407  IP输入文本框控件 527

实例408  日历控件 530

实例409  平移面板控件 531

实例410  背景图面板控件 533

 

第4篇  文件操作典型应用

 

第17章  文件与文件夹操作 536 

17.1  文件操作 537

实例411  修改文件属性 537

实例412  显示指定类型的文件 538

  实例413  以树结构显示文件路径 540

  实例414  查找替换文本文件内容 541

  实例415  支持图片预览的文件选择对话框 543

实例416  设置Windows的文件属性 545

实例417  文件批量重命名 547

实例418  快速批量移动文件 549

实例419  删除磁盘中所有的.tmp临时文件 551

17.2  文件与数据库 553

实例420  提取数据库内容到文件 553

实例421  提取文本文件的内容到MySQL数据库 555

实例422  将图片文件保存到SQL Server数据库 556

实例423  显示数据库中的图片信息 558

实例424  提取技术网站数据到文件夹 559

实例425  读取文件路径到数据库 561

实例426  在数据库中建立磁盘文件索引 562

17.3  操作磁盘文件夹 564

实例427  窗体动态加载磁盘文件 564

实例428  删除文件夹中所有文件 565

实例429  创建磁盘索引文件 567

实例430  快速全盘查找文件 568

实例431  获取磁盘所有文本文件 570

实例432  网络文件夹备份 571

第18章  文件的读取、写入、整理和控制 573 

18.1  文件的读取与写入 574

  实例433  键盘录入内容保存到文本文件 574

实例434  将数组写入到文件中并逆序输出 575

实例435  利用StringBuffer避免文件的多次写入 576

实例436  合并多个txt文件 577

  实例437  实现文件简单加密与解密 579

实例438  对大文件实现分割处理 581

实例439  将分割后的文件重新合并 583

实例440  读取属性文件的单个属性值 584

实例441  向属性文件中添加信息 585

实例442  在复制文件时使用进度条 586

实例443  从XML文件中读取数据 587

实例444  读取Jar文件属性 589

  实例445  电子通讯录 590

18.2  实现文件整理 592

  实例446  批量复制指定扩展名的文件 592

实例447  计数器小程序 594

实例448  将某文件夹中的文件进行分类存储 595

18.3  文件控制 597

实例449  利用StreamTokenizer统计文件的

字符数 597

实例450  在指定目录下搜索文件 598

实例451  序列化和反序列化对象 600

实例452  文件锁定 602

实例453  投票统计 603

第19章  文件压缩 605 

19.1  Java实现文件压缩 606

实例454  压缩所有文本文件 606

实例455  压缩包解压到指定文件夹 607

实例456  压缩所有子文件夹 608

实例457  深层文件夹压缩包的释放 610

实例458  解决压缩包中文乱码 611

实例459  Apache实现文件解压缩 612

实例460  把窗体压缩成ZIP文件 613

实例461  解压缩Java对象 615

19.2  RAR文件压缩 616

  实例462  文件压缩为RAR文档 616

  实例463  解压缩RAR压缩包 619

  实例464  文件分卷压缩 621

实例465  为RAR压缩包添加注释 623

实例466  获取压缩包详细文件列表 625

实例467  从RAR压缩包中删除文件 627

实例468  在压缩文件中查找字符串 628

实例469  重命名RAR压缩包中的文件 629

实例470  创建自解压RAR压缩包 631

实例471  设置RAR压缩包密码 632

19.3  数据压缩的网络应用 634

实例472  以压缩格式传输网络数据 634

实例473  压缩远程文件夹 637

实例474  压缩存储网页 638

第20章  操作办公文档 640 

20.1  操作Word 641

  实例475  把文本文件导入到Word中 641

实例476  浏览本地Word文件 642

实例477  将员工表插入到Word文档中 644

  实例478  将员工照片插入到Word简历 645

  实例479  将Word文档保存为HTML格式 646

20.2  操作Excel 647

实例480  将员工信息保存到Excel表中 647

  实例481  通过Excel公式计算出商品表中的

总售价 649

实例482  将数据库表中的内容写入到Excel 651

实例483  将Excel表中的内容保存到数据库 653

实例484  将Excel文件转换为HTML格式 654

20.3  操作PDF 655

实例485  应用iText组件生成PDF 655

实例486  在窗体中显示PDF文件 657

实例487  应用PDF Renderer组件实现放大

PDF文件 658

实例488  应用PDF Renderer组件实现缩小

PDF文件 660

实例489  应用PDF Renderer组件实现抓手功能 661

实例490  全屏显示PDF文件 662

 

第5篇  数据库应用

 

第21章  SQL应用 666 

21.1  排序和分组函数应用 667

实例491  对数据进行降序查询 667

  实例492  对数据进行多条件排序查询 669

实例493  对统计结果进行排序 670

实例494  查询SQL Server数据库中的前3条

数据 671

  实例495  查询SQL Server数据库中的后3

条数据 672

实例496  查询MySQL数据库中的前3条数据 673

实例497  查询MySQL数据库中的后3条数据 674

实例498  按照字母顺序对留学生表进行排序 675

实例499  按姓氏笔画排序 677

实例500  将汉字按音序排序 678

实例501  按列的编号排序 679

实例502  从表中随机返回记录 680

实例503  使用GROUP BY子句实现对数据的

分组统计 681

实例504  使用GROUP BY子句实现多表

分组统计 682

21.2  聚集函数与日期查询 683

实例505  利用SUM函数实现数据汇总 683

实例506  利用AVG函数实现计算平均值 684

实例507  利用MIN函数求数据表中的最小值 685

实例508  利用MAX函数求数据表中的最大值 686

实例509  利用COUNT函数求销售额大于某值的

图书种类 688

  实例510  查询编程词典6月的销售量 689

实例511  查询与张静同一天入司的员工信息 690

实例512  使用IN谓词查询某几个时间的数据 692

  实例513  日期查询中避免千年虫问题 693

21.3  大小比较与逻辑应用 694

实例514  在查询结果中不显示重复记录 694

实例515  使用NOT查询不满足条件的记录 695

实例516  使用between进行区间查询 697

实例517  列出销量表中的重复记录和记录条数 698

实例518  使用关系运算符查询某一时间段数据 699

实例519  计算两个日期之间的月份数 700

实例520  格式化金额 702

实例521  在查询语句中过滤掉字符串中的空格 703

第22章  数据库操作 705 

22.1  通过JDBC-ODBC桥连接数据库 706

  实例522  通过JDBC-ODBC桥连接SQL Server 

2000数据库 706

实例523  JDBC-ODBC桥连接Access数据库 708

实例524  JDBC-ODBC桥与Oracle数据库

建立连接 710

22.2  JDBC技术连接数据库 711

实例525  通过JDBC连接SQL Server 2000

数据库 711

实例526  JDBC连接MySQL数据库 713

实例527  JDBC连接SQL Server 2005数据库 714

实例528  JDBC技术连接Oracle数据库 715

实例529  JDBC连接JavaDB数据库 716

22.3  数据库与数据表 717

实例530  列举SQL Server数据库下的数据表 717

  实例531  列举MySQL数据库下的数据表 718

实例532  查看数据表结构 719

实例533  动态维护投票数据库 721

实例534  SQL Server数据备份 722

实例535  SQL Server数据恢复 725

实例536  MySQL数据备份 728

实例537  MySQL数据恢复 730

实例538  动态附加数据库 731

实例539  生成SQL数据库脚本 733

实例540  获取SQL Server数据表字段的描述信息 734

22.4  数据增加、更新与删除操作 736

实例541  将员工信息添加到数据表 736

实例542  添加数据时使用数据验证 737

  实例543  插入用户登录日志信息 739

  实例544  生成有规律的编号 740

实例545  生成无规律的编号 742

实例546  在插入数据时过滤掉危险字符 743

实例547  将用户选择的爱好以字符串形式保存

到数据库 744

实例548  将数据从一张表复制到另一张表 745

实例549  使用UNION ALL语句批量插入数据 746

实例550  更新指定记录 747

实例551  在删除数据时给出提示信息 748

实例552  将数据表清空 749

实例553  字符串大小写转换 750

第23章  数据查询 752 

23.1  使用子查询 753

实例554  将子查询作为表达式 753

实例555  用子查询作为派生表 754

实例556  通过子查询关联数据 755

  实例557  使用IN谓词限定查询范围 756

实例558  使用NOT IN子查询实现差集运算 758

实例559  使用NOT IN子查询实现反向查询 759

  实例560  返回笛卡尔乘积 760

实例561  比较运算符引入子查询 761

实例562  在子查询中使用聚集函数 762

实例563  在删除数据时使用子查询 763

23.2  嵌套查询 764

实例564  查询平均成绩在85分以上的学生信息 764

实例565  查询本科部门经理月收入情况 766

实例566  在嵌套中使用EXISTS关键字 767

实例567  动态指定查询条件 768

23.3  连接查询 769

实例568  使用UNION运算符使学生档案归档 769

实例569  内连接获取指定课程的教师信息 771

实例570  左外连接查询员工信息 772

  实例571  右外连接查询员工信息 773

实例572  多表外连接查询 774

实例573  完全连接查询 775

23.4  函数查询 777

  实例574  在查询中使用patindex()函数进行

模糊查询 777

实例575  对查询结果进行格式化 778

实例576  在查询中使用字符串函数 780

实例577  在查询中使用ALL谓词 781

实例578  在查询中使用ANY谓词 782

实例579  使用UNION运算符消除重复的行 784

实例580  使用UNION ALL运算符保留重复的行 785

实例581  计算商品销售额所占的百分比 786

第24章  数据库高级应用 787 

24.1  在Java程序中使用存储过程 788

  实例582  调用存储过程实现用户身份验证 788

实例583  应用存储过程添加数据 789

实例584  调用加密存储过程 791

实例585  获取数据库中所有存储过程 792

  实例586  修改存储过程 793

实例587  删除存储过程 795

24.2  使用触发器 796

实例588  应用触发器添加日志信息 796

  实例589  在删除成绩表时将学生表中的数据删除 798

实例590  在程序中调用UPDATE触发器 799

实例591  获取数据库中的触发器名称 801

  实例592  创建带有触发条件的触发器 802

24.3  使用批处理 803

实例593  使用批处理删除数据 803

实例594  使用批处理提升部门员工工资 805

实例595  将教师表中的数据全部添加到选课表 806

实例596  在批处理中使用事务 807

24.4  使用视图 809

实例597  创建视图 809

实例598  使用视图过滤不想要的数据 810

实例599  使用视图与计算数据 812

实例600  使用视图重新格式化检索出来的数据 813

实例601  获取数据库中的全部用户视图 814

实例602  修改视图 815

实例603  删除视图 816