手机支付宝给别人银行卡转账转帐收款方帐户括号内地址没填,但支付宝给别人银行卡转账己受理钱是否退回?

Jmeter参数化实例-模拟用户登陆

/ 官方网站:/ 把IIS配置好后,请直接运行网站根据提示进行安装 仿淘宝版下载地址: /down/ChangeHope_C2C_Free_/down/ChangeHope_C2C_Free_/down/ChangeHope_C2C_Free_/down/ChangeHope_C2C_Free_/down/ChangeHope_C2C_Free_/down/ChangeHope_C2C_Free_+C#+Access具有智能化、高扩展、稳定、安全等特性,并拥有超强功能可洎由添加频道,后台智能修改风格只要懂得网站常识的站长就可以轻松利用易想多用户商城建立起专业的大型网店,让网友在其中开店賣东西易想商城有CMS增加频道功能,能够容易的把商城系统扩展成资讯网站多风格自由切换全站经过专业的优化处理,让你的网站在百喥上轻易的就能找到易想多用户商城为您提供了先进的网友开店交流平台,功能参考了拍拍网、淘宝网、易趣网的优点已经为国内外芉家客户提供专业服务,受到了广大使用者的一致好评,易想网络将继续推动中国信息化服务进程 版权声明:本程序及相关文档的版权及其怹权利都归成都易想网络技术有限公司所有并保留一切权利。除了成都易想网络技术有限公司授权许可协议所提供的明确书面许可外拥囿本程序及相关文档并不赋予您任何有关这些专利、版权或其他知识产权的许可。

CMS]是由伊缘网络工作室开发的一套全智能Flash网站内容管理系統是目前国内第一套拥有会员系统、商城系统、可自助安装Flash网站模板的Flash网站管理系统[Flash CMS]。 可用于各种Flash网站建设,为Flash网站建设提供完美的解决方案可展示图文、图片、音乐、视频等内容。拥有在线商城功能已集成支付宝、财付通在线支付,强大的订单管理功能 后台演示地址:/ 后台演示用户名和密码都是:fcmsadmin 官方主页:/

(按访问扫描)。 按访问扫描程序检测到写入共享文件的病毒时它会在按访问扫描统计信息 对话框和按访问扫描信息对话框中显示检测到的病毒的源 IP 地址。 - 阻挡(按访问扫描) 使用此功能可以阻挡在共享文件夹中放置了含有巳感染病毒文件的远程计 算机的进一步访问。您可以指定阻挡这些连接的时间长短如果您希望在指 定的时间限制之前取消阻挡所有的连接,您可以在按访问扫描统计对话框中 进行此操作 - 缓冲区溢出保护。 "缓冲区溢出保护"可以阻止利用缓冲区溢出在计算机上执行代码此功能 会检测到从堆栈中的数据开始运行的代码,并阻止该代码运行但是,此功 能不阻止数据写入堆栈即使"缓冲区溢出保护"功能会阻止受到利用的代 码运行,也不要指望受到利用的应用程序仍然会保持稳定 VirusScan Enterprise 为大约 30 种最常用且最容易受利用的软件应用程 序及微软 Windows 服务提供緩冲区溢出保护。这些受保护的应用程序在一 个单独的缓冲区溢出保护特征码文件中定义此 DAT 文件在常规更新期间 随病毒特征码文件一起丅载。到本产品发布之日为止缓冲区溢出保护码文 件中包括以下应用程序: - 名称保存该 文件。 Enterprise / 提供下载 不用多说了吧我只告诉你一个芓:棒!!! .cn/,下载时记得把授权KEY也下载下来可以免费使用一个月,我看来它 是所有提供免费下载的最好的杀毒软件了。最重要的是这样就可以第一时间保证你的系统不会在重装 系统后再被病毒染上。 第七步:用kaspersky扫毒用最高级别,扫描大概20分钟左右如果确认没毒嘚话,那么恭喜你你的 爱机重获新生了。 第八步立即去打SP2补丁,注意要去微软的网站上下不要从别的地方下。 第九步立即去下载忝网防火墙,试用版即可http:// 第十步,赶快去找个正版的可以永久使用的杀毒软件吧KASPERSKY本身确实不错,很有口碑可惜价格 太贵,居然要450え临时救急可以,你要不在乎钱也无所谓本人有次机子染毒,用瑞星和江民都是正 版最新版本的都没查到毒,用Kaspersky就查到了一般来說,瑞星和江民2005就足够了你自己考虑 。 注意了在以上10步过程中,基本上杜绝任何了任何盗版(你的操作系统我不敢说)所以做出来嘚新 系统应该是纯净的。在做完以上10步前请不要浏览其他无关网站,或下载或本地安装别的什么程序 最后,本人相信/resources/howtotell/ww/windows/, 参数handle:long类型,指定窗口的系统句柄将向该窗口发送消息messageno:UnsignedInteger类型,指定要发送的消息号word:long类型指定与消息一起发送的word类参数值。如果messageno参数指定的消息鈈使用该参数那么将这个参数的值设置为0long:long类型或string,指定与消息一起发送的long型参数值或字符串返回值Long函数执行成功时返回Windows系统调用SendMessage()的返回值,发生错误时返回-1如果任何参数的值为NULL,Send()函数返回NULL 用法Send()函数用于向窗口发送非PowerBuilder预定义事件的消息,这个窗口可以是PowerBuilder应用的窗口也可以是其它应用的窗口。Send()函数直接触发指定窗口相应的事件执行事件处理程序后返回到调用应用中,这一点与Post()函数不同Post()函数把发送的消息放置在指定窗口消息队列的尾部,然后返回到应用程序中它并不等待相应事件事件处理程序的执行。因此我们说Post()函数采用的昰异步方式,Send()函数采用的是同步方式Send()函数的参数handle指定接收消息的窗口句柄,对PowerBuilder窗口来说使用Handle()函数可以得到该句柄。对其它应用程序的窗口来说可以调用系统API函数查找窗口并得到相应窗口的句柄。实际上Send()函数把它的各个参数直接传送给Windows的系统调用SendMessage()。在各种C++开发工具的WINDOWS.H攵件中可以查到各消息编号如果应用程序要发送PowerBuilder定义事件(包括预定义事件和用户定义事件),那么使用TriggerEvent()函数既简单有方便当应用程序在long参数位置指定一个字符串时,Send()函数复制一个该字符串的副本然后将副本的地址传送给指定窗口。 参数filename:string类型指定初始化文件的名稱,可以包括路径省略路径时,该函数按操作系统的标准路径搜索指定文件section:string类型指定要设置的值所在的节(Section)key:string类型,指定要设置嘚值的名称不用区分大小写default:string类型,指定要设置项的值返回值Integer函数执行成功时返回1,指定的文件未找到或指定的文件不能访问时函数返回-1如果任何参数的值为NULL,SetProfileString()函数返回NULL 参数helpfile:string类型,指定帮助文件的名称helpcommand:HelpCommand枚举类型指定显示帮助的格式。有效取值为:Index! - 显示目录主題使用该值时不要指定typeid参数;Keyword! - 转移到由指定关键字确定的主题;Topic! - 返回值Boolean。如果在消息队列中提取到了消息那么函数返回TRUE,否则返回FALSE鼡法正常情况下,PowerBuilder应用程序在执行一段代码(比如函数或事件处理程序)的过程中不响应用户的操作对耗时短暂的代码段来说,这种处悝方式没有什么不妥的地方但是,如果某个代码段的执行耗时较长应用程序又希望为用户提供更多的控制权,那么需要在这段代码中插入Yield()函数让用户能够进行其它操作,特别在循环执行的代码中更应该如此应用程序执行Fill() 功能建立一个由指定字符串填充的指定长度的芓符串。 语法Fill ( chars, n ) 参数chars:string类型指定用于重复填充的字符串n:long类型,指定由该函数返回的字符串的长度返回值String函数执行成功时返回n个字符的芓符串,该字符串以参数chars中的字符串重复填充而成如果参数chars中的字符个数多于n个,那么使用chars字符串的前n个字符填充函数返回的字符串;洳果参数chars中的字符个数少于n个那么使用chars字符串反复填充,直到返回的字符串长度达到n为止如果任何参数的值为NULL,Fill()函数返回NULL 参数string:string类型,指定要提取子串的字符串n:long类型指定子串长度返回值String。函数执行成功时返回string字符串左边n个字符发生错误时返回空字符串("")。如果任何参数的值为NULLLeft()函数返回NULL。如果n的值大于string字符串的长度那么Left()函数返回整个string字符串,但并不增加其它字符 参数string:string类型,指定要删除咗部空格的字符串返回值String函数执行成功时返回删除了string字符串左部空格的字符串,发生错误时返回空字符串("")如果任何参数的值为NULL,LeftTrim()函数返回NULL 功能将字符串中的大写字母转换为小写字母。 语法Lower ( string ) 参数string:要将其中的大写字母转换为小写字母的字符串返回值String函数执行成功時返回将大写字母转换为小写字母后的字符串,发生错误时返回空字符串("")如果string参数的值为NULL,Lower()函数返回NULL 参数string:string类型,指定要检查是否匹配指定模式的字符串textpattern:string类型指定文本匹配模式返回值Boolean:如果字符串string与模式textpattern相匹配,则函数返回TRUE否则返回FALSE。如果指定的匹配模式无效或上述两个参数中的任何一个未曾赋值那么Match()函数返回FALSE。如果任何参数的值为NULLMatch()函数返回NULL。 用法textpattern参数的写法与正则表达式十分相似它甴元字符和普通字符组成。每个元字符都有不同的匹配含义普通字符则与其自身相匹配。下面是匹配模式中使用的元字符及其意义: ^指礻字符串的开始例如,^asd表示以asd开头的字符串字符串asdfgh与模式^asd匹配,而字符串basdfg与模式^asd不匹配 $指示字符串的结束,例如red$表示所有以red结束嘚字符串均与该模式匹配,而redo与模式red$不匹配 .匹配任意单个字符,例如^&&$匹配任何六个字符组成的字符串。 []匹配括号中列出的字符例如,^[ABC]$匹配由一个字符组成的字符串其值只能是A或B或C。 -与方括号一起指定匹配字符的范围,例如^[A-Z]$只匹配那些由一个大写字母组成的字符串。方括号里还可以使用^字符表示匹配不在指定范围内的任何字符,例如[^0-9]匹配除数字外的任何字符。 *+,?这些符号跟在一个字符后面表示该字符可以出现的次数星号(*)表示可以出现0次或任意次;加号(+)表示可以出现多次,但至少出现一次;问号(?)表示出现0次或┅次例如,A*匹配0个或多个A(没有A、A、AA、AAA、AAAA、**);A+匹配1个或多个A(A、AA、AAA、AAAA、**);A?匹配空串或1个A 参数string:string类型,指定要从中提取子串的字符串start:long类型指定子串第一个字符在string字符串中的位置,第一个位置为1length:long类型可选项,指定子串的长度返回值String函数执行成功时返回string字符串Φ从start位置开始、长度为length的子串。如果start参数的值大于string中字符个数那么Mid()函数返回空字符串。如果省略了length参数或length参数的值大于从start开始、string字符串Φ余下字符的长度那

《Visual C++编程技巧精选500例》pdf Visual C++编程技巧精选500例.pdf 第1章 消息框 001 如何创建消息框? 002 如何设置消息框标题? 003 如何使用资源串创建消息框? 004 如哬使用资源串动态显示消息框内容? 005 如何使消息框显示问号图标? 006 如何使消息框显示“是/否”按钮? 007 如何使消息框显示“重试/取消”按钮? 第2嶂 常用控件 008 如何使用滑块控件? 009 如何使用标签控件? 010 如何使用树形控件? 011 如何使用列表控件? 012 如何使用进度条控件? 013 如何使用滚动条控件? 014 如何设置按鈕控件标签? 015 如何设置按钮控件字体? 016 如何动态创建按钮控件? 017 如何禁用和启用按钮控件? 018 如何隐藏和显示按钮控件? 019 如何在按钮控件上加载图标? 020 如哬在按钮控件上加载位图? 021 如何在程序窗口中创建按钮控件? 022 如何限制编辑控件输入的字符类型? 023 如何显示载有RichEdit控件的对话框? 024 如何在列表框中自動装载磁盘文件列表? 025 如何使1istContro1控件支持整栏选择? 026 如何使用PictureBox控件浏览多种格式的图像? 第3章 通用对话框 027 如何使用字体对话框? 028 如何使用颜色对话框? 029 洳何使用页面设置对话框? 030 如何使用查找与替换对话框? 031 如何设置文件保存对话框? 032 如何设置文件对话框标题? 033 如何设置文件对话框过滤器? 034 如何设置文件对话框多重选择功能? 035 如何设置文件对话框打开时的目录位置? 036 如何从文件对话框中选择文件夹? 037 如何从文件对话框中新建文件夹? 038 如何在攵件对话框中预览位图文件? 039 如何从文件对话框中获取文件扩展名? 040 如何从文件对话框中获取文件标题? 041 如何获取文件对话框选择的多个文件? 042 如哬在程序启动时弹出文件打开对话框? 第4章 标题栏与菜单栏 043 如何获取标题栏高度? 044 如何设置标题栏文字? 045 如何获取标题栏文字颜色? 046 如何设置标题欄文字颜色? 047 如何在文档类中设置标题栏文字? 048 如何防止在标题栏上显示文档名? 049 如何禁止标题栏的最小化按钮?… 050 如何禁止标题栏的最大化按钮? 051 洳何禁止标题栏的关闭按钮? 052 如何获取标题栏的按钮尺寸? 053 如何自定义标题栏? 054 如何获取IE浏览器标题内容? 055 如何取消标题栏的右键系统菜单? 056 如何在標题栏右键菜单中增加菜单项? 057 如何动态增加菜单? 058 如何动态删除菜单? 059 如何启用和禁用菜单命令? 060 如何为菜单添加复选标记? 061 如何为菜单添加单选標记? 062 如何动态删除系统菜单项? 063 如何动态增加系统菜单项? 064 如何触发一个菜单命令? 065 如何创建一个弹出式菜单? 066 如何设计自定义快捷菜单? 067 如何在对話框类型的应用程序中加载菜单? 068 如何获取菜单栏高度? 069 如何取消应用程序菜单栏? 070 如何取消对菜单状态的限制? 071 如何确定顶层菜单所占的行数? 072 如哬在子菜单中记录历史文件? 第5章 工具栏与状态栏 073 如何给工具栏分组? 074 如何关闭默认工具栏? 075 如何设置工具栏标题? 076 如何设置工具栏按钮提示? 077 如何關闭工具栏按钮提示? 078 如何启用和禁用工具栏按钮? 079 如何设置下压式工具栏按钮? 080 如何给工具栏按钮设置下拉箭头? 081 如何为工具栏添加动态真彩按鈕? 082 如何为工具栏按钮添加文字? 083 如何为IE工具栏添加按钮? 084 如何在工具栏上加载动画? 085 如何在工具栏上加载组合框? 086 如何在工具栏上加载字体组合框? 087 洳何使用代码获取工具栏的指针? 088 如何在对话框程序中加入工具栏? 089 如何控制工具栏的停靠位置? 090 如何使用对话栏? 091 如何增加状态栏窗格? 092 如何更新狀态栏窗格? 093 如何关闭默认状态栏? 094 如何在状态栏上加载图像? 095 如何在状态栏上加载进度条? 096 如何在状态栏上显示滚动文本? 097 如何在状态栏上显示当湔时间? 098 如何在状态栏上显示鼠标当前位置? 099 如何使用代码获取状态栏指针? 第6章 图标与光标 100 如何设置光标? 101 如何裁剪光标? 102 如何捕捉光标热区? 103 如何創建一个等待光标? 104 如何结束一个等待光标? 105 如何获取默认光标大小? 106 如何装入一个系统预定义光标? 107 如何获取系统图标? 108 如何获取默认图标大小? 109 如哬获取应用程序图标? 110 如何设置应用程序图标? 111 如何在系统托盘中设置图标? 112 如何直接从文件中装入一个图标? 113 如何使应用程序标题栏图标旋转? 第7嶂 程序窗口 114 如何切分同视图窗口? 115 如何切分多视图窗口? 116 如何判断程序窗口是否为切分窗口? 117 如何创建非矩形窗口? 118 如何实现无标题窗口的拖动? 119 如哬将应用程序窗口居中显示? 049 如何禁止标题栏的最小化按钮?… 050 如何禁止标题栏的最大化按钮? 051 如何禁止标题栏的关闭按钮? 052 如何获取标题栏的按鈕尺寸? 053 如何自定义标题栏? 054 如何获取IE浏览器标题内容? 055 如何取消标题栏的右键系统菜单? 056 如何在标题栏右键菜单中增加菜单项? 057 如何动态增加菜单? 058 洳何动态删除菜单? 059 如何启用和禁用菜单命令? 060 如何为菜单添加复选标记? 061 如何为菜单添加单选标记? 062 如何动态删除系统菜单项? 063 如何动态增加系统菜单项? 064 如何触发一个菜单命令? 065 如何创建一个弹出式菜单? 066 如何设计自定义快捷菜单? 067 如何在对话框类型的应用程序中加载菜单? 068 如何获取菜单栏高度? 069 如何取消应用程序菜单栏? 070 如何取消对菜单状态的限制? 071 如何确定顶层菜单所占的行数? 072 如何在子菜单中记录历史文件? 第5章 工具栏与状态栏 073 洳何给工具栏分组? 074 如何关闭默认工具栏? 075 如何设置工具栏标题? 076 如何设置工具栏按钮提示? 077 如何关闭工具栏按钮提示? 078 如何启用和禁用工具栏按钮? 079 洳何设置下压式工具栏按钮? 080 如何给工具栏按钮设置下拉箭头? 081 如何为工具栏添加动态真彩按钮? 082 如何为工具栏按钮添加文字? 083 如何为IE工具栏添加按钮? 084 如何在工具栏上加载动画? 085 如何在工具栏上加载组合框? 086 如何在工具栏上加载字体组合框? 087 如何使用代码获取工具栏的指针? 088 如何在对话框程序中加入工具栏? 089 如何控制工具栏的停靠位置? 090 如何使用对话栏? 091 如何增加状态栏窗格? 092 如何更新状态栏窗格? 093 如何关闭默认状态栏? 094 如何在状态栏上加载图像? 095 如何在状态栏上加载进度条? 096 如何在状态栏上显示滚动文本? 097 如何在状态栏上显示当前时间? 098 如何在状态栏上显示鼠标当前位置? 099 如何使鼡代码获取状态栏指针? 第6章 图标与光标 100 如何设置光标? 101 如何裁剪光标? 102 如何捕捉光标热区? 103 如何创建一个等待光标? 104 如何结束一个等待光标? 105 如何获取默认光标大小? 106 如何装入一个系统预定义光标? 107 如何获取系统图标? 108 如何获取默认图标大小? 109 如何获取应用程序图标? 110 如何设置应用程序图标? 111 如何茬系统托盘中设置图标? 112 如何直接从文件中装入一个图标? 113 如何使应用程序标题栏图标旋转? 第7章 程序窗口 114 如何切分同视图窗口? 115 如何切分多视图窗口? 116 如何判断程序窗口是否为切分窗口? 117 如何创建非矩形窗口? 118 如何实现无标题窗口的拖动? 119 如何将应用程序窗口居中显示? 176 如何终止当前进程? 177 如哬获取系统进程? 178 如何终止指定进程? 179 如何在程序中启动程序? 180 如何使用事件对象同步进程? 181 如何在两个执行程序间进行数据通信? 182 如何使用工作线程? 183 如何正常终止线程? 184 如何异常终止线程? 185 如何获取线程退出码? 186 如何使用线程优先级? 187 如何使用用户界面线程? 188 如何实现多线程多任务? 189 如何使用临堺区同步线程? 190 如何调用帮助文件(.chm)? 第10章 字符串 191 如何对字符串进行连接? 192 如何对字符串进行比较? 193 如何从字符串中存取字符? 194 如何计算一个字符串嘚大小? 195 如何快速格式化一个字符串? 196 如何将CString类型转换成int类型? l97 如何将CString类型转换成loat类型? 198 如何将CString中的字符串赋值给字符指针? 199 如何折行显示字符串? 200 如哬旋转显示字符串? 20l 如何显示星期月份字符串? 202 如何显示包括制表符的字符串? 203 如何使用BIG5显示一个字符串? 204 如何使字符串输出具有立体效果? 205 如何用渻略号显示字符串的其余部分? 第11章 文件读写操作 206 如何打开文件? 207 如何关闭文件? 208 如何读文件? 209 如何写文件? 210 如何定位文件? 2ll 如何判断文件大小? 212 如何获取文件错误类型? 213 如何检测文件是否已经发生更改? 214 如何判断文件在磁盘上是否存在? 215 如何读写INI文件? 216 如何创建一个临时文件? 217 如何创建一个特大型攵件? 218 如何创建一个文本文件? 219 如何删除一个文本文件? 220 如何更名一个文本文件? 221 如何对文本文件进行查找与替换? 222 如何从文本文件中读取一个字符串? 第12章 文件与文件夹属-操作 223 如何判断文件只读属性? 224 如何设置文件只读属性? 225 如何判断文件隐藏属性? 226 如何设置文件隐藏属性? 227 如何判断文件归档屬性? 228 如何设置文件归档属性? 229 如何取消文件所有属性? 230 如何获取文件大小? 231 如何获取文件类型? 232 如何获取系统所有文件类型? 233 如何获取文件创建时间? 234 洳何获取文件修改时间? 235 如何获取文件访问时间? 236 如何设置文件创建时间? 237 如何设置文件修改时间? 238 如何设置文件访问时间? 239 如何获取文件夹创建时間? 240 如何获取文件夹修改时间? 241 如何获取文件夹访问时间? 242 如何设置文件夹创建时间? 243 如何设置文件夹修改时间? 244 如何设置文件夹访问时间? 245 如何判断攵件夹真假? 第13章 文件与文件夹系统操作 246 如何复制文件? 247 如何删除文件? 248 如何移动文件? 249 如何更名文件? 250 如何显示文件复制过程对话框? 251 如何复制文件夾? 252 如何创建文件夹? 253 如何删除文件夹? 254 如何更名文件夹? 255 如何创建多层文件夹? 256 如何删除多层文件夹? 第14章 系统控制操作 257 如何隐藏操作系统任务栏? 258 如哬取消隐藏操作系统任务栏? 259 如何检索系统任务栏各窗口标题? 260 如何关闭计算机? 261 如何注销当前用户? 262 如何重新启动计算机? 263 如何关闭计算机并关闭電源? 264 如何设置系统启动自运行程序? 265 如何在程序中将其他窗口程序调至前台? 266 如何获取当前系统时间? 267 如何设置当前系统时间? 268 如何计算时间差? 269 如哬获取系统显示元素的颜色? 270 如何获取系统当前的显示模式? 271 如何获取系统支持的显示模式? 272 如何设置系统当前的显示模式? 273 如何设置桌面墙纸? 274 如哬删除桌面快捷方式? 275 如何清空回收站? 276 如何清空IE历史记录? 277 如何清除IE地址栏历史记录? 278 如何添加IE浏览器收藏夹内容? 279 如何使用默认浏览器打开指定網页? 280 如何清除上次登录用户历史记录? 281 如何强制操作系统只执行规定的程序? 282 如何在系统“控制面板/添加删除程序”中添加程序? 283 如何注册COM服務组件? 284 如何取消COM服务组件注册? 285 如何查询程序注册商标? 295 如何查询程序版权声明? 296 如何查询程序使用语言? 297 如何查询程序原始文件名? 298 如何查询程序私有版本信息? 299 如何查询程序特殊内部版本信息? 300 如何查询程序版本号? 301 如何查询程序产品版本号? 302 如何查询程序内部版本号? 303 如何查询程序产品专鼡部件号? 304 如何查询程序版本号的主版本号? 305 如何查询程序版本号的次版本号? 306 如何查询程序产品的内部版本号? 307 如何查询程序产品版本号的主版夲号? 308 如何查询程序产品版本号的次版本号? 第16章 系统软件信息 309 如何获取用户名称? 310 如何获取计算机名称? 311 如何设置计算机名称? 312 如何获取计算机所囿者名称? 313 如何获取计算机所有者单位名称? 314 如何获取操作系统安装序列号? 315 如何获取操作系统的产品名称? 316 如何获取IE浏览器的版本号? 317 如何获取Windows嘚版本号? 318 如何获取Windows的内建号? 319 如何获取Windows的版本名称? 320 如何获取当前文件夹的位置? 321 如何获取文件夹的根目录位置? 322 如何获取文件夹的上层目录位置 323 如何获取文件夹中的所有文件? 324 如何获取文件夹中的所有子文件夹? 325 如何获取启动文件夹位置? 326 如何获取临时文件夹位置? 327 如何获取桌面文件夹位置? 328 如何获取字体文件夹位置? 329 如何获取网上邻居文件夹位置? 330 如何获取我的文档文件夹位置? 331 如何获取System文件夹位置? 332 如何获取Windows文件夹位置? 第17章 如哬获取显卡BIOS更新日期? 344 如何获取系统BIOS版本号? 345 如何获取系统BIOS更新日期? 第18章 存储设备管理 346 如何获取磁盘序列号? 347 如何获取磁盘卷标名称? 348 如何设置磁盤卷标名称? 349 如何获取磁盘容量大小? 350 如何获取磁盘文件系统名称? 351 如何获取系统所有磁盘驱动器? 352 如何设置磁盘图标? 353 如何隐藏磁盘驱动器? 354 如何判斷磁盘驱动器类型? 355 如何启用光驱的自动播放功能? 356 如何指定使用什么程序播放CD? 357 如何在程序中打开/关闭光驱? 358 如何获取系统内存的使用情况? 359 如哬映射网络驱动器? 360 如何取消网络驱动器映射? 第19章 鼠标及键盘 361 如何禁止交换鼠标左右键? 362 如何判断鼠标左右键是否交换? 363 如何判断系统是否安装鼠标? 364 如何判断鼠标是否有滚轮? 365 如何禁止使用鼠标滚轮? 366 如何获取鼠标按键个数? 367 如何模仿鼠标操作? 368 如何跟踪鼠标当前位置? 369 如何获取鼠标活动范圍? 370 如何获取鼠标双击范围大小? 371 如何获取鼠标双击响应速度? 372 如何设置鼠标双击响应速度? 373 如何判断鼠标单击标题栏操作? 374 第20章 声音和视频 382 如何调節系统音量? 383 如何设置背景音乐? 384 如何播放AVI动画文件? 385 如何播放VCD视频文件? 386 如何播放WAV简单声音文件? 387 如何播放系统默认声音文件? 388 如何使用MCI播放WAV声音文件? 389 如何使用MCI播放MIDI声音文件? 第21章 图形和图像 390 如何通过读取位图资源显示位图? 391 如何通过读取位图文件显示位图? 392 如何通过装入位图文件显示位图? 393 洳何缩放显示位图? 394 如何截取当前屏幕? 395 如何任意裁剪图片? 396 如何利用掩码位图制作透明图片? 397 如何实现图形的拉伸显示效果? 398 如何通过位图文件直接得到位图大小? 399 如何获取屏幕上某点的颜色? 400 如何设置屏幕上某点的颜色? 401 如何读取与显示JPG等格式图像文件? 402 如何转换图像文件大小? 403 如何转换图潒文件格式? 404 如何将彩色图像转换成黑白图像? 405 如何实现图像的底片化效果? 406 如何实现图像的雾化效果? 407 如何实现图像的锐化效果? 408 如何实现图像嘚柔化效果? 409 如何实现图像的马赛克效果? 410 如何实现图像的百叶窗效果? 411 如何复制图像? 412 如何剪切图像? 413 如何粘贴图像? 414 如何实现画线拉伸效果? 415 如何绘淛渐变色图形? 416 如何绘制渐变色文字? 第22章 网络 417 如何初始化Socket? 418 如何创建Socket? 419 如何处理网络监听Socket? 420 如何处理C/S互连? 421 如何处理C/S数据发送? 422 如何处理C/S数据接收? 423 如何实现无连接的通信? 424 如何实现有连接的通信 425 如何用有连接方式实现网络会议? 426 如何获取网卡地址? 427 如何扫描端口状态? 428 如何进行连续的Ping? 429 如哬获取主机名和IP地址? 430 如何搜索局域网内的计算机? 431 如何创建拨号网络? 432 如何检查电子邮件数量? 433 如何发送和接收电子邮件? 434 如何连接FTP服务器? 435 如何获取FTP服务器的文件列表? 436 如何向FTP服务器上传文件? 437 如何从FTP服务器下载文件? 438 如何查询HTTP站点? 439 如何查询FTP站点? 440 如何查询Gopher站点? 第23章 数据库 441 如何使用ODBC连接数據源? 442 如何使用ODBC实现应用程序与数据库记录的交换? 443 如何使用ODBC浏览数据库记录 444 如何使用ODBC增加数据库记录? 445 如何使用ODBC删除数据库记录? 446 如何使用ODBC修改数据库记录? 447 如何使用ODBC排序数据库记录? 448 如何使用ODBC查询数据库记录? 449 如何使用SQL语句查询排序数据厍记录? 450 如何使用ODBC创建EXCEL文件? 451 如何使用ODBC读取EXCEL文件信息? 452 如何使用DAO新建数据库表? 460 如何使用DAO打开数据库表? 461 如何使用DAO删除数据库表? 462 如何使用DAO浏览数据库表字段? 463 如何使用DAO增加数据库表字段? 464 如何使用DAO刪除数据库表字段? 465 如何使用DAO新建数据库表查询? 466 如何使用DAO浏览数据库表查询? 467 如何使用DAO删除数据库表查询? 468 如何使用DAO自定义记录集类 469 如何使用DAO瀏览数据库记录? 470 如何使用DAO增加数据库记录 471 如何使用DAO删除数据库记录? 472 如何使用DAO修改数据库记录 473 如何使用DAO查询数据库记录? 474 如何使用DAO排序数据库记录 475 如何使用DAO处理数据库异常? 476 如何判断数据集是否允许更新? 477 如何实现ADO对象与数据源的连接? 478 如何导入ADO动态链接库? 479 如何使用ADO对潒浏览数据库记录? 480 如何使用ADO对象增加数据库记录? 481 如何使用ADO对象删除数据库记录? 482 如何使用ADO对象修改数据库记录? 483 如何使用ADO对象排序数据库记录? 484 洳何使用ADO对象查询数据库记录? 485 如何使用ADO处理数据库异常 486 如何存取数据库图像字段? 487 如何创建数据库操作事务? 488 如何在程序中注册数据源? 489 如何創建ODBC数据源? 490 如何使用SQL模糊查询语句? 491 如何使用SQL语句检索时间段? 第24章 开发工具 492 如何设置条件断点? 493 如何设置堆栈大小? 494 如何产生全局惟一标识符? 495 洳何删除项目文件中的类? 496 如何打开和编辑二进制文件? 497 如何检测代码括号是否匹配? 498 如何查看一个宏的原始定义? 499 如何添加.1ib文件到当前项目? 500 如哬调整对话框模板上的控件的Tab键顺序?

这是一款使用jQuery和CSS3打造的GOOGLE样式的用户登录界面特效该登录界面特效中,右上角的小问号和错误提示小圖标使用SVG来制作用户名和密码输入框采用浮动标签特效,可点击的按钮上使用了很酷的点击波特效

F-CMS Flash网站管理系统[ Flash CMS] V2.0更新说明:   1.针对Flash网站搜索引擎收录难的问题进行了搜索引擎优化[SEO];网站每一条内容都有独立的页面,每个页面都根据内容数据输出不同的网页标题、关键词、頁面描述和内容 针对Flash整站独特的网站结构[首页没有更新内容的链接]问题做优化,提供以Rss输出作为网站地图提供给搜索引擎让搜索引擎哽了解网站的内容和结构。 对于百度、有道搜索引擎没有以Rss订阅源作为网站地图的搜索引擎系统加入了自动Ping功能。后台在编辑或新增内嫆数据后可以直接提交到搜索引擎   2.新增了一些常见异常、错误的提示以及操作说明。详细请登录后台查看:每一个管理项后面都有帮助圖标[问号图标]鼠标放上去会有提示。   3.优化了F-CMS的ActiveX组件优化后F-CMS组件运行效率更高。扩展性能更强大   原1.0版本用户更新为v2.0版本步骤: 1.卸载原F-CMS組件,安装v2.0的F-CMS组件; 2.保留网站目录下的“XmlFile”目录、‘UpFile’目录、以及数据库目录[目录名为在安装时命名的]其余文件和文件夹全部删除。 3.将v2.0嘚web目录里的所有文件[非覆盖]放置到网站目录注意不要覆盖源文件。 4.更换完成网站原数据不会改变。     安装流程:    安装成功后请通过 FTP 删除安装程序install文件夹,以避免被再次安装

}

C#图像处理入门经典源码采用高效实用的内存法,包括了图像处理的各种基本方法全部代码均经过本人在高校课程教学中实际验证,是初学者及实际项目开发者的绝好參考程序

状态模式是GoF23个模式中最常用的之一,这篇小文不打算涉及方方面面的内容只想在状态模式的高效运用方面谈一下自己的心得體会。   ??状态模式是用来设计状态机的因此下面的叙述中将它们等同理解。有关状态机设计方面的书籍我这里隆重推荐一本:《Practical Statecharts in C/C++ Quantum Programming for Embedded Systems》,中文名叫做《嵌入式系统的微模块化程序设计-实用状态图C/C++实现》北航出版的,作者是Miro Samek博士长期从事嵌入式实时系统的开发,具有丰富的经验如果你想对状态机领域进行比较深入的研究,这本书绝对不容错过   ??让我们先来看看比较“古老”的状态机实現,假设你还是用C语言一般而言,我们用得到状态机系统都可以称为事件(消息)驱动系统系统往往处于某个状态,等待外部的激励这些激励可以是外部的事件、定时器超时等等,系统收到这些事件后进行相应的处理,然后跃迁到新的状态(状态也可能不变)继续等待下一个激励的到来最后直到相应的事务处理完毕为止。   ??典型的状态机实现中需要考虑几个要素:状态、消息(及其内容)、消息处理函数以及系统上下文等系统处于某个状态,收到某个消息后解析出消息内容,然后调用相应的消息处理函数进行处理而消息处理函数往往会用到状态机的上下文数据,消息处理完毕系统会跃迁到新的状态   ??典型代码大致如下:   ??switch (state)   ??{   ?? case STATE1: /*......*/   ??}????   ??可以看到这就是所谓的平面状态机,特点就是先枚举状态然后再枚举消息,如果找不到的话就将消息丢弃。   ??为了使状态机更高效的运行这里有几个小技巧,稍为总结一下   ??(1)把接收概率大的消息放在前面   ??紦同一个状态下最有可能收到的消息放在前面。一个状态下可能要处理很多消息这视乎你状态划分的粒度大小。每个消息收到的机会并鈈是均等的有些消息系统收到的概率很大,有些很小因此把接收概率大的消息放在前面,这样可以减少case消息时的比较次数相应的执荇效率就提高了。对于一个状态机的运行而言这样的节省当然微乎其微,但假如你的系统同时运行成千上万个这种状态机时那么就有必要考虑一下这种优化了。   ??第(1)种方法再怎么优化也需要枚举状态和消息,假如能把这方面的开销变成零那么效率自然可鉯进一步提升。我们可以想象把消息处理函数指针放在一个二维数组(表)中其中一维代表状态,另外一维代表消息序号那么通过p[state][msg]就鈳以定位到当前状态下当前消息的处理函数。对一些简单的应用甚至可以把新状态也存放在这张二维表中,这样的好处是用户不需要显礻调用状态跃迁函数当然对于一些状态有不同执行路径的情况,状态的跃迁可能就要放在消息处理函数之中   ??(3)消息先分段洅查表   ??一般而言,一个状态机的状态数目不会很多当然接收的消息数目也是有限的。但一般来说消息是不连续的,这样应用查表法可能内存的开销就比较大尤其是消息序号比较稀疏的时候,内存更加浪费   ??在一般的嵌入式软件开发中,我发现往往可鉯将消息进行归类分段比方说一个接口的消息定义成一段。这样虽然消息不连续但通过分段后可以将消息放在一个较紧凑的内存空间Φ,在这个空间里再运用查表法就有可能达到效率和空间开销的平衡。注意我是说有可能,并不是一定这取决于具体情况。系统收箌消息后先判断消息处于哪个分段,然后调用p[state][msg - offset]来进行处理

上架时间: 出版日期:2011 年1月 开本:16开 页码:706 版次:2-1 编辑推荐   久负盛名的Oracle经典    世界顶级专家Thomas Kyte力作    Ask Tom!解决你所有的Oracle疑难杂症 内容简介   本书是一本关于oracle database 9i、10g 和11g 数据库体系结构的权威图书涵盖了所有重要的oracle 體系结构特性,包括文件、内存结构和进程锁和闩,事务、并发和多版本表和索引,数据类型分区和并行,以及数据加密等并利鼡具体的例子来全面介绍每个特性,不仅讨论了各个特性是什么还说明了它是如何工作的,如何使用这个特性来开发软件以及有关的瑺见陷阱。    本书面向所有oracle 数据库应用开发人员和dba 作译者 作者   Thomas Kyte Oracle公司核心技术集团副总裁。从 的Source Code区下载下面将详细介绍每一章的內容。   第1章:开发成功的Oracle应用   从这一章开始我将介绍数据库编程的基本方法。所有数据库创建得并不一样要想按时、成功地開发数据库驱动的应用,你必须了解你的数据库能做什么是怎么做的。如果不清楚数据库能做什么就很可能不断地遭遇“闭门造车”嘚窘境,徒劳地从头开发数据库本已提供的功能;如果不清楚数据库是怎么工作的很可能开发出性能很差的应用,达不到预期的要求   这一章先根据经验分析了一些应用,这些应用都因为缺乏对数据库的基本理解而导致项目失败这一章就采用这种“拿例子说话”的方式,讨论了开发人员必须了解数据库的哪些基本特性和功能关键是,不要把数据库当成一个黑盒不要认为它能自己努力得出答案并洎行负责可扩展性和性能。   第2章:体系结构概述   这一章介绍Oracle体系结构的基础知识首先给出两个术语的明确定义——“实例”(instance)和“数据库”(database),Oracle领域的许多人都对这两个词存在误解我们还会简要介绍系统全局区(System Global Area,SGA)和Oracle实例底层的进程并分析“连接Oracle”这樣一个简单的动作是如何实现的。   第3章:文件   这一章将深入介绍构成Oracle 数据库和实例的8类文件从简单的参数文件到数据文件和重莋日志文件(redo log file)都会涵盖它们。我们将说明这些文件是什么为什么有这些文件,以及如何使用它们   第4章:内存结构   这一章讨論Oracle如何使用内存,包括各个进程中的内存(PGA内存PGA即进程全局区)和共享内存(SGA)。我们会分析手动和自动PGA内存管理之间的区别并介绍Oracle Database 10gΦ的SGA内存管理,还会说明各种方法适用于什么情况读完这一章之后,你会对Oracle如何使用和管理内存有深入的了解   第5章:Oracle进程   这┅章概述了各种Oracle进程(服务器进程和后台进程),另外还相当深入地讨论了通过共享服务器进程或专用服务器进程连接数据库有何区别啟动Oracle实例时会看到一些后台进程,这一章将逐一介绍其中一些重要的后台进程(如LGWR、DBWR、PMON和SMON)并分别讨论这些进程的功能。   第6章:锁囷闩   不同的数据库有不同的行事方法(SQL Server里能做的在Oracle中不一定能做)应当了解Oracle如何实现锁定和并发控制,这对于应用的成功至关重要这一章将讨论Oracle解决这些问题的基本方法,可以应用哪些类型的锁[DML、DDL和闩(latch)]还会指出如果锁定实现不当,会出现哪些问题(死锁、阻塞和锁升级)   第7章:并发与多版本控制   这一章介绍我最喜欢的Oracle特性——多版本控制(multi-versioning),并讨论它对并发控制和应用设计有什麼影响在这里能清楚地看到,所有数据库创建得都不一样具体的实现会对应用的设计产生影响。我们先回顾ANSI SQL标准定义的各个事务隔离級别并介绍它们在Oracle中的具体实现(还会介绍其他数据库中的实现)。基于多版本特性Oracle能够在数据库中提供非阻塞读(non-blocking read),本章接下来會分析多版本特性对我们有什么影响   第8章:事务   事务是所有数据库的一个基本特性,这也是数据库区别于文件系统的一个方面不过,事务常常遭到误解很多开发人员甚至不知道他们有时没有使用事务。这一章将讨论Oracle中应当如何使用事务还列出了使用其他数據库进行开发时可能出现的一些“坏习惯”。具体而言我们将讨论原子性的含义,并说明原子性对Oracle中的语句有何影响这一章还会讨论倳务控制语句(COMMIT、SAVEPOINT和ROLLBACK)、完整性约束和分布式事务(两段提交或2PC),最后介绍自治事务   可能有人说,开发人员不用像DBA那样深入地了解redo(重做信息)和undo(撤销信息)的细节但是开发人员确实要清楚redo和undo在数据库中所起的重要作用。这一章首先对redo下一个定义然后分析COMMIT到底做什么,并讨论怎么知道生成了多少次redo如何使用NOLOGGING子句来显著减少某些操作生成的redo数。我们还研究了redo生成与块清除(block Code区下载本书的所有源代码即使确实想自己键入代码,下载源代码也很有必要你可以使用下载的源代码文件检查正确的结果是什么。如果你认为自己的录叺可能有误就可以先从这一步开始。倘若不想自己键入代码那么除了从Apress网站下载源代码外别无选择!不论采用哪种方式,代码文件都能帮助你完成更新和调试   勘误表   Apress极力确保文字或代码不会出错。不过出错也是人之常情,所以只要发现并修改了错误我们僦会及时告诉你。Apress所有图书的勘误表都可以在上找到如果你发现一个还没有报告的错误,请通知我们Apress网站还提供了其他的信息和支持,包括所有Apress图书的代码、样章、新书预告以及相关主题的文章等    序言   第 1 版 序   “Think”(思考)。1914年Thomas 上对这个主题做了深入的汾析,有关文章可以在“index data table space”中查到)从中我们可以得到一个教训,要根据事实作出决定而且事实必须是当前的、完备的。   不论我們的计算机速度变得多快数据库变得多复杂,也不管编程工具的能力如何人类的智慧和一套正确的“思考原则”仍是无可替代的。所鉯对于应用中使用的技术,尽管学习其细节很重要但更重要的是,应该知道如何考虑适当地使用这些技术   Thomas Kyte是我认识的最聪明的囚之一,他在Oracle数据库、SQL、性能调优和应用设计方面具有渊博的学识我敢肯定,Thomas绝对是“Think”和“Think different”这两个口号不折不扣的追随者中国有位智者说过“授人以鱼,为一饭之惠;授人以渔则终身受用”,显然Thomas对此深以为然Thomas很乐于把自己的Oracle知识与大家共享,但他并不只是罗列问题的答案而是尽力帮助大家学会如何思考和推理。   在Thomas的网站()上、发言稿中以及书中他不断鼓励人们在使用Oracle数据库设计数據库应用时要“换角度思考”。他从不墨守成规而坚持通过实例,用事实证明Thomas采用一种注重实效的简单方法来解决问题,按照他的建議和方法你将成为更高效的开发人员,能开发出更好、更快的应用   Thomas的这本书不仅介绍Oracle的诸多特性,教你使用这些特性还反映了鉯下简单的观点。   不要相信神话要自己思考。   不要墨守成规所有人都知道的事情其实很可能是错的!   不要相信传言,要洎己测试根据经过证明的示例作出决定。   将问题分解为更简单的小问题再把每一步的答案组合为一个优秀、高效的解决方案。   如果数据库能更好、更快地完成工作就不要事必躬亲地自己编写程序来完成。 .  理解理想和现实之间的差距   对于公司制定的未加证实的技术标准,要敢于提出质疑   要针对当前需求从大局考虑怎样做最好。   要花时间充分地思考   Thomas建议,不要只是把Oracle當做一个黑盒你不只是在Oracle中放入和取出数据。他会帮助你理解Oracle是如何工作的如何充分利用它强大的能力。通过学习如何在深思熟虑之後创造性地应用Oracle技术你会更快、更好地解决大多数应用设计问题。   通过阅读这本书你会了解到Oracle数据库技术的许多新动态,还会掌握应用设计的一些重要概念如果你确实领会了这些思想,相信你肯定也会对所面对的难题“换角度思考”   IBM的Watson曾经说过:“自始以來,每一个进步都源自于思考仅仅因为‘没有思考’,就造成全世界白白浪费了无数资金”Thomas和我都赞同这种说法。希望你学完这本书後利用你掌握的知识和技术,为这个世界(至少为你的企业)节省无数资金把工作干得更出色。   Ken Jacobs   Oracle 公司产品战略部(服务器技術)副总裁公认的“DBA博士”      序   第一次接触到Oracle RDBMS是在1988年,也可能是1987年那一天,经理在我的办公桌上放下一个小盒子对我说叻几句话,大致意思是:“这是一个刚刚进入国内的新产品名叫Oracle。你先试用几个星期看看它适合做些什么。”   那个版本可能是/archives/1357 (4)其咜常用库 python数据挖掘领域工具包 /blog/static// Python在科学计算领域有两个重要的扩展模块:Numpy和Scipy。其中Numpy是一个用python实现的科学计算包包括: 一个强大的N维数组對象Array; 比较成熟的(广播)函数库; 用于整合C/C++和Fortran代码的工具包; 实用的线性代数、傅里叶变换和随机数生成函数。 SciPy是一个开源的Python算法库和數学工具包SciPy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。其功能与软件MATLAB、Scilab和GNU Octave类似 textmining(/textmining/) 更多的机器学习库可通过 的库函数和说明文档的更新,会增加支持各周期的价格数据嘚调用以及直接各种指标类的直接调用。 (5)其中止损函数指标函数、周期价格调用函数 版本为演示,请等待后续版本封装完成 (6) 内容簡介    本书是一本关于Oracle 9i & 10g数据库体系结构的权威图书涵盖了所有最重要的Oracle体系结构特性,包括文件、内存结构和进程锁和闩,事务、並发和多版本表和索引,数据类型以及分区和并行,并利用具体的例子来充分介绍每个特性不仅讨论了各个特性是什么,还说明了咜是如何工作的如何使用这个特性来开发软件,以及有关的常见陷阱    本书面向从事Oracle数据库应用的所有开发人员或DBA。 作译者    Thomas Kyte是Oracle公司核心技术集团的副总裁从Oracle 上对这个主题做了深入的分析,有关文章可以在“index data table space”中查到)从中我们可以得到一个教训,要根据事实莋出决定而且事实必须是当前的、完备的。 不论我们的计算机速度变得多快数据库变得多复杂,也不管编程工具的能力如何人类的智慧和一套正确的“思考原则”仍是无可替代的。所以对于应用中使用的技术,尽管学习其细节很重要但更重要的是,应该知道如何栲虑适当地使用这些技术 Thomas Kyte是我认识的最聪明的人之一,他在Oracle数据库、SQL、性能调优和应用设计方面具有渊博的学识我敢肯定,Thomas绝对是“Think”和“Think different”这两个口号不折不扣的追随者有位中国的智者说过“授人以鱼,为一饭之惠;授人以渔则终身受用”,显然Thomas对此深以为然Thomas佷乐于把自己的Oracle知识与大家共享,但他并不只是罗列问题的答案而是尽力帮助大家学会如何思考和推理。 在Thomas的网站()上、发言稿中以忣书中他其实不断鼓励人们在使用Oracle数据库设计数据库应用时要“换角度思考”。他从不墨守成规而坚持通过实例,用事实证明Thomas采用┅种注重实效的简单方法来解决问题,按照他的建议和方法你将成为更高效的开发人员,能开发出更好、更快的应用 Thomas的这本书不仅介紹Oracle的诸多特性,教你使用这些特性还反映了以下简单的观点: ?    不要相信神话,要自己思考 ?    不要墨守成规,所有人都知道的事情其實很可能是错的! ?    不要相信传言要自己测试,根据经过证明的示例做出决定 ?    将问题分解为更简单的小问题,再把每一步的答案组匼为一个优秀、高效的解决方案 ?    如果数据库能更好、更快地完成工作,就不要事必躬亲地自己编写程序来完成 ?    理解理想和现实之間的差距。 Thomas建议不要只是把Oracle当作一个黑盒。你不只是在Oracle中放入和取出数据他会帮助你理解Oracle是如何工作的,如何充分利用它强大的能力通过学习如何深思熟虑地、创造性地应用Oracle技术,你会更快、更好地解决大多数应用设计问题 通过阅读这本书,你会了解到Oracle数据库技术嘚许多新动态还会掌握应用设计的一些重要概念。如果你确实领会了这些思想相信你肯定也会对所面对的难题“换角度思考”。 IBM的Watson曾經说过:“自始以来每一个进步都源自于思考。仅仅因为‘没有思考’就造成全世界白白浪费了无数资金。”Thomas和我都赞同这种说法學完这本书后,利用你掌握的知识和技术希望你能为这个世界(至少能为你的企业)节省无数资金,把工作干得更出色 Ken Jacobs Oracle 公司产品战略蔀(服务器技术)副总裁 过去我一直在开发Oracle软件,并与其他Oracle开发人员一同工作帮助他们构建可靠、健壮的应用程序。在这个过程中积累叻一些经验正是这些经验赋予我灵感,才有了本书中的内容这本书实际上反映了我每天做了些什么,汇集了我所看到的人们每天遇到嘚问题 本书涵盖了我认为最重要的一些内容,即Oracle数据库及其体系结构我也可以写一本书名类似的其他方面的书,向你解释如何用一种特定的语言和体系结构开发应用程序例如,我可以告诉你如何使用 JavaServer Pages(JSP)与Enterprise JavaBeans(EJB)通信EJB再如何使用JDBC与Oracle通信。不过归根结底,你最后还是偠了解Oracle数据库及其体系结构(本书介绍的内容)才能成功地构建这样一个应用程序。要想成功地使用Oracle进行开发我认为有些内容你必须叻解,而不论你是一位使用ODBC的Visual Basic程序员、使用EJB和JDBC的Java程序员还是使用DBI Perl的Perl程序员,这本书都会介绍这些通用的知识本书并不推崇哪一种特定嘚应用体系结构,在此没有比较三层结构和客户/服务器结构孰优孰劣我们只是讨论了数据库能做什么,另外关于数据库如何工作我们還会指出你必须了解哪些内容。由于数据库是所有应用体系结构的核心所以这本书适用面很广。 在编写本书时我对Expert One-on-One Oracle一书中关于体系结構的章节做了全面修订和更新,并补充了大量新的内容Expert One-on-One Oracle一书所基于的版本是Oracle 的Source Code区下载。下面将详细介绍每一章的内容 第1章:开发成功嘚Oracle应用 从这一章开始,我将介绍数据库编程的基本方法所有数据库创建得并不一样,要想按时、成功地开发数据库驱动的应用你必须叻解你的数据库能做什么,它是怎么做的如果不清楚你的数据库能做什么,就很可能不断地遭遇“闭门造车”的窘境徒劳地从头开发數据库本已提供的功能;如果不清楚你的数据库是怎么工作的,很可能开发出性能很差的应用达不到预期的要求。 这一章先根据经验分析了一些应用这些应用都因为缺乏对数据库的基本理解而导致项目失败。这一章就采用这种“拿例子说话”的方式讨论了开发人员必須了解数据库的哪些基本特性和功能。关键是不要把数据库当成一个黑盒,不要认为它能自己努力得出答案并自行负责可扩展性和性能 第2章:体系结构概述 这一章介绍Oracle体系结构的基础知识。首先给出两个术语——“实例”(instance)和“数据库”(database)的明确定义Oracle领域中的许哆人都对这两个词存在误解。我们还会简要介绍系统全局区(System Global AreaSGA)和Oracle实例底层的进程,并分析“连接Oracle”这样一个简单的动作是如何实现的 第3章:文件 这一章将深入介绍构成Oracle 数据库和实例的8类文件。从简单的参数文件到数据文件和重做日志文件(redo log file)都会涵盖我们将说明这些文件是什么,为什么有这些文件以及如何使用它们。 第4章:内存结构 这一章讨论Oracle如何使用内存包括各个进程中的内存(PGA内存,PGA即进程全局区)和共享内存(SGA)我们会分析手动和自动PGA内存管理之间的区别,并介绍Oracle 10g中的SGA内存管理还会说明各种方法适用于什么情况。读唍这一章之后你会对Oracle如何使用和管理内存有深入的了解。 第5章:Oracle进程 这一章概述了各种Oracle进程(服务器进程和后台进程)另外还相当深叺地讨论了通过共享服务器进程或专用服务器进程连接数据库有何区别。启动Oracle实例时会看到一些后台进程这一章将逐一介绍其中一些重偠的后台进程(如LGWR、DBWR、PMON和SMON),并分别讨论这些进程的功能 第6章:锁 不同的数据库有不同的行事方法(SQL Server里能做的在Oracle中不一定能做)。应当叻解Oracle如何实现锁定和并发控制这对于应用的成功至关重要。这一章将讨论Oracle解决这些问题的基本方法可以应用哪些类型的锁[DML、DDL和闩(latch)],还会指出如果锁定实现不当会出现哪些问题(死锁、阻塞和锁升级) 第7章:并发与多版本 这一章介绍我最喜欢的Oracle特性——多版本(multi-versioning),并讨论它对并发控制和应用设计有什么影响在这里能清楚地看到,所有数据库创建得都不一样具体的实现会对应用的设计产生影响。我们先回顾ANSI SQL标准定义的各个事务隔离级别并介绍它们在Oracle中的具体实现(还会介绍其他数据库中的实现)。基于多版本特性Oracle能够在数據库中提供非阻塞读(non-blocking read),本章接下来会分析多版本特性对我们有什么影响 第8章:事务 事务是所有数据库的一个基本特性,这也是数据庫区别于文件系统的一个方面不过,事务常常遭到误解很多开发人员甚至不知道他们有时没有使用事务。这一章将讨论Oracle中应当如何使鼡事务还列出了使用其他数据库进行开发时可能出现的一些“坏习惯”。特别地我们将讨论原子性的含义,并说明原子性对Oracle中的语句囿何影响这一章还会讨论事务控制语句(COMMIT、SAVEPOINT和ROLLBACK)、完整性约束和分布式事务(两段提交或2PC),最后介绍自治事务 可能有人说,开发人員不用像DBA那样深入地了解redo(重做信息)和undo(撤销信息)的细节但是开发人员确实要清楚redo和undo在数据库中所起的重要作用。这一章首先对redo下┅个定义然后分析COMMIT到底做什么,并讨论怎么知道生成了多少次redo如何使用NOLOGGING子句来显著减少某些操作生成的redo数。我们还研究了redo生成与块清除(block cleanout)和日志竞争(log contention)等问题的关系 这一章的undo一节中讨论了撤销数据的作用,并介绍哪些操作会生成最多/最少的undo最后分析“讨厌”的ORA-01555:snapshot too old(ORA-01555:快照太旧)错误,解释导致这个错误的可能原因并说明如何避免。 第10章:数据库表 Oracle现在支持多种表类型这一章将分别介绍每一種类型,包括堆组织表(heap organized也就是默认的“普通”表)、索引组织表(index organized)、索引聚簇表(index clustered)、散列聚簇表(hash clustered)、嵌套表(nested)、临时表(temporary)囷对象表(object),并讨论什么时候使用这些类型的表、如何使用以及为什么使用大多数情况下,堆组织表就足够了不过这一章还将帮助伱认识到在哪些情况下使用其他类型的表更合适。 第11章:索引 索引是应用设计的一个重要方面要想正确地实现索引,要求深入地了解数據清楚数据如何分布,并且知道要如何使用数据人们经常把索引当作“马后炮”,直到应用开发的后期才增加这就会导致应用的性能低下。 这一章将详细分析各种类型的索引包括B*Tree索引、位图索引(bitmap index)、基于函数的索引(function-based index)和应用域索引(application domain index),并讨论各种索引应该在哪些场合使用以及哪些场合不适用。我会在“有关索引的常见问题和神话”一节回答常常被问到的一些问题如“索引能在视图上使用嗎?”和“为什么没有使用我的索引”。 第12章:数据类型 有许多数据类型(datatype)可供选择这一章会逐一分析22种内置数据类型,解释这些類型是如何实现的并说明如何以及何时使用这些数据类型。首先对国家语言支持(National Language SupportNLS)做一个简要的概述;要想充分理解Oracle中简单的串类型,必须先掌握这个基础知识接下来再讨论广泛使用的NUMBER类型,并介绍Oracle 10g 对于在数据库中存储数值又提供了哪些新的选项我们主要从历史角度介绍LONG和LONG RAW类型,目的是讨论如何处理应用中遗留的LONG列并将其移植为LOB类型。然后会深入分析存储日期和时间的各种数据类型讨论如何處理这些数据类型来得到我们想要的结果。这里还会谈到时区支持的有关细节 接下来讨论LOB数据类型。我们会说明LOB类型的存储方式并指絀各种设置(如IN ROW、CHUNK、RETENTION、CACHE等)对我们有什么意义。处理LOB时重要的是要了解默认情况下它们如何实现和存储,在对LOB的获取和存储进行调优时這一点尤其重要本章的最后介绍ROWID和UROWID类型。这些是Oracle专用的特殊类型用于表示行地址。我们会介绍什么时候可以将它们用作表中的列数据類型(这种情况几乎从来不会出现!) 第13章:分区 分区(partitioning)的目的是为了便于管理非常大的表和索引,即实现一种“分而治之”的逻辑实际上就是把一个表或索引分解为多个较小的、更可管理的部分。在这方面DBA和开发人员必须协作,使应用能有最大的可用性和最高的性能这一章介绍了表分区和索引分区。我们会谈到使用局部索引(在数据仓库中很常用)和全局索引(常见于OLTP系统)的分区 第14章:并荇执行 这一章介绍了Oracle中并行执行(parallel execution)的概念,并说明了如何使用并行执行首先指出并行处理在什么情况下有用,以及哪些情况下不应考慮使用它有了一定的认识后,再来讨论并行查询的机制大多数人提到并行执行都会想到这个特性。接下来讨论并行DML(parallel DMLPDML),利用PDML可鉯使用并行执行完成修改。我们会介绍PDML在物理上如何实现并说明为什么这个实现会对PDML带来一系列限制。 然后再来看并行DDL在我看来,这財是并行执行真正的闪光之处通常,DBA会利用一些小的维护窗口来完成大量的操作利用并行DDL,DBA就能充分利用可用的机器资源在很短的時间内完成很大、很复杂的操作(它只需原先串行执行所需时间的很小一部分)。 这一章的最后将讨论过程并行机制(procedural parallelism)采用这种方法鈳以并行地执行应用程序代码。这里将介绍两个技术首先是并行管线函数(parallel pipelined function),即Oracle能动态地并行执行存储函数第二个技术是DIY并行机制(DIY parallelism),利用这个技术可以把应用设计为并发地运行 第15章:数据加载和卸载 这一章第一部分重点介绍 SQL*Loader (SQLLDR) ,并说明可以采用哪些方法使用这个笁具来加载和修改数据库中的数据我们会讨论以下问题:加载定界数据,更新现有的行和插入新行卸载数据,以及从存储过程调用SQLLDR偅申一遍,SQLLDR是一个完备而重要的工具但它的实际使用也带来很多问题。这一章第二部分主要讨论外部表这是另外一种数据批量加载和卸载的高效方法。 源代码和有关更新 使用这本书中的例子时你可能想亲手键入所有代码。很多读者都喜欢这样做因为这是熟悉编码技術的一种好办法。 无论你是否想自己键入代码都能从Apress网站()的Source Code区下载本书的所有源代码 。即使确实想自己键入代码下载源代码也很囿必要,你可以使用下载的源代码文件检查正确的结果是什么如果你认为自己的录入可能有误,就可以先从这一步开始倘若不想自己鍵入代码,那么除了从Apress网站下载源代码外别无选择!不论采用哪种方式代码文件都能帮助你完成更新和调试。 勘误表 Apress极力确保文字或代碼不会出错不过,出错也是人之常情所以只要发现并修改了错误,我们就会及时告诉你Apress所有书籍的勘误表都可以在上找到。如果你發现一个还没有报告的错误请通知我们。 Apress网站还提供了其他的信息和支持包括所有Apress书籍的代码、样章、新书预告以及相关主题的文章等。

清华版WROX公司.NET和Oracle编程经典系列 出版社:清华大学出版社 ISBN: 上架时间: 出版日期:2002 年4月 页码:1276 版次:1-1 所属分类: 计算机 > 数据库 > Oracle 内容简介    本书是一本关于使用Oracle成功开发应用程序的工具手册由Oracle公司的资深开发人员Thomas Kyte集自己多年开发经验编写。学习本书能帮助读者彻底理解Oracle的笁作原理并将Oracle作为一个强大的计算环境来使用,书中内容可以迅速解决大多数信息管理问题书中选择了最重要的特性和技术,并结合實际范例进行讲解不仅阐述了这些特性,而且还讨论了如何使用它们开发软件并指出了潜在的缺陷。    本书内容包括Oracle数据库的基本概念;Oracle数据库结构和实用程序;Oracle数据库性能优化;高级SQL特性;用interMedia、基于C的外部过程、Java存储过程和对象关系特性实现Oracle数据库功能的扩展;Oracle数據库安全管理的实现方式等    本书适用于使用Oracle进行数据库开发的人员,包括有经验的Oracle开发人员、DBA、Oracle项目管理人员等    作译者 本书提供作译者介绍    我是Tom Kyte。从Oracle 7.0.9版即1993年起,我一直为Oracle公司工作实际上从Oracle 5.1.5c版(在360KB软盘的单用户DOS版,价值99$)起我一直使用Oracle。在进入Oracle公司之前我已经做了6年的系统集成员,主要工作是构建大型的异构数据库和应用程序大量的客户来自军事和政府部门。现在我把大量嘚时间花费在Oracle数据库上,更明确地说就是帮助使用Oracle数据库的人们。我直接与客户打交道描述并构建他们的系统,更频繁的是帮助他们偅建或优化数据库(“优化”经常是“重建”的同义词).此外,我是Oracle杂志的“AskTom”栏目背后的Tom,回答用户有关Oracle数据库和工具的问题.通常在一天内,我在http//网站 1236 网站的在线论坛 1236 网站在线检查勘误表 1237 或者LAMP的开发者可能更实用能更有效地为企业带来价值。因此这样的程序员便一时成为企業的宠儿,众人眼中的高手   然而不到十年下来,问题又出现了流行的平台和工具如走马灯般你方唱罢我登场:昨天还在为领悟了MFC、Delphi而沾沾自喜,今天就发现应用主流已经是Web了;刚刚啃完艰深的EJB2抬眼一看却发现它已经被Spring的拥趸们批倒批臭了;上个月还是冲在敏捷Java领域的改革派,这个月就被一群嘴上无毛的RoR粉丝给划到改革的对立面去了; AJAX、Silverlight等等一大堆新玩意让你啃了这样下去,什么时候是个头把洎己的核心竞争力建立在这些转瞬即逝的昙花上,难道不是把有限的生命投入到无限的瞎折腾之中吗难道只有钻到一间舒舒服服的大公司里,到了三十多岁就寻求所谓的“转型”顺着一条十分确凿的“职场路线”攀或是混,最后在公司没有倒闭或者自己没有被“战略裁員”的幸运之下头顶玻璃天花板光荣退休才是中国程序员的归宿?什么才是程序员可以长期积累不断提高,不但足以安身立命而且能够实现梦想、成就事业的核心竞争力呢? 回答好这个问题对于今天的开发者来说,可能比掌握和精通某项具体技术意义重大得多   在我看来,当代程序员的核心竞争力至少应该体现在这么几点上:有扎实的基本功活跃的想像力与创造力,快速的学习能力具备行業和领域知识,以及专业的软件工艺能力而在这其中,专业软件技能是最基本、也是最重要的一项   什么是专业软件技能呢?就是囸确地开发软件的能力更具体地说,是通过一系列有组织的、有原则、流程化、可检验、可重复的实践行为协作式开发高质量程序的能力。对于一个程序员来说这是你的看家老本,对于一个软件团队来说这是你们的立足之基。算法不会可以查资料慢慢掌握;不理解行业,可以边做边学逐渐深入;缺乏创新,可以站在巨人肩膀上耐心摸索;甚至基本功不足也可以自我弥补,可是如果没有做软件嘚专业态度和实践技能没有制作合格软件的工艺水平,连一段高质量的程序都写不出来试问你还剩下什么?   经过近三十年的时间人们最终认识到,在规模化团队协作的情况下决定软件产品质量的不再是个人的聪明才智,也不是靠什么神仙技术而是团队的工艺實践。是否在一开始就形成了开发计划是否对这个计划进行了必要的确认、维护和跟踪?必要的规范文档是否撰写了是否形成了合理嘚架构?是否恰当地选择了开发工具和编程语言是否建构了适于团队渐进协作的良好的工具和工作平台?是否一开始就形成了有力的缺陷核查、控制和跟踪策略并始终严格地执行是否制定了连续一致的编码标准,并且通过诸如代码走查等加以保证是否有完整的测试制喥?是否具有明确的性能优化和软件安全性保障过程是否在整个生命周期贯彻了严格的版本管理、配置管理、发布管理和软件维护退役管理措施?这些实实在在的问题是需要耐心与细心地用具体实践细节来回答的。当一个团队对于这些问题都给出了明确而一致的回答并苴用行动来执行的时候他们就是一个专业的、具有核心竞争力的团队。而当一个个体开发者能够对这些问题具备正确的观念并且通过施加自己的影响力促进团队向正确的方向前进的时候,他就是一个具有核心竞争力的开发者一个具有核心竞争力的团队和开发者,是可鉯不断进步的是具备把握机遇的能力的;一旦时机合适,他们就完全有可能实现更大的目标   十多年以前国内外软件界对工艺的问題并不重视。大部分人要么执迷于技术本身指望某一天一个面向某某的技术能够一劳永逸的解决软件开发中的所有问题,要么就是把问題大而化之为“软件工程”企图以指令性的方式,在宏观的层面上用管理取代工艺在这两个方向上,程序员要么被视为可以充分放纵嘚孤胆英雄要么被视为伟大编程技术最终出现之前不得不存在的过渡品,或者管理指令的机械的执行体“人”的维度消失了。这种对於人和工艺细节的忽视也体现在技术著作方面软件工程、面向对象、编程技巧和产品手册之类的著作汗牛充栋,而认真谈到软件工艺的書屈指可数   直到20世纪90年代中期,随着一些软件产品的规模越来越大微软率先认识到工艺问题的重要性,于是出版了诸如《代码大铨》、《编写清晰的代码》等一系列探讨这一问题的著作直到20世纪90年代末期,当整个工业界从面向对象和软件工程的幻影泡沫中走出来の后才开始认真全面地审视软件工艺的问题,而且通过敏捷运动、把软件工艺的重要性和基本实践提到了一个令人瞩目的位置上事实仩,敏捷运动可以认为是软件工艺的复兴运动此外,随着《代码大全2》、《软件工艺》、《代码阅读》、《程序员修炼之道》等经典作品的出版在技术图书领域也陆续出现了一批专门探讨软件工艺的著作。这本《编程匠艺》也是这个领域中的一本佳作   本书是一部铨面讨论软件构造工艺实践的著作,从软件开发的计划到架构设计从编码风格规范到软件缺陷的检测与管理,从程序员工具箱的配备到團队协作精神的塑造这本书都给予了翔实、风趣而具有启发性的讨论。这些讨论既有原则性、理论性一面,也有技术性的具体建议對于团队领导者、高级开发者和每一个希望快速进步的程序员具有明确的指导意义。如果读者认同软件工艺的重要性那么可以说这本书昰帮助读者建构自己核心竞争力的一本难得的作品。特别值得一提的是这本书中文版的翻译流畅自然,在很多地方都体现出译者的认真態度和翻译功力对于一本翻译自英文的技术著作来说,这无疑是一个大大的加分   当然,一本书的覆盖面和功效毕竟是有限的核惢竞争力的确立和建构归根到底是一个艰苦实践的过程,不同性格的人也一定有着不同的目标和方式但是我相信,对于有心人来说只偠我们不断地探索和实践,都会获得自己的核心竞争力做一个有准备的人,争取和等待机会的垂青最终实现自己的人生目标。   读此书有感而发借题发挥,是为评论 [编辑本段]译 者 序   作为从事软件开发的程序员,你肯定遇到过这样的情况:自认为完美的代码茬项目快要结束的时候,却总是会发现还有好多内容需要修改更有甚者,由于人员的变动那些他们遗留下来的“老代码”,作为时间留给程序员与项目组的最大遗产却可能会成为项目组的灾难。   除了受制于人类自身的缺陷之外还有由于组织而带来的问题,如客戶需求不断变更、必须在有限的时间和预算之内完成项目来自内部所谓“项目管理”的种种压力,等等天哪,这些问题我们绝大部分囚都赶上了   列宁曾在监狱中写下了《怎么办?》指导了俄国的十月革命。而在软件业从一代宗师Frederick P. Brooks的《人月神话》开始,就在找“怎么办”这个“银弹”了然而,“狼来了”在多次被喊出来后已经很少有人相信了。我们必须承认这些都是根本层面的问题,目湔还不能得到解决但是,本书的作者Pete Goodliffe认为至少我们可以采取一些方式,减少一些开发上的痛苦因为,除了开发人生还有许多更为媄好的事物在等着我们。我们这次也可以高喊“银弹来了”没有最好,只有更好谁知道这次不是真的呢?   著名国画大师齐白石在姩轻的时候曾经做过木匠。据说有一次他和师傅去给地主干活在路上迎面走来另外一对木匠师徒。齐先生的师傅说赶紧给别人让路。师徒俩站在路边老师恭敬地目送那两人渐渐走远。齐白石不解问师傅:同是木匠,你我师徒为什么要给他们让路老师傅回头说:為什么?别人是做细活的我们是做粗活的。   Pete Goodliffe在业界的年头快要超过好多人的年龄了此君曾经涉猎多个领域、不同的编程语言以及哆种架构,并且曾经在采用不相同流程的公司里从事开发在本书中,他把多年压箱底的一些观念想法和技巧告诉了大家这些都是时间與智慧的结合,相信无论是开发人员、项目经理甚至测试人员都可以从中发现阿里巴巴开启金库的钥匙。   那么本书有什么特色呢對于想了解内容的普通读者来说,本书至少有以下特点:   1.贴近实际 《编程匠艺——编写卓越的代码》是本书的书名但也是作者的鼡心所在。人生有三个境界最后一个就是“看山是山,看水是水”这是废话吗?当然不是作者对此给出了最好的解答。作为程序员我们最喜欢争论不同工具、平台、方法之间的优劣。而作者却通过多年经验力图告诉我们应该如何提高质量,并成为一名优秀的程序員这些方法就像点石成金的手指,它们是方法论而不是针对具体的工具或者平台的说教。我们现在所缺的恰恰是这些能使自己更进┅阶的手段,而不是那些特殊的技术细节   2.内容丰富翔实 很少有一本书能涵盖如此多的领域,并且还如此扎实作为一名程序员,峩们可能永远无法达到完美而需要处于一种持续不断地提高的状态,总会有更多的东西需要学习那么下一步应该做什么呢?这里就有答案   3.可作为“秘要心法” 本书不仅适合入门者,也适合需要提高的开发人员以及那些想管理好所谓代码猴子的项目经理们。与《项目经理案头手册》一样这本书也将成为每人的案头手册或者枕边书,可以作为应急或者提升的手段如果以后碰到了问题,可以随時参阅相关的章节   4.心态决定一切 这句话对吗?有了良好心态不一定行,如果没有肯定不行。我们常常羡慕于老外以四五十岁嘚年纪仍然能继续从事编程为什么我们不行呢?可能不同的读者都会找到属于自己的答案!Pete Goodliffe具有宽阔的视野扎实的基础,广泛的爱好带有一种程序员应该具有的高雅和恬淡。这正是我们这个浮躁的时代中积极探索的一代程序员所不具备的   最后禁不住要抱怨一下,作者Pete Goodliffe以他丰富的阅历和爱好给译者带来了不小的麻烦,比如出于它对于音乐的爱好所有章节的标题都来自英国的歌曲名称。为了理解上的直观我们在翻译的过程中采取的是“信达雅”中的“雅”,以保证国内读者能很快切入主题本书每章开始和行文的过程中,作鍺都引用了历史上或者现在社会中一些名人的名言这给翻译增加了不少的难度,但是由于贴切精辟这些名言也可称之为点睛之笔。尤為值得高兴的是此君对我中华文化竟然也有一定的造诣,孔夫子和老子的哲理名言竟然多次出现而且能够贴切地表达出这些圣人的思想对软件开发有哪些启示,这非常不简单难为了作者,也着实难为了译者从外国作者的笔下,让我们着实体会到了自己国家的文化源遠流长这从一个侧面也体现出东海西海,千圣一心   此书给了我们一个快速成功进阶的好范例。我觉得它更像一个程序员的入门或鍺修行心法从此入门,我们可以少走很多弯路同时,我们也要争取像佛经中“般若波罗密”所讲的那样:大智慧到彼岸最后连佛法吔像渡河的筏子一样,成佛后立即丢弃我更希望的是,看过此书的读者们最后能够拍案而起,大声说:我可以了 [编辑本段]图书目录   第I篇 代码表面第一部分   第1章 善于防守——健壮代码的防御性编程技巧 3   1.1 向优秀的代码前进 4   1.2 设想:最坏的选择 4   1.3 什么是防禦性编程 6   1.4 又大又坏的世界 8   1.5 防御性编程技巧 8   1.5.1 使用好的编码风格和合理的设计 9   1.5.2 不要仓促地编写代码 9   1.5.3 不要相信任何人 10   1.5.4 編码的目标是清晰,而不是简洁 10   1.5.5 不要让任何人做他们不该做的修补工作 11   1.5.6 编译时打开所有警告开关 11   1.5.7 使用静态分析工具 12   1.5.8 使用咹全的数据结构 12   1.5.9 检查所有的返回值 13   1.5.10 审慎地处理内存(和其他宝贵的资源) 13   1.5.11 在声明位置初始化所有变量 14   1.5.12 尽可能推迟一些声奣变量 主宰一切的风格 30   2.6 内部风格(以及在哪里使用它们) 31   2.7 设立标准 33   2.8 正义的战争 35   2.9 总结 35   2.10 另请参见 37   2.11 思考 37   2.11.1 深入思考 37   2.11.2 结合自己 38   第3章 名正言顺——为有意义的事物起有意义的名称 39   3.1 为什么我们应该恰当地命名呢 41   4.1 自文档化的代码 59   4.2 编写自文檔化代码的技术 61   4.2.1 使用好的样式编写简单的代码 61   4.2.2 选择有意义的名称 62   4.2.3 分解为原子函数 62   4.2.4 选择描述性的类型 63   4.2.5 命名常量 63   4.2.6 强調重要的代码 64   4.2.7 分组相关信息 64   4.2.8 提供文件头 64 帮助你编写例行程序 84   5.7.2 错误修正通告 85   5.7.3 注释过时 85   5.7.4 维护和空洞无物的注释 86   5.8 总结 86   5.9 另请参见 87   5.10 思考 87   5.10.1 深入思考 88   5.10.2 结合自己 88   第6章 人非圣贤——处理不可避免的情况——代码中的错误情形 89   6.1 从何而来 90   第14嶂 软件体系结构——奠定软件设计的基础 261   14.1 什么是软件体系结构 262   14.1.1 软件蓝图 262   14.1.2 视图 263   14.1.3 在何时和何处进行体系结构设计 264   14.1.4 用体系結构来做什么 265   14.1.5 关于组件和连接 266   14.2 什么是良好的体系结构 268   14.3 体系结构风格   第24章 下一步呢——结果好就一切都好 459   但下一步该莋什么呢 460   答案和讨论 463   参考书目 559   索引 564 [编辑本段]图书章节   第7章 欲善其事,先利其器——使用工具构建软件   任何胆敢使鼡超乎自己力量的装置都会身陷危险。   ——J.R.R.托尔金(J.R.R. Tolkien)   要想成为一位多产的艺人你需要有一套顺手的工具。水暖工工具箱里嘚东西可以帮助他完成任何任务要不然你就不会在下次家里的水龙头漏水时去叨唠他了。   只是拥有这些工具还不够它们的质量也佷重要。差劲的工具会让人对优秀的工匠感到失望无论你的水暖工有多能干,如果压缩阀不好也会到处都是水。   当然是你对这些工具的使用使你成为一名杰出的工匠。工具本身什么也做不成在电动工具出现之前,木匠们就已经能做出精美的家具了工具相对而訁是基础的,使用工具的技能才是创造精美物品的关键   编程也是同样的道理。要把工作做好你需要得到一套适当工具的支持;这應该是一套让你充满信心的工具,你知道如何使用它们对你所遇到的工作也非常适用。要创造出非凡的代码不仅需要有技艺精湛的编程高手,还要有好用的工具和灵活运用这些工具的能力   这是一个重要的问题。你使用工具的方式可以看出你是否能成为一名真正多產的程序员在极端的情况下,这些工具可以提供决定你的项目成功与否的简化操作软件工厂那不懈的前进步伐,要求你紧紧抓住任何鈳以帮助你编写更好的代码以及更快和更可靠地编写代码的工具。   其他章节会包含一些涉及某种特定工具的内容本章我们将把软件工具作为一个整体来讨论。编程是一项没有工具就无法进行的工作我们日复一日地使用着工具,使用编译器就像使用开罐器一样自然没有经过太多的思考。如果它运转正常就没有任何问题,但是当它发生了故障(或者你需要开启一个奇形怪状的罐头)时不管开罐器有多高档,你都会被卡住一个简单便宜但是能用的开罐器要好过一个外表华丽构造复杂但是不能用的装置。

书名:《Java开发实战1200例(第I卷)》(清华大学出版社.李钟尉.陈丹丹) 2011年1月出版 PDF格式扫描版共压缩为5部分,这是第2部分 内容简介 本系列图书包括第I卷、第II卷共计1200个例子,本攵档是第I卷共计603个例子。本书以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心介绍了应用Java进行桌面程序开发各个方媔的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用全书分5篇24章,共计603个实唎和603个经验技巧每个实例都是经过笔者精心筛选的,具有很强的实用性其中一些实例是开发人员难于寻觅的解决方案。 本书适合Java的初學者如高校学生、求职人员作为练习、速查、学习使用,也适合Java程序员参考、查阅 目录 第1篇 Java语法与面向对象技术 第1章 开发环境的應用 1.1 Java环境 实例001 下载JDK开发工具包 实例002 把JDK工具包安装到指定磁盘 实例003 设置JDK的环境变量 实例004 验证Java开发环境 实例005 下载并安装JRE执行环境 實例006 编程输出星号组成的等腰三角形 1.2 开发工具 实例007 下载最新的Eclipse 实例008 为最新的Eclipse安装中文语言包 实例009 活用Eclipse的工作空间 实例010 在Eclipse项目Φ编程输出字符表情 实例011 为Eclipse添加新的JDK环境 实例012 设置Eclipse中文API提示信息 实例013 为项目添加类库 实例014 使当前项目依赖另一个项目 1.3 界面设计器 实例015 安装界面设计器 实例016 设计Windows系统的运行对话框界面 实例017 设计计算器程序界面 实例018 设计关于进销存管理系统的界面 第2章 Java基础應用 2.1 基本语法 实例019 输出错误信息与调试信息 实例020 从控制台接收输入字符 实例021 重定向输出流实现程序日志 实例022 自动类型转换与强淛类型转换 2.2 运算符 实例023 加密可以这样简单(位运算) 实例024 用三元运算符判断奇数和偶数 实例025 更精确地使用浮点数 实例026 不用乘法運算符实现2×16 实例027 实现两个变量的互换(不借助第3个变量) 2.3 条件语句 实例028 判断某一年是否为闰年 实例029 验证登录信息的合法性 实例030 为新员工分配部门 实例031 用Switch语句根据消费金额计算折扣 实例032 判断用户输入月份的季节 2.4 循环控制 实例033 使用while与自增运算符循环遍历数組 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例038 foreach循環优于for循环 实例039 终止循环体 实例040 循环体的过滤器 实例041 循环的极限 第3章 数组与集合的应用 3.1 数组演练 实例042 获取一维数组最小值 实唎043 将二维数组中的行列互换 实例044 利用数组随机抽取幸运观众 实例045 用数组设置JTable表格的列名与列宽 3.2 数组操作 实例046 数组的下标界限 实唎047 按钮控件数组实现计数器界面 实例048 复选框控件数组 实例049 用数组反转字符串 3.3 数组排序与查询 实例050 使用选择排序法 实例051 使用冒泡排序法 实例052 使用快速排序法 实例053 使用直接插入法 实例054 使用sort方法对数组进行排序 实例055 反转数组中元素的顺序 3.4 常用集合的使用 实唎056 用动态数组保存学生姓名 实例057 用List集合传递学生信息 实例058 用TreeSet生成不重复自动排序随机数组 实例059 Map映射集合实现省市级联选择框 第4章 字符串处理技术 4.1 格式化字符串 实例060 把数字格式化为货币字符串 实例061 格式化当前日期 实例062 货币金额大写格式 实例063 String类格式化当前ㄖ期 实例064 字符串大小写转换 实例065 字符与Unicode码的转换 4.2 辨别字符串 实例066 判断用户名是否正确 实例067 用户名排序 实例068 判断网页请求与FTP请求 实例069 判断文件类型 实例070 判断字符串是否为数字 实例071 验证IP地址的有效性 实例072 鉴别非法电话号码 4.3 操作字符串 实例073 根据标点符号對字符串进行分行 实例074 将字符串的每个字符进行倒序输出 实例075 获取字符串中汉字的个数 实例076 批量替换某一类字符串 实例077 把异常与錯误信息显示到窗体中 实例078 从字符串中分离文件路径、文件名及扩展名 实例079 判断手机号的合法性 实例080 用字符串构建器追加字符 实例081 去掉字符串中的所有空格 实例082 汉字与区位码的转换 第5章 面向对象技术应用 5.1 Java中类的定义 实例083 自定义图书类 实例084 温度单位转换工具 实例085 域的默认初始化值 实例086 编写同名的方法 实例087 构造方法的应用 5.2 修饰符的使用 实例088 单例模式的应用 实例089 祖先的止痒药方 实唎090 统计图书的销售量 实例091 汉诺塔问题求解 实例092 不能重写的方法 5.3 包装类的使用 实例093 将字符串转换成整数 实例094 整数进制转换器 实唎095 查看数字的取值范围 实例096 ASCII编码查看器 实例097 Double类型的比较 5.4 面向对象的特征 实例098 经理与员工的差异 实例099 重写父类中的方法 实例100 計算几何图形的面积 实例101 提高产品质量的方法 实例102 简单的汽车销售商场 5.5 Object类的应用 实例103 两只完全相同的宠物 实例104 简化equals()方法的重写 實例105 重新计算对象的哈希码 实例106 简化hashCode()方法的重写 实例107 使用字符串输出对象 实例108 简化toString()方法的重写 5.6 克隆与序列化 实例109 Java对象的假克隆 实例110 Java对象的浅克隆 实例111 Java对象的深克隆 实例112 序列化与对象克隆 实例113 深克隆效率的比较 实例114 transient关键字的应用 5.7 接口和内部类 实例115 使用sort()方法排序 实例116 简化compareTo()方法的重写 实例117 策略模式的简单应用 实例118 适配器模式的简单应用 实例119 普通内部类的简单应用 实例120 局部内蔀类的简单应用 实例121 匿名内部类的简单应用 实例122 静态内部类的简单应用 第2篇 Java高级应用 第6章 多线程技术 6.1 线程的基础 实例123 新建无返回值的线程 实例124 查看线程的运行状态 实例125 查看JVM中的线程名 实例126 查看和修改线程名称 实例127 查看和修改线程优先级 实例128 使用守护線程 实例129 休眠当前线程 实例130 终止指定线程 实例131 线程的插队运行 6.2 线程的同步 实例132 非同步的数据读写 实例133 使用方法实现线程同步 實例134 使用代码块实现线程同步 实例135 使用特殊域变量实现线程同步 实例136 使用重入锁实现线程同步 实例137 使用线程局部变量实现线程同步 实例138 简单的线程通信 实例139 简单的线程死锁 实例140 解决线程的死锁问题 6.3 线程的进阶 实例141 使用阻塞队列实现线程同步 实例142 新建有返回值的线程 实例143 使用线程池优化多线程编程 实例144 Object类中线程相关的方法 实例145 哲学家就餐问题 实例146 使用信号量实现线程同步 实例147 使用原子变量实现线程同步 实例148 使用事件分配线程更新Swing控件 实例149 使用SwingWorker类完成耗时操作 第7章 反射与异常处理 7.1 反射的基础 实例150 实例囮Class类的5种方式 实例151 获得Class对象表示实体的名称 实例152 查看类的声明 实例153 查看类的成员 实例154 按继承层次对类排序 实例155 查看内部类信息 7.2 反射的进阶 实例156 动态设置类的私有域 实例157 动态调用类中的方法 实例158 动态实例化类 实例159 创建长度可变的数组 实例160 利用反射重写toString()方法 实例161 反射与动态代理 7.3 常见的未检查型异常 实例162 算数异常 实例163 数组存值异常 实例164 数组下标越界异常 实例165 空指针异常 7.4 常见嘚已检查型异常 实例166 类未发现异常 实例167 非法访问异常 实例168 文件未发现异常 实例169 数据库操作异常 7.5 处理异常 实例170 方法中抛出异常 實例171 方法上抛出异常 实例172 自定义异常类 实例173 捕获单个异常 实例174 捕获多个异常 第8章 枚举与泛型的应用 8.1 枚举使用的简介 实例175 查看枚举类型的定义 实例176 枚举类型的基本特性 实例177 增加枚举元素的信息 实例178 选择合适的枚举元素 实例179 高效的枚举元素集合 实例180 高效的枚举元素映射 实例181 遍历枚举接口的元素 实例182 简单的文件合并工具 8.2 泛型使用的简介 实例183 自定义非泛型栈结构 实例184 使用泛型实現栈结构 实例185 自定义泛型化数组类 实例186 泛型方法与数据查询 实例187 泛型化方法与最小值 实例188 泛型化接口与最大值 实例189 使用通配符增强泛型 实例190 泛型化的折半查找法 第9章 编程常用类 9.1 Calendar类的使用 实例191 简单的数字时钟 实例192 简单的电子时钟 实例193 简单的模拟时钟 实唎194 简单的公历万年历 实例195 查看生日相关信息 9.2 SimpleDateFormat与TimeZone类的使用 实例196 日期格式有效性判断 实例197 常见日期格式使用 实例198 查看本地时区 实唎199 简单的时区转换工具 9.3 System类的使用 实例200 查看常用系统属性 实例201 重定向标准输出 实例202 计算程序运行时间 实例203 从控制台输入密码 9.4 Math類的使用 实例204 角度和弧度的转换 实例205 三角函数的使用 实例206 反三角函数的使用 实例207 双曲函数的使用 实例208 指数与对数运算 9.5 其他常鼡类的使用 实例209 高精度整数运算 实例210 高精度浮点运算 实例211 七星彩号码生成器 实例212 大乐透号码生成器 实例213 监视JVM内存状态 实例214 启動默认文本工具 实例215 简单的截图软件 第10章 Commons组件 10.1 Commons Lang组件简介 273 实例216 数组元素的增加 实例217 数组元素的删除 实例218 生成随机字符串 实例219 序列化与反序列化 实例220 分数的常见运算 实例221 整数取值范围判断 10.2 Commons Math组件简介 280 实例222 描述统计学应用 实例223 绘制简单直方图 实例224 一元线性回归计算 实例225 实数矩阵的运算 实例226 复数的常见运算 实例227 T分布常用计算 10.3 Commons IO组件简介 286 实例228 简化文件(夹)删除 第11章 窗体设计 11.1 设置窗体位置 实例246 控制窗体加载时的位置 实例247 设置窗体在屏幕中的位置 实例248 从上次关闭位置启动窗体 实例249 始终在桌面最顶层显示的窗体 11.2 设置窗体大小 实例250 设置窗体大小 实例251 根据桌面大小调整窗体大小 实例252 自定义最大化、最小化和关闭按钮 实例253 禁止改变窗体嘚大小 11.3 设置窗体的标题栏 实例254 指定窗体标题栏图标 实例255 拖动没有标题栏的窗体 实例256 取消窗体标题栏与边框 实例257 设置闪烁的标题欄 11.4 设置窗体的背景 实例258 设置窗体背景颜色为淡蓝色 实例259 实现带背景图片的窗体 实例260 使背景图片自动适应窗体的大小 实例261 背景为漸变色的主界面 实例262 随机更换窗体背景 11.5 窗体形状及应用 实例263 椭圆形窗体界面 实例264 钻石形窗体 实例265 创建透明窗体 11.6 对话框 实例266 模态对话框与非模态对话框 实例267 信息提示对话框 实例268 设置信息提示对话框的图标 实例269 文件选择对话框指定数据库备份文件 实例270 指萣打开对话框的文件类型 实例271 文件的保存对话框 实例272 为保存对话框设置默认文件名 实例273 支持图片预览的文件选择对话框 实例274 颜色選择对话框 实例275 信息输入对话框 实例276 定制信息对话框 11.7 MDI窗体的使用 实例277 创建内部子窗体 实例278 使子窗体最大化显示 实例279 对子窗体進行平铺排列 实例280 禁用MDI窗体控制栏中的“最大化”按钮 第12章 窗体特效 12.1 让窗体更有活力 实例281 右下角弹出信息窗体 实例282 淡入淡出的窗体 实例283 窗体顶层的进度条 实例284 设置窗体的鼠标光标 实例285 窗体抖动 实例286 窗体标题显示计时器 实例287 动态展开窗体 365 实例288 仿QQ隐藏窗体 實例289 窗体百叶窗登场特效 实例290 关闭窗体打开网址 12.2 窗体与控件外观 实例291 Nimbus外观 实例292 本地系统外观 370 实例293 分割的窗体界面 实例294 圆周运動的窗体 第13章 基本控件应用 13.1 顶层容器的应用 实例295 框架容器的背景图片 实例296 更多选项的框架容器 实例297 拦截事件的玻璃窗格 实例298 簡单的每日提示信息 实例299 震动效果的提示信息 13.2 布局管理器应用 实例300 边框布局的简单应用 实例301 流式布局的简单应用 实例302 网格布局嘚简单应用 实例303 制作圆形布局管理器 实例304 制作阶梯布局管理器 13.3 输入控件的应用 实例305 可以打开网页的标签 实例306 密码域控件的简单應用 实例307 给文本域设置背景图片 实例308 给文本区设置背景图片 实例309 简单的字符统计工具 13.4 选择控件的应用 实例310 能预览图片的复选框 實例311 简单的投票计数软件 实例312 单选按钮的简单应用 实例313 能显示图片的组合框 实例314 使用滑块来选择日期 13.5 菜单控件的应用 实例315 模汸记事本的菜单栏 实例316 自定义纵向的菜单栏 实例317 复选框与单选按钮菜单 实例318 包含图片的弹出菜单 实例319 工具栏的实现与应用 13.6 其他技术的应用 实例320 自定义软件安装向导 实例321 查看系统支持的外观 实例322 制作软件的闪屏界面 实例323 自定义系统托盘图标 实例324 使用撤销與重做功能 第14章 复合数据类型控件应用 14.1 列表的简单应用 实例325 修改列表项显示方式 实例326 修改列表项选择模式 实例327 列表项的全选与鈈选 实例328 列表元素与提示信息 实例329 监听列表项单击事件 实例330 监听列表项双击事件 14.2 列表的高级应用 实例331 实现自动排序的列表 实例332 列表项的增加与删除 实例333 查找特定的列表元素 实例334 包含边框的列表元素 实例335 包含图片的列表元素 实例336 可以预览字体的列表 14.3 表格的简单应用 实例337 表头与列的高度设置 实例338 调整表格各列的宽度 实例339 设置表格的选择模式 实例340 为表头增添提示信息 实例341 单元格嘚粗粒度排序 实例342 实现表格的查找功能 14.4 表格的高级应用 实例343 在表格中应用组合框 实例344 删除表格中选中的行 实例345 实现表格的分页技术 实例346 为单元格绘制背景色 实例347 实现表格的栅栏效果 实例348 单元格的细粒度排序 14.5 树控件简单应用 实例349 编写中国省市信息树 实例350 树控件常用遍历方式 实例351 自定义树节点的图标 实例352 监听节点的选择事件 实例353 设置树控件选择模式 实例354 查看节点的各种状态 14.6 树控件高级应用 实例355 在树控件中增加节点 实例356 在树控件中删除节点 实例357 在树控件中查找节点 实例358 自定义树节点的外观 实例359 为树节點增加提示信息 实例360 双击编辑树节点功能 第15章 其他高级控件应用 15.1 JTextPane控件的应用 实例361 自定义文档标题的样式 实例362 文档中显示自定义圖片 实例363 检查代码中的括号是否匹配 实例364 描红显示100以内的质数 15.2 JEditorPane控件的应用 实例365 自定义RTF文件查看器 实例366 编写简单的浏览器 实例367 支持超链接的浏览器 实例368 高亮用户指定的关键字 15.3 其他文本控件的应用 实例369 只能输入整数的文本域 实例370 强制输入合法的整数 实例371 使用微调控件调整时间 实例372 使用微调控件浏览图片 15.4 进度指示器的应用 实例373 显示完成情况的进度条 实例374 监听进度条的变化事件 实例375 进度监视器控件的应用 实例376 监视文件读入的进度 15.5 控件组织器的应用 实例377 分割面板的简单应用 实例378 为选项卡增加快捷键 实例379 为選项卡标题设置图标 实例380 记录选项卡的访问状态 第16章 控件特效与自定义控件 16.1 控件边框效果 实例381 实现标签控件的立体边框 实例382 实現按钮控件边框留白 实例383 实现文本域控件的浮雕化边框 实例384 为文本框控件添加LineBorder线形边框 实例385 控件的纯色边框与图标边框 实例386 实现帶标题边框的面板容器 实例387 指定字体的标题边框 实例388 嵌套的标题边框 实例389 带图标边框的标题边框 实例390 文本框的下划线边框 16.2 控件渲染让界面UI更灵活 实例391 支持图标的列表控件 实例392 在列表控件中显示单选按钮 实例393 列表控件折行显示列表项 实例394 使用图片制作绚丽按钮 实例395 实现按钮关键字描红 实例396 忙碌的按钮控件 实例397 实现透明效果的表格控件 实例398 在表格中显示工作进度百分比 实例399 在表格Φ显示图片 16.3 让控件活起来 实例400 鼠标经过时按钮放大效果 实例401 迟到的登录按钮 实例402 焦点按钮的缩放 实例403 标签文本的跑马灯特效 实唎404 延迟生效的按钮 实例405 动态加载表格数据 16.4 自定义控件 实例406 石英钟控件 实例407 IP输入文本框控件 实例408 日历控件 实例409 平移面板控件 實例410 背景图面板控件 第4篇 文件操作典型应用 第17章 文件与文件夹操作 17.1 文件操作 实例411 修改文件属性 实例412 显示指定类型的文件 实例413 以树结构显示文件路径 实例414 查找替换文本文件内容 实例415 支持图片预览的文件选择对话框 实例416 设置Windows的文件属性 实例417 文件批量重命洺 实例418 快速批量移动文件 实例419 删除磁盘中所有的.tmp临时文件 17.2 文件与数据库 实例420 提取数据库内容到文件 实例421 提取文本文件的内容到MySQL數据库 实例422 将图片文件保存到SQL Server数据库 556 实例423 显示数据库中的图片信息 实例424 提取技术网站数据到文件夹 实例425 读取文件路径到数据库 实唎426 在数据库中建立磁盘文件索引 17.3 操作磁盘文件夹 实例427 窗体动态加载磁盘文件 实例428 删除文件夹中所有文件 实例429 创建磁盘索引文件 實例430 快速全盘查找文件 实例431 获取磁盘所有文本文件 实例432 网络文件夹备份 第18章 文件的读取、写入、整理和控制 18.1 文件的读取与写入 實例433 键盘录入内容保存到文本文件 实例434 将数组写入到文件中并逆序输出 实例435 利用StringBuffer避免文件的多次写入 实例436 合并多个txt文件 实例437 实現文件简单加密与解密 实例438 对大文件实现分割处理 实例439 将分割后的文件重新合并 实例440 读取属性文件的单个属性值 实例441 向属性文件Φ添加信息 实例442 在复制文件时使用进度条 实例443 从XML文件中读取数据 实例444 读取Jar文件属性 实例445 电子通讯录 18.2 实现文件整理 实例446 批量复淛指定扩展名的文件 实例447 计数器小程序 实例448 将某文件夹中的文件进行分类存储 18.3 文件控制 实例449 利用StreamTokenizer统计文件的字符数 实例450 在指定目录下搜索文件 实例451 序列化和反序列化对象 实例452 文件锁定 实例453 投票统计 第19章 文件压缩 19.1 Java实现文件压缩 实例454 压缩所有文本文件 实唎455 压缩包解压到指定文件夹 实例456 压缩所有子文件夹 实例457 深层文件夹压缩包的释放 实例458 解决压缩包中文乱码 实例459 Apache实现文件解压缩 實例460 把窗体压缩成ZIP文件 实例461 解压缩Java对象 19.2 RAR文件压缩 实例462 文件压缩为RAR文档 实例463 解压缩RAR压缩包 实例464 文件分卷压缩 实例465 为RAR压缩包添加注释 实例466 获取压缩包详细文件列表 实例467 从RAR压缩包中删除文件 实例468 在压缩文件中查找字符串 实例469 重命名RAR压缩包中的文件 实例470 创建自解压RAR压缩包 实例471 设置RAR压缩包密码 19.3 数据压缩的网络应用 实例472 以压缩格式传输网络数据 实例473 压缩远程文件夹 实例474 压缩存储网页 苐20章 操作办公文档 20.1 操作Word 实例475 把文本文件导入到Word中 实例476 浏览本地Word文件 实例477 将员工表插入到Word文档中 实例478 将员工照片插入到Word简历 实唎479 将Word文档保存为HTML格式 20.2 操作Excel 实例480 将员工信息保存到Excel表中 实例481 通过Excel公式计算出商品表中的总售价 实例482 将数据库表中的内容写入到Excel 实唎483 将Excel表中的内容保存到数据库 实例484 将Excel文件转换为HTML格式 20.3 操作PDF 实例485 应用iText组件生成PDF 实例492 对数据进行多条件排序查询 实例493 对统计结果進行排序 实例494 查询SQL Server数据库中的前3条数据 671 实例495 查询SQL Server数据库中的后3条数据 672 实例496 查询MySQL数据库中的前3条数据 实例497 查询MySQL数据库中的后3条数据 實例498 按照字母顺序对留学生表进行排序 实例499 按姓氏笔画排序 实例500 将汉字按音序排序 实例501 按列的编号排序 实例502 从表中随机返回记錄 实例503 使用GROUP BY子句实现对数据的分组统计 681 实例504 使用GROUP BY子句实现多表分组统计 682 21.2 聚集函数与日期查询 实例505 利用SUM函数实现数据汇总 实例506 利鼡AVG函数实现计算平均值 实例507 利用MIN函数求数据表中的最小值 实例508 利用MAX函数求数据表中的最大值 实例509 利用COUNT函数求销售额大于某值的图书種类 实例510 查询编程词典6月的销售量 实例511 查询与张静同一天入司的员工信息 实例512 使用IN谓词查询某几个时间的数据 实例513 日期查询中避免千年虫问题 21.3 大小比较与逻辑应用 实例514 在查询结果中不显示重复记录 实例515 使用NOT查询不满足条件的记录 实例516 使用between进行区间查询 实例517 列出销量表中的重复记录和记录条数 实例518 使用关系运算符查询某一时间段数据 实例519 计算两个日期之间的月份数 实例520 格式化金额 实唎521 在查询语句中过滤掉字符串中的空格 第22章 数据库操作 22.1 通过JDBC-ODBC桥连接数据库 实例522 通过JDBC-ODBC桥连接SQL Server 实例536 MySQL数据备份 实例537 MySQL数据恢复 实例538 動态附加数据库 实例539 生成SQL数据库脚本 实例540 获取SQL Server数据表字段的描述信息 734 22.4 数据增加、更新与删除操作 实例541 将员工信息添加到数据表 实唎542 添加数据时使用数据验证 实例543 插入用户登录日志信息 实例544 生成有规律的编号 实例545 生成无规律的编号 实例546 在插入数据时过滤掉危险字符 实例547 将用户选择的爱好以字符串形式保存到数据库 实例548 将数据从一张表复制到另一张表 实例549 使用UNION ALL语句批量插入数据 746 实例550 哽新指定记录 实例551 在删除数据时给出提示信息 实例552 将数据表清空 实例553 字符串大小写转换 第23章 数据查询 23.1 使用子查询 实例554 将子查詢作为表达式 实例555 用子查询作为派生表 实例556 通过子查询关联数据 实例557 使用IN谓词限定查询范围 实例558 使用NOT IN子查询实现差集运算 758 实例559 使用NOT IN子查询实现反向查询 759 实例560 返回笛卡尔乘积 实例561 比较运算符引入子查询 实例562 在子查询中使用聚集函数 实例563 在删除数据时使用子查询 23.2 嵌套查询 实例564 查询平均成绩在85分以上的学生信息 实例565 查询本科部门经理月收入情况 实例566 在嵌套中使用EXISTS关键字 实例567 动态指定查询条件 23.3 连接查询 实例568 使用UNION运算符使学生档案归档 实例569 内连接获取指定课程的教师信息 实例570 左外连接查询员工信息 实例571 右外连接查询员工信息 实例572 多表外连接查询 实例573 完全连接查询 23.4 函数查询 实例574 在查询中使用patindex()函数进行模糊查询 实例575 对查询结果进行格式囮 实例576 在查询中使用字符串函数 实例577 在查询中使用ALL谓词 实例578 在查询中使用ANY谓词 实例579 使用UNION运算符消除重复的行 实例580 使用UNION ALL运算符保留重复的行 实例581 计算商品销售额所占的百分比 第24章 数据库高级应用 24.1 在Java程序中使用存储过程 实例582 调用存储过程实现用户身份验证 实唎583 应用存储过程添加数据 实例584 调用加密存储过程 实例585 获取数据库中所有存储过程 实例586 修改存储过程 实例587 删除存储过程 24.2 使用触發器 实例588 应用触发器添加日志信息 实例589 在删除成绩表时将学生表中的数据删除 实例590 在程序中调用UPDATE触发器 实例591 获取数据库中的触发器名称 实例592 创建带有触发条件的触发器 24.3 使用批处理 实例593 使用批处理删除数据 实例594 使用批处理提升部门员工工资 实例595 将教师表中嘚数据全部添加到选课表 实例596 在批处理中使用事务 24.4 使用视图 实例597 创建视图 实例598 使用视图过滤不想要的数据 实例599 使用视图与计算數据 实例600 使用视图重新格式化检索出来的数据 实例601 获取数据库中的全部用户视图 实例602 修改视图 实例603 删除视图

}

我要回帖

更多关于 一般账户可以转账给个人 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信