自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (62)
  • 收藏
  • 关注

空空如也

Spring 攻略(英文版)

目录回到顶部↑ 第一部分 核心概念. 第1章 控制反转和容器 2 1.1 使用容器管理组件 2 1.1.1 问题描述 2 1.1.2 解决方案 2 1.1.3 实现方法 3 1.2 使用服务定位器降低查找组件的复杂性 7 1.2.1 问题描述 7 1.2.2 解决方案 7 1.2.3 实现方法 7 1.3 应用控制反转和依赖注入 8 1.3.1 问题描述 8 1.3.2 解决方案 8 1.3.3 实现方法 9 1.4 理解不同类型的依赖注入 10 1.4.1 问题描述 10 1.4.2 解决方案 10 1.4.3 实现方法 11 1.5 使用配置文件配置容器 13 1.5.1 问题描述 13 .1.5.2 解决方案 14 1.5.3 实现方法 14 1.6 小结 16 第2章 spring简介 17 2.1 spring framework 17 2.1.1 spring的模块介绍 17 2.1.2 spring的发布版本 19 2.1.3 spring的项目 20 2.2 安装spring framework 21 2.2.1 问题描述 21 2.2.2 解决方案 21 2.2.3 实现方法 21 2.3 建立spring项目 22 2.3.1 问题描述 22 2.3.2 解决方案 22 2.3.3 实现方法 23 2.4 安装spring ide 24 2.4.1 问题描述 24 2.4.2 解决方案 24 2.4.3 实现方法 24 2.5 使用spring ide的bean-supporting特性 26 2.5.1 问题描述 26 2.5.2 解决方案 26 2.5.3 实现方法 26 2.6 小结 31 第3章 spring中的bean配置 32 3.1 在spring ioc容器里配置bean 32 3.1.1 问题描述 32 3.1.2 解决方案 32 3.1.3 实现方法 32 3.2 实例化spring ioc容器 36 3.2.1 问题描述 36 3.2.2 解决方案 36 3.2.3 实现方法 36 3.3 解决构造器歧义 38 3.3.1 问题描述 38 3.3.2 解决方案 38 3.3.3 实现方法 38 3.4 指定bean引用 41 3.4.1 问题描述 41 3.4.2 解决方案 41 3.4.3 实现方法 41 3.5 通过依赖检查来检查属性 44 3.5.1 问题描述 44 3.5.2 解决方案 45 3.5.3 实现方法 45 3.6 通过@required注解检查属性 46 3.6.1 问题描述 46 3.6.2 解决方案 46 3.6.3 实现方法 47 3.7 xml配置里的bean自动装配 48 3.7.1 问题描述 48 3.7.2 解决方案 49 3.7.3 实现方法 49 3.8 使用@autowired和@resource自动装配bean 52 3.8.1 问题描述 52 3.8.2 解决方案 52 3.8.3 实现方法 52 3.9 继承bean配置 58 3.9.1 问题描述 58 3.9.2 解决方案 58 3.9.3 实现方法 58 3.10 为bean属性定义集合 61 3.10.1 问题描述 61 3.10.2 解决方案 61 3.10.3 实现方法 61 3.11 为集合元素指定数据类型 67 3.11.1 问题描述 67 3.11.2 解决方案 67 3.11.3 实现方法 67 3.12 使用工厂bean和utility schema定义集合 69 3.12.1 问题描述 69 3.12.2 解决方案 69 3.12.3 实现方法 69 3.13 在classpath中扫描组件 71 3.13.1 问题描述 71 3.13.2 解决方案 71 3.13.3 实现方法 72 3.14 小结 76 第4章 高级spring ioc容器 77 4.1 通过调用构造器创建bean 77 4.1.1 问题描述 77 4.1.2 解决方案 77 4.1.3 实现方法 77 4.2 通过调用静态工厂方法创建bean 80 4.2.1 问题描述 80 4.2.2 解决方案 80 4.2.3 实现方法 80 4.3 通过调用实例工厂方法创建bean 81 4.3.1 问题描述 81 4.3.2 解决方案 81 4.3.3 实现方法 81 4.4 使用spring的工厂bean创建bean 83 4.4.1 问题描述 83 4.4.2 解决方案 83 4.4.3 实现方法 83 4.5 根据静态字段声明bean 85 4.5.1 问题描述 85 4.5.2 解决方案 85 4.5.3 实现方法 85 4.6 根据对象属性声明bean 86 4.6.1 问题描述 86 4.6.2 解决方案 86 4.6.3 实现方法 86 4.7 设置bean的作用域 88 4.7.1 问题描述 88 4.7.2 解决方案 88 4.7.3 实现方法 88 4.8 定制bean的初始化和销毁过程 90 4.8.1 问题描述 90 4.8.2 解决方案 90 4.8.3 实现方法 91 4.9 使bean感知容器 95 4.9.1 问题描述 95 4.9.2 解决方案 95 4.9.3 实现方法 96 4.10 创建bean后置处理器 96 4.10.1 问题描述 96 4.10.2 解决方案 96 4.10.3 实现方法 97 4.11 外部化bean配置 100 4.11.1 问题描述 100 4.11.2 解决方案 100 4.11.3 实现方法 100 4.12 解析文本信息 101 4.12.1 问题描述 101 4.12.2 解决方案 101 4.12.3 实现方法 101 4.13 使用应用程序事件进行通信 103 4.13.1 问题描述 103 4.13.2 解决方案 103 4.13.3 实现方法 104 4.14 在spring里注册属性编辑器 106 4.14.1 问题描述 106 4.14.2 解决方案 106 4.14.3 实现方法 106 4.15 创建定制的属性编辑器 108 4.15.1 问题描述 108 4.15.2 解决方案 109 4.15.3 实现方法 109 4.16 加载外部资源 110 4.16.1 问题描述 110 4.16.2 解决方案 110 4.16.3 实现方法 111 4.17 小结 113 第5章 动态代理和经典的spring aop 114 5.1 非模块化的横切关注点所带来的问题 115 5.1.1 追踪方法 116 5.1.2 验证参数 119 5.1.3 找出问题 120 5.2 使用动态代理模块化横切关注点 122 5.2.1 问题描述 122 5.2.2 解决方案 122 5.2.3 实现方法 122 5.3 使用经典的spring通知来模块化横切关注点 127 5.3.1 问题描述 127 5.3.2 解决方案 127 5.3.3 实现方法 128 5.4 使用经典的spring切入点匹配方法 135 5.4.1 问题描述 135 5.4.2 解决方案 135 5.4.3 实现方法 136 5.5 为bean自动创建代理 138 5.5.1 问题描述 138 5.5.2 解决方案 138 5.5.3 实现方法 138 5.6 小结 140 第6章 spring 2.x aop和aspectj支持 141 6.1 在spring中启用aspectj注解支持 141 6.1.1 问题描述 141 6.1.2 解决方案 142 6.1.3 实现方法 142 6.2 用aspectj注解声明切面 144 6.2.1 问题描述 144 6.2.2 解决方案 144 6.2.3 实现方法 144 6.3 访问连接点信息 149 6.3.1 问题描述 149 6.3.2 解决方案 149 6.3.3 实现方法 149 6.4 指定切面优先级 150 6.4.1 问题描述 150 6.4.2 解决方案 150 6.4.3 实现方法 150 6.5 重用切入点定义 152 6.5.1 问题描述 152 6.5.2 解决方案 152 6.5.3 实现方法 152 6.6 编写aspectj切入点表达式 154 6.6.1 问题描述 154 6.6.2 解决方案 154 6.6.3 实现方法 154 6.7 为bean引入行为 158 6.7.1 问题描述 158 6.7.2 解决方案 158 6.7.3 实现方法 158 6.8 为bean引入状态 161 6.8.1 问题描述 161 6.8.2 解决方案 161 6.8.3 实现方法 161 6.9 用基于xml的配置声明切面 163 6.9.1 问题描述 163 6.9.2 解决方案 163 6.9.3 实现方法 163 6.10 加载时在spring中织入aspectj切面 165 6.10.1 问题描述 165 6.10.2 解决方案 166 6.10.3 实现方法 166 6.11 在spring中配置aspectj切面 170 6.11.1 问题描述 170 6.11.2 解决方案 170 6.11.3 实现方法 170 6.12 将spring bean注入到领域对象中 171 6.12.1 问题描述 171 6.12.2 解决方案 171 6.12.3 实现方法 171 6.13 小结 174 第二部分 基础主题 第7章 spring对jdbc的支持 178 7.1 直接使用jdbc的问题 178 7.1.1 建立应用程序数据库 179 7.1.2 理解dao设计模式 180 7.1.3 用jdbc实现dao 180 7.1.4 在spring中配置数据源 182 7.1.5 运行dao 183 7.2 用jdbc模板更新数据库 184 7.2.1 问题描述 184 7.2.2 解决方案 184 7.2.3 实现方法 184 7.3 用jdbc模板查询数据库 188 7.3.1 问题描述 188 7.3.2 解决方案 189 7.3.3 实现方法 189 7.4 简化jdbc模板的创建 193 7.4.1 问题描述 193 7.4.2 解决方案 193 7.4.3 实现方法 194 7.5 在java 1.5中使用简单的jdbc模板 196 7.5.1 问题描述 196 7.5.2 解决方案 196 7.5.3 实现方法 196 7.6 在jdbc模板中使用具名参数 199 7.6.1 问题描述 199 7.6.2 解决方案 199 7.6.3 实现方法 199 7.7 将jdbc操作建模为细粒度的对象 201 7.7.1 问题描述 201 7.7.2 解决方案 201 7.7.3 实现方法 201 7.8 在spring jdbc框架中处理异常 205 7.8.1 问题描述 205 7.8.2 解决方案 205 7.8.3 实现方法 205 7.9 小结 209 第8章 spring中的事务管理 211 8.1 事务管理的问题 211 8.2 选择事务管理器实现 216 8.2.1 问题描述 216 8.2.2 解决方案 217 8.2.3 实现方法 217 8.3 用事务管理器api编程式地管理事务 218 8.3.1 问题描述 218 8.3.2 解决方案 218 8.3.3 实现方法 218 8.4 用事务模板编程式地管理事务 219 8.4.1 问题描述 219 8.4.2 解决方案 220 8.4.3 实现方法 220 8.5 用经典的spring aop声明式地管理事务 222 8.5.1 问题描述 222 8.5.2 解决方案 222 8.5.3 实现方法 222 8.6 用事务通知声明式地管理事务 224 8.6.1 问题描述 224 8.6.2 解决方案 224 8.6.3 实现方法 225 8.7 用@transactional注解声明式地管理事务 226 8.7.1 问题描述 226 8.7.2 解决方案 226 8.7.3 实现方法 226 8.8 设置传播事务属性 227 8.8.1 问题描述 227 8.8.2 解决方案 227 8.8.3 实现方法 228 8.9 设置隔离事务属性 231 8.9.1 问题描述 231 8.9.2 解决方案 231 8.9.3 实现方法 232 8.10 设置回滚事务属性 238 8.10.1 问题描述 238 8.10.2 解决方案 238 8.10.3 实现方法 238 8.11 设置超时和只读事务属性 239 8.11.1 问题描述 239 8.11.2 解决方案 239 8.11.3 实现方法 239 8.12 用加载时织入来管理事务 240 8.12.1 问题描述 240 8.12.2 解决方案 241 8.12.3 实现方法 241 8.13 小结 244 第9章 spring对orm的支持 245 9.1 直接使用orm框架的问题 245 9.1.1 利用hibernate api和hibernate xml映射持久化对象 247 9.1.2 利用hibernate api和jpa注解持久化对象 250 9.1.3 用hibernate作为jpa引擎持久化对象 252 9.2 在spring中配置orm资源工厂 255 9.2.1 问题描述 255 9.2.2 解决方案 256 9.2.3 实现方法 256 9.3 用spring的orm模板持久化对象 261 9.3.1 问题描述 261 9.3.2 解决方案 261 9.3.3 实现方法 262 9.4 用hibernate的上下文会话持久化对象 267 9.4.1 问题描述 267 9.4.2 解决方案 267 9.4.3 实现方法 267 9.5 用jpa的上下文注入持久化对象 270 9.5.1 问题描述 270 9.5.2 解决方案 270 9.5.3 实现方法 270 9.6 小结 273 第10章 spring mvc框架 274 10.1 用spring mvc开发简单的web应用程序 274 10.1.1 问题描述 274 10.1.2 解决方案 274 10.1.3 实现方法 275 10.2 将请求映射到处理程序 284 10.2.1 问题描述 284 10.2.2 解决方案 284 10.2.3 实现方法 285 10.3 用handler interceptor拦截请求 287 10.3.1 问题描述 287 10.3.2 解决方案 287 10.3.3 实现方法 288 10.4 解析用户区域 290 10.4.1 问题描述 290 10.4.2 解决方案 290 10.4.3 实现方法 290 10.5 外部化区分区域的文本信息.. 292 10.5.1 问题描述 292 10.5.2 解决方案 292 10.5.3 实现方法 292 10.6 按名称解析视图 293 10.6.1 问题描述 293 10.6.2 解决方案 293 10.6.3 实现方法 293 10.7 将异常映射到视图 296 10.7.1 问题描述 296 10.7.2 解决方案 296 10.7.3 实现方法 296 10.8 构造modelandview对象 297 10.8.1 问题描述 297 10.8.2 解决方案 297 10.8.3 实现方法 298 10.9 创建带有参数化视图的控制器 299 10.9.1 问题描述 299 10.9.2 解决方案 299 10.9.3 实现方法 300 10.10 用表单控制器处理表单 301 10.10.1 问题描述 301 10.10.2 解决方案 301 10.10.3 实现方法 302 10.11 用向导表单控制器处理多页表单 313 10.11.1 问题描述 313 10.11.2 解决方案 313 10.11.3 实现方法 313 10.12 将多个动作分组到一个控制器 321 10.12.1 问题描述 321 10.12.2 解决方案 321 10.12.3 实现方法 321 10.13 创建excel和pdf视图 326 10.13.1 问题描述 326 10.13.2 解决方案 326 10.13.3 实现方法 326 10.14 用注解开发控制器 330 10.14.1 问题描述 330 10.14.2 解决方案 330 10.14.3 实现方法 330 10.15 小结 336 第11章 整合spring与其他web框架 337 11.1 在通用的web应用程序中访问spring 337 11.1.1 问题描述 337 11.1.2 解决方案 337 11.1.3 实现方法 338 11.2 整合spring与struts 1.x 342 11.2.1 问题描述 342 11.2.2 解决方案 342 11.2.3 实现方法 342 11.3 整合spring与jsf 347 11.3.1 问题描述 347 11.3.2 解决方案 348 11.3.3 实现方法 348 11.4 整合spring与dwr 352 11.4.1 问题描述 352 11.4.2 解决方案 352 11.4.3 实现方法 352 11.5 小结 355 第12章 spring对测试的支持 356 12.1 用junit和testng创建测试 357 12.1.1 问题描述 357 12.1.2 解决方案 357 12.1.3 实现方法 357 12.2 创建单元测试和集成测试 361 12.2.1 问题描述 361 12.2.2 解决方案 362 12.2.3 实现方法 362 12.3 单元测试spring mvc控制器 370 12.3.1 问题描述 370 12.3.2 解决方案 370 12.3.3 实现方法 370 12.4 管理集成测试中的应用程序上下文 374 12.4.1 问题描述 374 12.4.2 解决方案 374 12.4.3 实现方法 375 12.5 将测试夹具注入到集成测试中 380 12.5.1 问题描述 380 12.5.2 解决方案 381 12.5.3 实现方法 381 12.6 管理集成测试中的事务 384 12.6.1 问题描述 384 12.6.2 解决方案 384 12.6.3 实现方法 385 12.7 在集成测试中访问数据库 389 12.7.1 问题描述 389 12.7.2 解决方案 390 12.7.3 实现方法 390 12.8 利用spring的通用测试注解 393 12.8.1 问题描述 393 12.8.2 解决方案 393 12.8.3 实现方法 394 12.9 小结 395 第三部分 高级主题 第13章 spring security框架 398 13.1 保护url访问 398 13.1.1 问题描述 398 13.1.2 解决方案 398 13.1.3 实现方法 399 13.2 登录web应用程序 407 13.2.1 问题描述 407 13.2.2 解决方案 407 13.2.3 实现方法 408 13.3 验证用户 411 13.3.1 问题描述 411 13.3.2 解决方案 411 13.3.3 实现方法 412 13.4 指定访问控制决策 419 13.4.1 问题描述 419 13.4.2 解决方案 419 13.4.3 实现方法 420 13.5 保护方法调用 422 13.5.1 问题描述 422 13.5.2 解决方案 422 13.5.3 实现方法 422 13.6 处理视图中的安全 425 13.6.1 问题描述 425 13.6.2 解决方案 425 13.6.3 实现方法 425 13.7 处理领域对象的安全 427 13.7.1 问题描述 427 13.7.2 解决方案 427 13.7.3 实现方法 427 13.8 小结 436 第14章 spring portlet mvc框架 437 14.1 用spring portlet mvc开发简单的 portlet 437 14.1.1 问题描述 437 14.1.2 解决方案 437 14.1.3 实现方法 438 14.2 将portlet请求映射到处理程序 444 14.2.1 问题描述 444 14.2.2 解决方案 444 14.2.3 实现方法 444 14.3 用简单表单控制器处理portlet表单 453 14.3.1 问题描述 453 14.3.2 解决方案 453 14.3.3 实现方法 453 14.4 使用注解来开发portlet控制器 460 14.4.1 问题描述 460 14.4.2 解决方案 460 14.4.3 实现方法 460 14.5 小结 465 第15章 spring web flow 466 15.1 用spring web flow管理简单的ui流程 466 15.1.1 问题描述 466 15.1.2 解决方案 466 15.1.3 实现方法 467 15.2 用不同的流程类型进行web流程建模 472 15.2.1 问题描述 472 15.2.2 解决方案 472 15.2.3 实现方法 473 15.3 保护web流程 482 15.3.1 问题描述 482 15.3.2 解决方案 483 15.3.3 实现方法 483 15.4 在web流程中持久化对象 484 15.4.1 问题描述 484 15.4.2 解决方案 485 15.4.3 实现方法 485 15.5 集成spring web flow与jsf 490 15.5.1 问题描述 490 15.5.2 解决方案 490 15.5.3 实现方法 491 15.6 小结 496 第16章 spring远程服务和web服务 497 16.1 通过rmi暴露和调用服务 498 16.1.1 问题描述 498 16.1.2 解决方案 498 16.1.3 实现方法 499 16.2 通过http公开和调用服务 502 16.2.1 问题描述 502 16.2.2 解决方案 502 16.2.3 实现方法 502 16.3 选择web服务的开发方法 505 16.3.1 问题描述 505 16.3.2 解决方案 505 16.3.3 实现方法 505 16.4 利用xfire公开和调用web服务 507 16.4.1 问题描述 507 16.4.2 解决方案 507 16.4.3 实现方法 507 16.5 定义web服务契约 512 16.5.1 问题描述 512 16.5.2 解决方案 512 16.5.3 实现方法 513 16.6 利用spring-ws实现web服务 516 16.6.1 问题描述 516 16.6.2 解决方案 516 16.6.3 实现方法 517 16.7 利用spring-ws调用web服务 522 16.7.1 问题描述 522 16.7.2 解决方案 522 16.7.3 实现方法 522 16.8 利用xml封送技术开发web服务 525 16.8.1 问题描述 525 16.8.2 解决方案 525 16.8.3 实现方法 525 16.9 利用注解创建服务端点 530 16.9.1 问题描述 530 16.9.2 解决方案 530 16.9.3 实现方法 530 16.10 小结 531 第17章 spring对ejb和jms的支持 532 17.1 用spring创建ejb 2.x组件 532 17.1.1 问题描述 532 17.1.2 解决方案 532 17.1.3 实现方法 533 17.2 在spring中访问ejb 2.x组件 537 17.2.1 问题描述 537 17.2.2 解决方案 538 17.2.3 实现方法 538 17.3 在spring中访问ejb 3.0组件 542 17.3.1 问题描述 542 17.3.2 解决方案 542 17.3.3 实现方法 542 17.4 用spring发送和接收jms消息 545 17.4.1 问题描述 545 17.4.2 解决方案 545 17.4.3 实现方法 546 17.5 在spring中创建消息驱动的pojo 558 17.5.1 问题描述 558 17.5.2 解决方案 559 17.5.3 实现方法 559 17.6 小结 564 第18章 spring对jmx、电子邮件和调度的支持 565 18.1 将spring bean导出为jmx mbean 565 18.1.1 问题描述 565 18.1.2 解决方案 565 18.1.3 实现方法 566 18.2 发布和监听jmx通知 575 18.2.1 问题描述 575 18.2.2 解决方案 575 18.2.3 实现方法 575 18.3 在spring中访问远程jmx mbean 577 18.3.1 问题描述 577 18.3.2 解决方案 577 18.3.3 实现方法 577 18.4 用spring的电子邮件支持来发送电子邮件 580 18.4.1 问题描述 580 18.4.2 解决方案 580 18.4.3 实现方法 580 18.5 用spring的jdk timer支持进行调度 587 18.5.1 问题描述 587 18.5.2 解决方案 587 18.5.3 实现方法 587 18.6 利用spring的quartz支持进行调度 589 18.6.1 问题描述 589 18.6.2 解决方案 589 18.6.3 实现方法 589 18.7 小结 593 第19章 spring中的脚本编程 594 19.1 用脚本语言实现bean 594 19.1.1 问题描述 594 19.1.2 解决方案 594 19.1.3 实现方法 594 19.2 将spring bean注入脚本 598 19.2.1 问题描述 598 19.2.2 解决方案 598 19.2.3 实现方法 598 19.3 从脚本中刷新bean 600 19.3.1 问题描述 600 19.3.2 解决方案 600 19.3.3 实现方法 600 19.4 定义内联脚本 601 19.4.1 问题描述 601 19.4.2 解决方案 601 19.4.3 实现方法 601 19.5 小结... 603 ↑折 叠

2011-07-16

程序员的SQL金典8-8

目录 第1章 数据库入门  1.1 数据库概述   1.1.1 数据库与数据库管理系统   1.1.2 数据库能做什么   1.1.3 主流数据库管理系统介绍  1.2 数据库基础概念   1.2.1 Catalog   1.2.2 表(Table)   1.2.3 列(Column)   1.2.4 数据类型(DataType)   1.2.5 记录(Record)   1.2.6 主键(PrimaryKey)   1.2.7 索引(Index)   1.2.8 表关联   1.2.9 数据库的语言——SQL   1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型   2.1.1 整数类型   2.1.2 数值类型   2.1.3 字符相关类型   2.1.4 日期时间类型   2.1.5 二进制类型  2.2 通过SQL语句管理数据表   2.2.1 创建数据表   2.2.2 定义非空约束   2.2.3 定义默认值   2.2.4 定义主键   2.2.5 定义外键   2.2.6 修改已有数据表   2.2.7 删除数据表   2.2.8 受限操作的变通解决方案 第3章 数据的增、删、改  3.1 数据的插入   3.1.1 简单的INSERT语句   3.1.2 简化的INSERT语句   3.1.3 非空约束对数据插入的影响   3.1.4 主键对数据插入的影响   3.1.5 外键对数据插入的影响  3.2 数据的更新   3.2.1 简单的数据更新   3.2.2 带WHERE子句的UPDATE语句   3.2.3 非空约束对数据更新的影响   3.2.4 主键对数据更新的影响   3.2.5 外键对数据更新的影响  3.3 数据的删除   3.3.1 简单的数据删除   3.3.2 带WHERE子句的DELETE语句 第4章 数据的检索  4.1 SELECT基本用法   4.1.1 简单的数据检索   4.1.2 检索出需要的列   4.1.3 列别名   4.1.4 按条件过滤   4.1.5 数据汇总   4.1.6 排序  4.2 高级数据过滤   4.2.1 通配符过滤   4.2.2 空值检测   4.2.3 反义运算符   4.2.4 多值检测   4.2.5 范围值检测   4.2.6 低效的“WHERE 1=1”  4.3 数据分组   4.3.1 数据分组入门   4.3.2 数据分组与聚合函数   4.3.3 HAVING语句  4.4 限制结果集行数   4.4.1 MySQL   4.4.2 MS SQL Server 2000   4.4.3 MS SQL Server 2005   4.4.4 Oracle   4.4.5 DB2   4.4.6 数据库分页  4.5 抑制数据重复  4.6 计算字段   4.6.1 常量字段   4.6.2 字段间的计算   4.6.3 数据处理函数   4.6.4 字符串的拼接   4.6.5 计算字段的其他用途  4.7 不从实体表中取的数据  4.8 联合结果集   4.8.1 简单的结果集联合   4.8.2 联合结果集的原则   4.8.3 UNION ALL   4.8.4 联合结果集应用举例 第5章 函数  5.1 数学函数   5.1.1 求绝对值   5.1.2 求指数   5.1.3 求平方根   5.1.4 求随机数   5.1.5 舍入到最大整数   5.1.6 舍入到最小整数   5.1.7 四舍五入   5.1.8 求正弦值   5.1.9 求余弦值   5.1.10 求反正弦值   5.1.11 求反余弦值   5.1.12 求正切值   5.1.13 求反正切值   5.1.14 求两个变量的反正切   5.1.15 求余切   5.1.16 求圆周率π值   5.1.17 弧度制转换为角度制   5.1.18 角度制转换为弧度制   5.1.19 求符号   5.1.20 求整除余数   5.1.21 求自然对数   5.1.22 求以10为底的对数   5.1.23 求幂  5.2 字符串函数   5.2.1 计算字符串长度   5.2.2 字符串转换为小写   5.2.3 字符串转换为大写   5.2.4 截去字符串左侧空格   5.2.5 截去字符串右侧空格   5.2.6 截去字符串两侧的空格   5.2.7 取子字符串   5.2.8 计算子字符串的位置   5.2.9 从左侧开始取子字符串   5.2.10 从右侧开始取子字符串   5.2.11 字符串替换   5.2.12 得到字符的ASCII码   5.2.13 得到一个ASCII码数字对应的字符   5.2.14 发音匹配度  5.3 日期时间函数   5.3.1 日期、时间、日期时间与时间戳   5.3.2 主流数据库系统中日期时间类型的表示方式   5.3.3 取得当前日期时间   5.3.4 日期增减   5.3.5 计算日期差额   5.3.6 计算一个日期是星期几   5.3.7 取得日期的指定部分  5.4 其他函数   5.4.1 类型转换   5.4.2 空值处理   5.4.3 CASE函数  5.5 各数据库系统独有函数   5.5.1 MySQL中的独有函数   5.5.2 MS SQL Server中的独有函数   5.5.3 Oracle中的独有函数 第6章 索引与约束  6.1 索引  6.2 约束   6.2.1 非空约束   6.2.2 唯一约束   6.2.3 CHECK约束   6.2.4 主键约束   6.2.5 外键约束 第7章 表连接  7.1 表连接简介  7.2 内连接(INNER JOIN)  7.3 不等值连接  7.4 交叉连接  7.5 自连接  7.6 外部连接   7.6.1 左外部连接   7.6.2 右外部连接   7.6.3 全外部连接 第8章 子查询  8.1 子查询入门   8.1.1 单值子查询   8.1.2 列值子查询  8.2 SELECT列表中的标量子查询  8.3 WHERE子句中的标量子查询  8.4 集合运算符与子查询   8.4.1 IN运算符   8.4.2 ANY和SOME运算符   8.4.3 ALL运算符   8.4.4 EXISTS运算符  8.5 在其他类型SQL语句中的子查询应用   8.5.1 子查询在INSERT语句中的应用   8.5.2 子查询在UPDATE语句中的应用   8.5.3 子查询在DELETE语句中的应用 第9章 主流数据库的SQL语法差异解决方案  9.1 SQL语法差异分析   9.1.1 数据类型的差异   9.1.2 运算符的差异   9.1.3 函数的差异   9.1.4 常用SQL的差异   9.1.5 取元数据信息的差异  9.2 消除差异性的方案   9.2.1 为每种数据库编写不同的SQL语句   9.2.2 使用语法交集   9.2.3 使用SQL实体对象   9.2.4 使用ORM工具   9.2.5 使用SQL翻译器  9.3 CowNewSQL翻译器   9.3.1 CowNewSQL支持的数据类型   9.3.2 CowNewSQL支持的SQL语法   9.3.3 CowNewSQL支持的函数   9.3.4 CowNewSQL的使用方法 第10章 高级话题  10.1 SQL注入漏洞攻防   10.1.1 SQL注入漏洞原理   10.1.2 过滤敏感字符   10.1.3 使用参数化SQL  10.2 SQL调优   10.2.1 SQL调优的基本原则   10.2.2 索引   10.2.3 全表扫描和索引查找   10.2.4 优化手法  10.3 事务   10.3.1 事务简介   10.3.2 事务的隔离   10.3.3 事务的隔离级别   10.3.4 事务的使用  10.4 自动增长字段   10.4.1 MySQL中的自动增长字段   10.4.2 MS SQL Server中的自动增长字段   10.4.3 Oracle中的自动增长字段   10.4.4 DB2中的自动增长字段  10.5 业务主键与逻辑主键  10.6 NULL的学问   10.6.1 NULL与比较运算符   10.6.2 NULL和计算字段   10.6.3 NULL和字符串   10.6.4 NULL和函数   10.6.5 NULL和聚合函数  10.7 开窗函数   10.7.1 开窗函数简介   10.7.2 PARTITION BY子句   10.7.3 ORDER BY子句   10.7.4 高级开窗函数  10.8 WITH子句与子查询 第11章 案例讲解  11.1 报表制作   11.1.1 显示制单人详细信息   11.1.2 显示销售单的详细信息   11.1.3 计算收益   11.1.4 产品销售额统计   11.1.5 统计销售记录的份额   11.1.6 为采购单分级   11.1.7 检索所有重叠日期销售单   11.1.8 为查询编号   11.1.9 标记所有单内最大销售量  11.2 排序   11.2.1 非字段排序规则   11.2.2 随机排序  11.3 表间比较   11.3.1 检索制作过采购单的人制作的销售单   11.3.2 检索没有制作过采购单的人制作的销售单  11.4 表复制   11.4.1 复制源表的结构并复制表中的数据   11.4.2 只复制源表的结构  11.5 计算字符在字符串中出现的次数  11.6 去除最高分、最低分   11.6.1 去除所有最低、最高值   11.6.2 只去除一个最低、最高值  11.7 与日期相关的应用   11.7.1 计算销售确认日和制单日之间相差的天数   11.7.2 计算两张销售单之间的时间间隔   11.7.3 计算销售单制单日期所在年份的天数   11.7.4 计算销售单制单日期所在月份的第一天和最后一天  11.8 结果集转置   11.8.1 将结果集转置为一行   11.8.2 把结果集转置为多行  11.9 递归查询   11.9.1 Oracle中的CONNECT BY子句   11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数   11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 Microsoft SQL Server的安装和使用 显示部分信息

2011-05-20

程序员的SQL金典7-8

目录 第1章 数据库入门  1.1 数据库概述   1.1.1 数据库与数据库管理系统   1.1.2 数据库能做什么   1.1.3 主流数据库管理系统介绍  1.2 数据库基础概念   1.2.1 Catalog   1.2.2 表(Table)   1.2.3 列(Column)   1.2.4 数据类型(DataType)   1.2.5 记录(Record)   1.2.6 主键(PrimaryKey)   1.2.7 索引(Index)   1.2.8 表关联   1.2.9 数据库的语言——SQL   1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型   2.1.1 整数类型   2.1.2 数值类型   2.1.3 字符相关类型   2.1.4 日期时间类型   2.1.5 二进制类型  2.2 通过SQL语句管理数据表   2.2.1 创建数据表   2.2.2 定义非空约束   2.2.3 定义默认值   2.2.4 定义主键   2.2.5 定义外键   2.2.6 修改已有数据表   2.2.7 删除数据表   2.2.8 受限操作的变通解决方案 第3章 数据的增、删、改  3.1 数据的插入   3.1.1 简单的INSERT语句   3.1.2 简化的INSERT语句   3.1.3 非空约束对数据插入的影响   3.1.4 主键对数据插入的影响   3.1.5 外键对数据插入的影响  3.2 数据的更新   3.2.1 简单的数据更新   3.2.2 带WHERE子句的UPDATE语句   3.2.3 非空约束对数据更新的影响   3.2.4 主键对数据更新的影响   3.2.5 外键对数据更新的影响  3.3 数据的删除   3.3.1 简单的数据删除   3.3.2 带WHERE子句的DELETE语句 第4章 数据的检索  4.1 SELECT基本用法   4.1.1 简单的数据检索   4.1.2 检索出需要的列   4.1.3 列别名   4.1.4 按条件过滤   4.1.5 数据汇总   4.1.6 排序  4.2 高级数据过滤   4.2.1 通配符过滤   4.2.2 空值检测   4.2.3 反义运算符   4.2.4 多值检测   4.2.5 范围值检测   4.2.6 低效的“WHERE 1=1”  4.3 数据分组   4.3.1 数据分组入门   4.3.2 数据分组与聚合函数   4.3.3 HAVING语句  4.4 限制结果集行数   4.4.1 MySQL   4.4.2 MS SQL Server 2000   4.4.3 MS SQL Server 2005   4.4.4 Oracle   4.4.5 DB2   4.4.6 数据库分页  4.5 抑制数据重复  4.6 计算字段   4.6.1 常量字段   4.6.2 字段间的计算   4.6.3 数据处理函数   4.6.4 字符串的拼接   4.6.5 计算字段的其他用途  4.7 不从实体表中取的数据  4.8 联合结果集   4.8.1 简单的结果集联合   4.8.2 联合结果集的原则   4.8.3 UNION ALL   4.8.4 联合结果集应用举例 第5章 函数  5.1 数学函数   5.1.1 求绝对值   5.1.2 求指数   5.1.3 求平方根   5.1.4 求随机数   5.1.5 舍入到最大整数   5.1.6 舍入到最小整数   5.1.7 四舍五入   5.1.8 求正弦值   5.1.9 求余弦值   5.1.10 求反正弦值   5.1.11 求反余弦值   5.1.12 求正切值   5.1.13 求反正切值   5.1.14 求两个变量的反正切   5.1.15 求余切   5.1.16 求圆周率π值   5.1.17 弧度制转换为角度制   5.1.18 角度制转换为弧度制   5.1.19 求符号   5.1.20 求整除余数   5.1.21 求自然对数   5.1.22 求以10为底的对数   5.1.23 求幂  5.2 字符串函数   5.2.1 计算字符串长度   5.2.2 字符串转换为小写   5.2.3 字符串转换为大写   5.2.4 截去字符串左侧空格   5.2.5 截去字符串右侧空格   5.2.6 截去字符串两侧的空格   5.2.7 取子字符串   5.2.8 计算子字符串的位置   5.2.9 从左侧开始取子字符串   5.2.10 从右侧开始取子字符串   5.2.11 字符串替换   5.2.12 得到字符的ASCII码   5.2.13 得到一个ASCII码数字对应的字符   5.2.14 发音匹配度  5.3 日期时间函数   5.3.1 日期、时间、日期时间与时间戳   5.3.2 主流数据库系统中日期时间类型的表示方式   5.3.3 取得当前日期时间   5.3.4 日期增减   5.3.5 计算日期差额   5.3.6 计算一个日期是星期几   5.3.7 取得日期的指定部分  5.4 其他函数   5.4.1 类型转换   5.4.2 空值处理   5.4.3 CASE函数  5.5 各数据库系统独有函数   5.5.1 MySQL中的独有函数   5.5.2 MS SQL Server中的独有函数   5.5.3 Oracle中的独有函数 第6章 索引与约束  6.1 索引  6.2 约束   6.2.1 非空约束   6.2.2 唯一约束   6.2.3 CHECK约束   6.2.4 主键约束   6.2.5 外键约束 第7章 表连接  7.1 表连接简介  7.2 内连接(INNER JOIN)  7.3 不等值连接  7.4 交叉连接  7.5 自连接  7.6 外部连接   7.6.1 左外部连接   7.6.2 右外部连接   7.6.3 全外部连接 第8章 子查询  8.1 子查询入门   8.1.1 单值子查询   8.1.2 列值子查询  8.2 SELECT列表中的标量子查询  8.3 WHERE子句中的标量子查询  8.4 集合运算符与子查询   8.4.1 IN运算符   8.4.2 ANY和SOME运算符   8.4.3 ALL运算符   8.4.4 EXISTS运算符  8.5 在其他类型SQL语句中的子查询应用   8.5.1 子查询在INSERT语句中的应用   8.5.2 子查询在UPDATE语句中的应用   8.5.3 子查询在DELETE语句中的应用 第9章 主流数据库的SQL语法差异解决方案  9.1 SQL语法差异分析   9.1.1 数据类型的差异   9.1.2 运算符的差异   9.1.3 函数的差异   9.1.4 常用SQL的差异   9.1.5 取元数据信息的差异  9.2 消除差异性的方案   9.2.1 为每种数据库编写不同的SQL语句   9.2.2 使用语法交集   9.2.3 使用SQL实体对象   9.2.4 使用ORM工具   9.2.5 使用SQL翻译器  9.3 CowNewSQL翻译器   9.3.1 CowNewSQL支持的数据类型   9.3.2 CowNewSQL支持的SQL语法   9.3.3 CowNewSQL支持的函数   9.3.4 CowNewSQL的使用方法 第10章 高级话题  10.1 SQL注入漏洞攻防   10.1.1 SQL注入漏洞原理   10.1.2 过滤敏感字符   10.1.3 使用参数化SQL  10.2 SQL调优   10.2.1 SQL调优的基本原则   10.2.2 索引   10.2.3 全表扫描和索引查找   10.2.4 优化手法  10.3 事务   10.3.1 事务简介   10.3.2 事务的隔离   10.3.3 事务的隔离级别   10.3.4 事务的使用  10.4 自动增长字段   10.4.1 MySQL中的自动增长字段   10.4.2 MS SQL Server中的自动增长字段   10.4.3 Oracle中的自动增长字段   10.4.4 DB2中的自动增长字段  10.5 业务主键与逻辑主键  10.6 NULL的学问   10.6.1 NULL与比较运算符   10.6.2 NULL和计算字段   10.6.3 NULL和字符串   10.6.4 NULL和函数   10.6.5 NULL和聚合函数  10.7 开窗函数   10.7.1 开窗函数简介   10.7.2 PARTITION BY子句   10.7.3 ORDER BY子句   10.7.4 高级开窗函数  10.8 WITH子句与子查询 第11章 案例讲解  11.1 报表制作   11.1.1 显示制单人详细信息   11.1.2 显示销售单的详细信息   11.1.3 计算收益   11.1.4 产品销售额统计   11.1.5 统计销售记录的份额   11.1.6 为采购单分级   11.1.7 检索所有重叠日期销售单   11.1.8 为查询编号   11.1.9 标记所有单内最大销售量  11.2 排序   11.2.1 非字段排序规则   11.2.2 随机排序  11.3 表间比较   11.3.1 检索制作过采购单的人制作的销售单   11.3.2 检索没有制作过采购单的人制作的销售单  11.4 表复制   11.4.1 复制源表的结构并复制表中的数据   11.4.2 只复制源表的结构  11.5 计算字符在字符串中出现的次数  11.6 去除最高分、最低分   11.6.1 去除所有最低、最高值   11.6.2 只去除一个最低、最高值  11.7 与日期相关的应用   11.7.1 计算销售确认日和制单日之间相差的天数   11.7.2 计算两张销售单之间的时间间隔   11.7.3 计算销售单制单日期所在年份的天数   11.7.4 计算销售单制单日期所在月份的第一天和最后一天  11.8 结果集转置   11.8.1 将结果集转置为一行   11.8.2 把结果集转置为多行  11.9 递归查询   11.9.1 Oracle中的CONNECT BY子句   11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数   11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 Microsoft SQL Server的安装和使用 显示部分信息

2011-05-20

程序员的SQL金典6-8

目录 第1章 数据库入门  1.1 数据库概述   1.1.1 数据库与数据库管理系统   1.1.2 数据库能做什么   1.1.3 主流数据库管理系统介绍  1.2 数据库基础概念   1.2.1 Catalog   1.2.2 表(Table)   1.2.3 列(Column)   1.2.4 数据类型(DataType)   1.2.5 记录(Record)   1.2.6 主键(PrimaryKey)   1.2.7 索引(Index)   1.2.8 表关联   1.2.9 数据库的语言——SQL   1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型   2.1.1 整数类型   2.1.2 数值类型   2.1.3 字符相关类型   2.1.4 日期时间类型   2.1.5 二进制类型  2.2 通过SQL语句管理数据表   2.2.1 创建数据表   2.2.2 定义非空约束   2.2.3 定义默认值   2.2.4 定义主键   2.2.5 定义外键   2.2.6 修改已有数据表   2.2.7 删除数据表   2.2.8 受限操作的变通解决方案 第3章 数据的增、删、改  3.1 数据的插入   3.1.1 简单的INSERT语句   3.1.2 简化的INSERT语句   3.1.3 非空约束对数据插入的影响   3.1.4 主键对数据插入的影响   3.1.5 外键对数据插入的影响  3.2 数据的更新   3.2.1 简单的数据更新   3.2.2 带WHERE子句的UPDATE语句   3.2.3 非空约束对数据更新的影响   3.2.4 主键对数据更新的影响   3.2.5 外键对数据更新的影响  3.3 数据的删除   3.3.1 简单的数据删除   3.3.2 带WHERE子句的DELETE语句 第4章 数据的检索  4.1 SELECT基本用法   4.1.1 简单的数据检索   4.1.2 检索出需要的列   4.1.3 列别名   4.1.4 按条件过滤   4.1.5 数据汇总   4.1.6 排序  4.2 高级数据过滤   4.2.1 通配符过滤   4.2.2 空值检测   4.2.3 反义运算符   4.2.4 多值检测   4.2.5 范围值检测   4.2.6 低效的“WHERE 1=1”  4.3 数据分组   4.3.1 数据分组入门   4.3.2 数据分组与聚合函数   4.3.3 HAVING语句  4.4 限制结果集行数   4.4.1 MySQL   4.4.2 MS SQL Server 2000   4.4.3 MS SQL Server 2005   4.4.4 Oracle   4.4.5 DB2   4.4.6 数据库分页  4.5 抑制数据重复  4.6 计算字段   4.6.1 常量字段   4.6.2 字段间的计算   4.6.3 数据处理函数   4.6.4 字符串的拼接   4.6.5 计算字段的其他用途  4.7 不从实体表中取的数据  4.8 联合结果集   4.8.1 简单的结果集联合   4.8.2 联合结果集的原则   4.8.3 UNION ALL   4.8.4 联合结果集应用举例 第5章 函数  5.1 数学函数   5.1.1 求绝对值   5.1.2 求指数   5.1.3 求平方根   5.1.4 求随机数   5.1.5 舍入到最大整数   5.1.6 舍入到最小整数   5.1.7 四舍五入   5.1.8 求正弦值   5.1.9 求余弦值   5.1.10 求反正弦值   5.1.11 求反余弦值   5.1.12 求正切值   5.1.13 求反正切值   5.1.14 求两个变量的反正切   5.1.15 求余切   5.1.16 求圆周率π值   5.1.17 弧度制转换为角度制   5.1.18 角度制转换为弧度制   5.1.19 求符号   5.1.20 求整除余数   5.1.21 求自然对数   5.1.22 求以10为底的对数   5.1.23 求幂  5.2 字符串函数   5.2.1 计算字符串长度   5.2.2 字符串转换为小写   5.2.3 字符串转换为大写   5.2.4 截去字符串左侧空格   5.2.5 截去字符串右侧空格   5.2.6 截去字符串两侧的空格   5.2.7 取子字符串   5.2.8 计算子字符串的位置   5.2.9 从左侧开始取子字符串   5.2.10 从右侧开始取子字符串   5.2.11 字符串替换   5.2.12 得到字符的ASCII码   5.2.13 得到一个ASCII码数字对应的字符   5.2.14 发音匹配度  5.3 日期时间函数   5.3.1 日期、时间、日期时间与时间戳   5.3.2 主流数据库系统中日期时间类型的表示方式   5.3.3 取得当前日期时间   5.3.4 日期增减   5.3.5 计算日期差额   5.3.6 计算一个日期是星期几   5.3.7 取得日期的指定部分  5.4 其他函数   5.4.1 类型转换   5.4.2 空值处理   5.4.3 CASE函数  5.5 各数据库系统独有函数   5.5.1 MySQL中的独有函数   5.5.2 MS SQL Server中的独有函数   5.5.3 Oracle中的独有函数 第6章 索引与约束  6.1 索引  6.2 约束   6.2.1 非空约束   6.2.2 唯一约束   6.2.3 CHECK约束   6.2.4 主键约束   6.2.5 外键约束 第7章 表连接  7.1 表连接简介  7.2 内连接(INNER JOIN)  7.3 不等值连接  7.4 交叉连接  7.5 自连接  7.6 外部连接   7.6.1 左外部连接   7.6.2 右外部连接   7.6.3 全外部连接 第8章 子查询  8.1 子查询入门   8.1.1 单值子查询   8.1.2 列值子查询  8.2 SELECT列表中的标量子查询  8.3 WHERE子句中的标量子查询  8.4 集合运算符与子查询   8.4.1 IN运算符   8.4.2 ANY和SOME运算符   8.4.3 ALL运算符   8.4.4 EXISTS运算符  8.5 在其他类型SQL语句中的子查询应用   8.5.1 子查询在INSERT语句中的应用   8.5.2 子查询在UPDATE语句中的应用   8.5.3 子查询在DELETE语句中的应用 第9章 主流数据库的SQL语法差异解决方案  9.1 SQL语法差异分析   9.1.1 数据类型的差异   9.1.2 运算符的差异   9.1.3 函数的差异   9.1.4 常用SQL的差异   9.1.5 取元数据信息的差异  9.2 消除差异性的方案   9.2.1 为每种数据库编写不同的SQL语句   9.2.2 使用语法交集   9.2.3 使用SQL实体对象   9.2.4 使用ORM工具   9.2.5 使用SQL翻译器  9.3 CowNewSQL翻译器   9.3.1 CowNewSQL支持的数据类型   9.3.2 CowNewSQL支持的SQL语法   9.3.3 CowNewSQL支持的函数   9.3.4 CowNewSQL的使用方法 第10章 高级话题  10.1 SQL注入漏洞攻防   10.1.1 SQL注入漏洞原理   10.1.2 过滤敏感字符   10.1.3 使用参数化SQL  10.2 SQL调优   10.2.1 SQL调优的基本原则   10.2.2 索引   10.2.3 全表扫描和索引查找   10.2.4 优化手法  10.3 事务   10.3.1 事务简介   10.3.2 事务的隔离   10.3.3 事务的隔离级别   10.3.4 事务的使用  10.4 自动增长字段   10.4.1 MySQL中的自动增长字段   10.4.2 MS SQL Server中的自动增长字段   10.4.3 Oracle中的自动增长字段   10.4.4 DB2中的自动增长字段  10.5 业务主键与逻辑主键  10.6 NULL的学问   10.6.1 NULL与比较运算符   10.6.2 NULL和计算字段   10.6.3 NULL和字符串   10.6.4 NULL和函数   10.6.5 NULL和聚合函数  10.7 开窗函数   10.7.1 开窗函数简介   10.7.2 PARTITION BY子句   10.7.3 ORDER BY子句   10.7.4 高级开窗函数  10.8 WITH子句与子查询 第11章 案例讲解  11.1 报表制作   11.1.1 显示制单人详细信息   11.1.2 显示销售单的详细信息   11.1.3 计算收益   11.1.4 产品销售额统计   11.1.5 统计销售记录的份额   11.1.6 为采购单分级   11.1.7 检索所有重叠日期销售单   11.1.8 为查询编号   11.1.9 标记所有单内最大销售量  11.2 排序   11.2.1 非字段排序规则   11.2.2 随机排序  11.3 表间比较   11.3.1 检索制作过采购单的人制作的销售单   11.3.2 检索没有制作过采购单的人制作的销售单  11.4 表复制   11.4.1 复制源表的结构并复制表中的数据   11.4.2 只复制源表的结构  11.5 计算字符在字符串中出现的次数  11.6 去除最高分、最低分   11.6.1 去除所有最低、最高值   11.6.2 只去除一个最低、最高值  11.7 与日期相关的应用   11.7.1 计算销售确认日和制单日之间相差的天数   11.7.2 计算两张销售单之间的时间间隔   11.7.3 计算销售单制单日期所在年份的天数   11.7.4 计算销售单制单日期所在月份的第一天和最后一天  11.8 结果集转置   11.8.1 将结果集转置为一行   11.8.2 把结果集转置为多行  11.9 递归查询   11.9.1 Oracle中的CONNECT BY子句   11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数   11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 Microsoft SQL Server的安装和使用 显示部分信息

2011-05-20

程序员的SQL金典4-8

目录 第1章 数据库入门  1.1 数据库概述   1.1.1 数据库与数据库管理系统   1.1.2 数据库能做什么   1.1.3 主流数据库管理系统介绍  1.2 数据库基础概念   1.2.1 Catalog   1.2.2 表(Table)   1.2.3 列(Column)   1.2.4 数据类型(DataType)   1.2.5 记录(Record)   1.2.6 主键(PrimaryKey)   1.2.7 索引(Index)   1.2.8 表关联   1.2.9 数据库的语言——SQL   1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型   2.1.1 整数类型   2.1.2 数值类型   2.1.3 字符相关类型   2.1.4 日期时间类型   2.1.5 二进制类型  2.2 通过SQL语句管理数据表   2.2.1 创建数据表   2.2.2 定义非空约束   2.2.3 定义默认值   2.2.4 定义主键   2.2.5 定义外键   2.2.6 修改已有数据表   2.2.7 删除数据表   2.2.8 受限操作的变通解决方案 第3章 数据的增、删、改  3.1 数据的插入   3.1.1 简单的INSERT语句   3.1.2 简化的INSERT语句   3.1.3 非空约束对数据插入的影响   3.1.4 主键对数据插入的影响   3.1.5 外键对数据插入的影响  3.2 数据的更新   3.2.1 简单的数据更新   3.2.2 带WHERE子句的UPDATE语句   3.2.3 非空约束对数据更新的影响   3.2.4 主键对数据更新的影响   3.2.5 外键对数据更新的影响  3.3 数据的删除   3.3.1 简单的数据删除   3.3.2 带WHERE子句的DELETE语句 第4章 数据的检索  4.1 SELECT基本用法   4.1.1 简单的数据检索   4.1.2 检索出需要的列   4.1.3 列别名   4.1.4 按条件过滤   4.1.5 数据汇总   4.1.6 排序  4.2 高级数据过滤   4.2.1 通配符过滤   4.2.2 空值检测   4.2.3 反义运算符   4.2.4 多值检测   4.2.5 范围值检测   4.2.6 低效的“WHERE 1=1”  4.3 数据分组   4.3.1 数据分组入门   4.3.2 数据分组与聚合函数   4.3.3 HAVING语句  4.4 限制结果集行数   4.4.1 MySQL   4.4.2 MS SQL Server 2000   4.4.3 MS SQL Server 2005   4.4.4 Oracle   4.4.5 DB2   4.4.6 数据库分页  4.5 抑制数据重复  4.6 计算字段   4.6.1 常量字段   4.6.2 字段间的计算   4.6.3 数据处理函数   4.6.4 字符串的拼接   4.6.5 计算字段的其他用途  4.7 不从实体表中取的数据  4.8 联合结果集   4.8.1 简单的结果集联合   4.8.2 联合结果集的原则   4.8.3 UNION ALL   4.8.4 联合结果集应用举例 第5章 函数  5.1 数学函数   5.1.1 求绝对值   5.1.2 求指数   5.1.3 求平方根   5.1.4 求随机数   5.1.5 舍入到最大整数   5.1.6 舍入到最小整数   5.1.7 四舍五入   5.1.8 求正弦值   5.1.9 求余弦值   5.1.10 求反正弦值   5.1.11 求反余弦值   5.1.12 求正切值   5.1.13 求反正切值   5.1.14 求两个变量的反正切   5.1.15 求余切   5.1.16 求圆周率π值   5.1.17 弧度制转换为角度制   5.1.18 角度制转换为弧度制   5.1.19 求符号   5.1.20 求整除余数   5.1.21 求自然对数   5.1.22 求以10为底的对数   5.1.23 求幂  5.2 字符串函数   5.2.1 计算字符串长度   5.2.2 字符串转换为小写   5.2.3 字符串转换为大写   5.2.4 截去字符串左侧空格   5.2.5 截去字符串右侧空格   5.2.6 截去字符串两侧的空格   5.2.7 取子字符串   5.2.8 计算子字符串的位置   5.2.9 从左侧开始取子字符串   5.2.10 从右侧开始取子字符串   5.2.11 字符串替换   5.2.12 得到字符的ASCII码   5.2.13 得到一个ASCII码数字对应的字符   5.2.14 发音匹配度  5.3 日期时间函数   5.3.1 日期、时间、日期时间与时间戳   5.3.2 主流数据库系统中日期时间类型的表示方式   5.3.3 取得当前日期时间   5.3.4 日期增减   5.3.5 计算日期差额   5.3.6 计算一个日期是星期几   5.3.7 取得日期的指定部分  5.4 其他函数   5.4.1 类型转换   5.4.2 空值处理   5.4.3 CASE函数  5.5 各数据库系统独有函数   5.5.1 MySQL中的独有函数   5.5.2 MS SQL Server中的独有函数   5.5.3 Oracle中的独有函数 第6章 索引与约束  6.1 索引  6.2 约束   6.2.1 非空约束   6.2.2 唯一约束   6.2.3 CHECK约束   6.2.4 主键约束   6.2.5 外键约束 第7章 表连接  7.1 表连接简介  7.2 内连接(INNER JOIN)  7.3 不等值连接  7.4 交叉连接  7.5 自连接  7.6 外部连接   7.6.1 左外部连接   7.6.2 右外部连接   7.6.3 全外部连接 第8章 子查询  8.1 子查询入门   8.1.1 单值子查询   8.1.2 列值子查询  8.2 SELECT列表中的标量子查询  8.3 WHERE子句中的标量子查询  8.4 集合运算符与子查询   8.4.1 IN运算符   8.4.2 ANY和SOME运算符   8.4.3 ALL运算符   8.4.4 EXISTS运算符  8.5 在其他类型SQL语句中的子查询应用   8.5.1 子查询在INSERT语句中的应用   8.5.2 子查询在UPDATE语句中的应用   8.5.3 子查询在DELETE语句中的应用 第9章 主流数据库的SQL语法差异解决方案  9.1 SQL语法差异分析   9.1.1 数据类型的差异   9.1.2 运算符的差异   9.1.3 函数的差异   9.1.4 常用SQL的差异   9.1.5 取元数据信息的差异  9.2 消除差异性的方案   9.2.1 为每种数据库编写不同的SQL语句   9.2.2 使用语法交集   9.2.3 使用SQL实体对象   9.2.4 使用ORM工具   9.2.5 使用SQL翻译器  9.3 CowNewSQL翻译器   9.3.1 CowNewSQL支持的数据类型   9.3.2 CowNewSQL支持的SQL语法   9.3.3 CowNewSQL支持的函数   9.3.4 CowNewSQL的使用方法 第10章 高级话题  10.1 SQL注入漏洞攻防   10.1.1 SQL注入漏洞原理   10.1.2 过滤敏感字符   10.1.3 使用参数化SQL  10.2 SQL调优   10.2.1 SQL调优的基本原则   10.2.2 索引   10.2.3 全表扫描和索引查找   10.2.4 优化手法  10.3 事务   10.3.1 事务简介   10.3.2 事务的隔离   10.3.3 事务的隔离级别   10.3.4 事务的使用  10.4 自动增长字段   10.4.1 MySQL中的自动增长字段   10.4.2 MS SQL Server中的自动增长字段   10.4.3 Oracle中的自动增长字段   10.4.4 DB2中的自动增长字段  10.5 业务主键与逻辑主键  10.6 NULL的学问   10.6.1 NULL与比较运算符   10.6.2 NULL和计算字段   10.6.3 NULL和字符串   10.6.4 NULL和函数   10.6.5 NULL和聚合函数  10.7 开窗函数   10.7.1 开窗函数简介   10.7.2 PARTITION BY子句   10.7.3 ORDER BY子句   10.7.4 高级开窗函数  10.8 WITH子句与子查询 第11章 案例讲解  11.1 报表制作   11.1.1 显示制单人详细信息   11.1.2 显示销售单的详细信息   11.1.3 计算收益   11.1.4 产品销售额统计   11.1.5 统计销售记录的份额   11.1.6 为采购单分级   11.1.7 检索所有重叠日期销售单   11.1.8 为查询编号   11.1.9 标记所有单内最大销售量  11.2 排序   11.2.1 非字段排序规则   11.2.2 随机排序  11.3 表间比较   11.3.1 检索制作过采购单的人制作的销售单   11.3.2 检索没有制作过采购单的人制作的销售单  11.4 表复制   11.4.1 复制源表的结构并复制表中的数据   11.4.2 只复制源表的结构  11.5 计算字符在字符串中出现的次数  11.6 去除最高分、最低分   11.6.1 去除所有最低、最高值   11.6.2 只去除一个最低、最高值  11.7 与日期相关的应用   11.7.1 计算销售确认日和制单日之间相差的天数   11.7.2 计算两张销售单之间的时间间隔   11.7.3 计算销售单制单日期所在年份的天数   11.7.4 计算销售单制单日期所在月份的第一天和最后一天  11.8 结果集转置   11.8.1 将结果集转置为一行   11.8.2 把结果集转置为多行  11.9 递归查询   11.9.1 Oracle中的CONNECT BY子句   11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数   11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 Microsoft SQL Server的安装和使用 显示部分信息

2011-05-20

程序员的SQL金典3-8

目录 第1章 数据库入门  1.1 数据库概述   1.1.1 数据库与数据库管理系统   1.1.2 数据库能做什么   1.1.3 主流数据库管理系统介绍  1.2 数据库基础概念   1.2.1 Catalog   1.2.2 表(Table)   1.2.3 列(Column)   1.2.4 数据类型(DataType)   1.2.5 记录(Record)   1.2.6 主键(PrimaryKey)   1.2.7 索引(Index)   1.2.8 表关联   1.2.9 数据库的语言——SQL   1.2.10 DBA与程序员 第2章 数据表的创建和管理  2.1 数据类型   2.1.1 整数类型   2.1.2 数值类型   2.1.3 字符相关类型   2.1.4 日期时间类型   2.1.5 二进制类型  2.2 通过SQL语句管理数据表   2.2.1 创建数据表   2.2.2 定义非空约束   2.2.3 定义默认值   2.2.4 定义主键   2.2.5 定义外键   2.2.6 修改已有数据表   2.2.7 删除数据表   2.2.8 受限操作的变通解决方案 第3章 数据的增、删、改  3.1 数据的插入   3.1.1 简单的INSERT语句   3.1.2 简化的INSERT语句   3.1.3 非空约束对数据插入的影响   3.1.4 主键对数据插入的影响   3.1.5 外键对数据插入的影响  3.2 数据的更新   3.2.1 简单的数据更新   3.2.2 带WHERE子句的UPDATE语句   3.2.3 非空约束对数据更新的影响   3.2.4 主键对数据更新的影响   3.2.5 外键对数据更新的影响  3.3 数据的删除   3.3.1 简单的数据删除   3.3.2 带WHERE子句的DELETE语句 第4章 数据的检索  4.1 SELECT基本用法   4.1.1 简单的数据检索   4.1.2 检索出需要的列   4.1.3 列别名   4.1.4 按条件过滤   4.1.5 数据汇总   4.1.6 排序  4.2 高级数据过滤   4.2.1 通配符过滤   4.2.2 空值检测   4.2.3 反义运算符   4.2.4 多值检测   4.2.5 范围值检测   4.2.6 低效的“WHERE 1=1”  4.3 数据分组   4.3.1 数据分组入门   4.3.2 数据分组与聚合函数   4.3.3 HAVING语句  4.4 限制结果集行数   4.4.1 MySQL   4.4.2 MS SQL Server 2000   4.4.3 MS SQL Server 2005   4.4.4 Oracle   4.4.5 DB2   4.4.6 数据库分页  4.5 抑制数据重复  4.6 计算字段   4.6.1 常量字段   4.6.2 字段间的计算   4.6.3 数据处理函数   4.6.4 字符串的拼接   4.6.5 计算字段的其他用途  4.7 不从实体表中取的数据  4.8 联合结果集   4.8.1 简单的结果集联合   4.8.2 联合结果集的原则   4.8.3 UNION ALL   4.8.4 联合结果集应用举例 第5章 函数  5.1 数学函数   5.1.1 求绝对值   5.1.2 求指数   5.1.3 求平方根   5.1.4 求随机数   5.1.5 舍入到最大整数   5.1.6 舍入到最小整数   5.1.7 四舍五入   5.1.8 求正弦值   5.1.9 求余弦值   5.1.10 求反正弦值   5.1.11 求反余弦值   5.1.12 求正切值   5.1.13 求反正切值   5.1.14 求两个变量的反正切   5.1.15 求余切   5.1.16 求圆周率π值   5.1.17 弧度制转换为角度制   5.1.18 角度制转换为弧度制   5.1.19 求符号   5.1.20 求整除余数   5.1.21 求自然对数   5.1.22 求以10为底的对数   5.1.23 求幂  5.2 字符串函数   5.2.1 计算字符串长度   5.2.2 字符串转换为小写   5.2.3 字符串转换为大写   5.2.4 截去字符串左侧空格   5.2.5 截去字符串右侧空格   5.2.6 截去字符串两侧的空格   5.2.7 取子字符串   5.2.8 计算子字符串的位置   5.2.9 从左侧开始取子字符串   5.2.10 从右侧开始取子字符串   5.2.11 字符串替换   5.2.12 得到字符的ASCII码   5.2.13 得到一个ASCII码数字对应的字符   5.2.14 发音匹配度  5.3 日期时间函数   5.3.1 日期、时间、日期时间与时间戳   5.3.2 主流数据库系统中日期时间类型的表示方式   5.3.3 取得当前日期时间   5.3.4 日期增减   5.3.5 计算日期差额   5.3.6 计算一个日期是星期几   5.3.7 取得日期的指定部分  5.4 其他函数   5.4.1 类型转换   5.4.2 空值处理   5.4.3 CASE函数  5.5 各数据库系统独有函数   5.5.1 MySQL中的独有函数   5.5.2 MS SQL Server中的独有函数   5.5.3 Oracle中的独有函数 第6章 索引与约束  6.1 索引  6.2 约束   6.2.1 非空约束   6.2.2 唯一约束   6.2.3 CHECK约束   6.2.4 主键约束   6.2.5 外键约束 第7章 表连接  7.1 表连接简介  7.2 内连接(INNER JOIN)  7.3 不等值连接  7.4 交叉连接  7.5 自连接  7.6 外部连接   7.6.1 左外部连接   7.6.2 右外部连接   7.6.3 全外部连接 第8章 子查询  8.1 子查询入门   8.1.1 单值子查询   8.1.2 列值子查询  8.2 SELECT列表中的标量子查询  8.3 WHERE子句中的标量子查询  8.4 集合运算符与子查询   8.4.1 IN运算符   8.4.2 ANY和SOME运算符   8.4.3 ALL运算符   8.4.4 EXISTS运算符  8.5 在其他类型SQL语句中的子查询应用   8.5.1 子查询在INSERT语句中的应用   8.5.2 子查询在UPDATE语句中的应用   8.5.3 子查询在DELETE语句中的应用 第9章 主流数据库的SQL语法差异解决方案  9.1 SQL语法差异分析   9.1.1 数据类型的差异   9.1.2 运算符的差异   9.1.3 函数的差异   9.1.4 常用SQL的差异   9.1.5 取元数据信息的差异  9.2 消除差异性的方案   9.2.1 为每种数据库编写不同的SQL语句   9.2.2 使用语法交集   9.2.3 使用SQL实体对象   9.2.4 使用ORM工具   9.2.5 使用SQL翻译器  9.3 CowNewSQL翻译器   9.3.1 CowNewSQL支持的数据类型   9.3.2 CowNewSQL支持的SQL语法   9.3.3 CowNewSQL支持的函数   9.3.4 CowNewSQL的使用方法 第10章 高级话题  10.1 SQL注入漏洞攻防   10.1.1 SQL注入漏洞原理   10.1.2 过滤敏感字符   10.1.3 使用参数化SQL  10.2 SQL调优   10.2.1 SQL调优的基本原则   10.2.2 索引   10.2.3 全表扫描和索引查找   10.2.4 优化手法  10.3 事务   10.3.1 事务简介   10.3.2 事务的隔离   10.3.3 事务的隔离级别   10.3.4 事务的使用  10.4 自动增长字段   10.4.1 MySQL中的自动增长字段   10.4.2 MS SQL Server中的自动增长字段   10.4.3 Oracle中的自动增长字段   10.4.4 DB2中的自动增长字段  10.5 业务主键与逻辑主键  10.6 NULL的学问   10.6.1 NULL与比较运算符   10.6.2 NULL和计算字段   10.6.3 NULL和字符串   10.6.4 NULL和函数   10.6.5 NULL和聚合函数  10.7 开窗函数   10.7.1 开窗函数简介   10.7.2 PARTITION BY子句   10.7.3 ORDER BY子句   10.7.4 高级开窗函数  10.8 WITH子句与子查询 第11章 案例讲解  11.1 报表制作   11.1.1 显示制单人详细信息   11.1.2 显示销售单的详细信息   11.1.3 计算收益   11.1.4 产品销售额统计   11.1.5 统计销售记录的份额   11.1.6 为采购单分级   11.1.7 检索所有重叠日期销售单   11.1.8 为查询编号   11.1.9 标记所有单内最大销售量  11.2 排序   11.2.1 非字段排序规则   11.2.2 随机排序  11.3 表间比较   11.3.1 检索制作过采购单的人制作的销售单   11.3.2 检索没有制作过采购单的人制作的销售单  11.4 表复制   11.4.1 复制源表的结构并复制表中的数据   11.4.2 只复制源表的结构  11.5 计算字符在字符串中出现的次数  11.6 去除最高分、最低分   11.6.1 去除所有最低、最高值   11.6.2 只去除一个最低、最高值  11.7 与日期相关的应用   11.7.1 计算销售确认日和制单日之间相差的天数   11.7.2 计算两张销售单之间的时间间隔   11.7.3 计算销售单制单日期所在年份的天数   11.7.4 计算销售单制单日期所在月份的第一天和最后一天  11.8 结果集转置   11.8.1 将结果集转置为一行   11.8.2 把结果集转置为多行  11.9 递归查询   11.9.1 Oracle中的CONNECT BY子句   11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数   11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 Microsoft SQL Server的安装和使用 显示部分信息

2011-05-20

JBoss实战:服务器配置指南(英文版)

JBoss in Action: Configuring the JBoss Application Server Publisher: Manning Publications | 2009-01-28 | ISBN: 1933988029 | PDF | 6,58 MB JBoss in Action is the first book to focus on teaching readers in detail how to use the JBoss application server. Unlike other titles about JBoss, the authors of JBoss in Action go deeper into the advanced features and configuration of the server. In particular, it focuses on enterprise-class topics, such as high availability, security, and performance. This book walks readers through the JBoss 5 Application Server from installation to configuration to production development. It shows how to configure the server's various component containers such as the JBoss Web Server, the EJB 3 server, and JBoss Messaging. It also provides detailed insight into configuring the various component services such as security, performance, and clustering. Beyond coverage of the core application server, the book also teaches how to use some of the "hot" technologies that run on top of the application server, such as Jboss Seam and JBoss Portal. The authors, both seasoned professional experts at developing and administering JBoss, provide meaningful explanations and background on many topics which they tie in with their own practical, real-world advice from their collective experience. These uniquely comprehensive explanations and the wide coverage provided in this book surpass any other content currently available in any other book, article, or documentation on the subject.

2011-05-18

Spring Security-3.0.1中文官方文档(翻译版)

Spring Security-3.0.1 中文官方文档(翻译版) 这次发布的Spring Security-3.0.1 是一个bug fix 版,主要是对3.0 中存在的一些问题进 行修 正。文档中没有添加新功能的介绍,但是将之前拼写错误的一些类名进行了修正,建议开发 者以这一版本的文档为参考。 另:Spring Security 从2010-01-01 以后,版本控制从SVN 换成了GIT,我们在翻译文档的 时候,主要是根据SVN 的变化来进行文档内容的比对,这次换成GIT 后,感觉缺少了之前 那种文本比对工具,如果有对GIT 熟悉的朋友,还请推荐一下文本比对的工具,谢谢。 序言 I. 入门 1. 介绍 1.1. Spring Security 是什么? 1.2. 历史 1.3. 发行版本号 1.4. 获得Spring Security 1.4.1. 项目模块 1.4.1.1. Core - spring-security-core.jar 1.4.1.2. Web - spring-security-web.jar 1.4.1.3. Config - spring-security-config.jar 1.4.1.4. LDAP - spring-security-ldap.jar 1.4.1.5. ACL - spring-security-acl.jar 1.4.1.6. CAS - spring-security-cas-client.jar 1.4.1.7. OpenID - spring-security-openid.jar 1.4.2. 获得源代码 2. Security 命名空间配置 2.1. 介绍 2.1.1. 命名空间的设计 2.2. 开始使用安全命名空间配置 2.2.1. 配置web.xml 2.2.2. 最小<http> 配置 2.2.2.1. auto-config 包含了什么? 2.2.2.2. 表单和基本登录选项 2.2.3. 使用其他认证提供器 2.2.3.1. 添加一个密码编码器 2.3. 高级web 特性 2.3.1. Remember-Me 认证 2.3.2. 添加HTTP/HTTPS 信道安全 2.3.3. 会话管理 2.3.3.1. 检测超时 2.3.3.2. 同步会话控制 2.3.3.3. 防止Session 固定攻击 2.3.4. 对OpenID 的支持 2.3.4.1. 属性交换 2.3.5. 添加你自己的filter 2.3.5.1. 设置自定义AuthenticationEntryPoint 2.4. 保护方法 2.4.1. <global-method-security> 元素 2.4.1.1. 使用protect-pointcut 添加安全切点 2.5. 默认的AccessDecisionManager 2.5.1. 自定义AccessDecisionManager 2.6. 验证管理器和命名空间 3. 示例程序 3.1. Tutorial 示例 3.2. Contacts 3.3. LDAP 例子 3.4. CAS 例子 3.5. Pre-Authentication 例子 4. Spring Security 社区 4.1. 任务跟踪 4.2. 成为参与者 4.3. 更多信息 II. 结构和实现 5. 技术概述 5.1. 运行环境 5.2. 核心组件 5.2.1. SecurityContextHolder, SecurityContext 和Authentication 对象 5.2.1.1. 获得当前用户的信息 5.2.2. UserDetailsService 5.2.3. GrantedAuthority 5.2.4. 小结 5.3. 验证 5.3.1. 什么是Spring Security 的验证呢? 5.3.2. 直接设置SecurityContextHolder 的内容 5.4. 在web 应用中验证 5.4.1. ExceptionTranslationFilter 5.4.2. AuthenticationEntryPoint 5.4.3. 验证机制 5.4.4. 在请求之间保存SecurityContext 。 5.5. Spring Security 中的访问控制(验证) 5.5.1. 安全和AOP 建议 5.5.2. 安全对象和AbstractSecurityInterceptor 5.5.2.1. 配置属性是什么? 5.5.2.2. RunAsManager 5.5.2.3. AfterInvocationManager 5.5.2.4. 扩展安全对象模型 5.6. 国际化 6. 核心服务 6.1. The AuthenticationManager , ProviderManager 和AuthenticationProvider s 6.1.1. DaoAuthenticationProvider 6.2. UserDetailsService 实现 6.2.1. 内存认证 6.2.2. JdbcDaoImpl 6.2.2.1. 权限分组 6.3. 密码加密 6.3.1. 什么是散列加密? 6.3.2. 为散列加点儿盐 6.3.3. 散列和认证 III. web 应用安全 7. 安全过滤器链 7.1. DelegatingFilterProxy 7.2. FilterChainProxy 7.2.1. 绕过过滤器链 7.3. 过滤器顺序 7.4. 使用其他过滤器—— 基于框架 8. 核心安全过滤器 8.1. FilterSecurityInterceptor 8.2. ExceptionTranslationFilter 8.2.1. AuthenticationEntryPoint 8.2.2. AccessDeniedHandler 8.3. SecurityContextPersistenceFilter 8.3.1. SecurityContextRepository 8.4. UsernamePasswordAuthenticationFilter 8.4.1. 认证成功和失败的应用流程 9. Basic(基本)和Digest(摘要)验证 9.1. BasicAuthenticationFilter 9.1.1. 配置 9.2. DigestAuthenticationFilter 9.2.1. Configuration 10. Remember-Me 认证 10.1. 概述 10.2. 简单基于散列标记的方法 10.3. 持久化标记方法 10.4. Remember-Me 接口和实现 10.4.1. TokenBasedRememberMeServices 10.4.2. PersistentTokenBasedRememberMeServices 11. 会话管理 11.1. SessionManagementFilter 11.2. SessionAuthenticationStrategy 11.3. 同步会话 12. 匿名认证 12.1. 概述 12.2. 配置 12.3. AuthenticationTrustResolver IV. 授权 13. 验证架构 13.1. 验证 13.2. 处理预调用 13.2.1. AccessDecisionManager 13.2.2. 基于投票的AccessDecisionManager 实现 13.2.2.1. RoleVoter 13.2.2.2. AuthenticatedVoter 13.2.2.3. Custom Voters 13.3. 处理后决定 14. 安全对象实现 14.1. AOP 联盟(MethodInvocation) 安全拦截器 14.1.1. 精确的MethodSecurityIterceptor 配置 14.2. AspectJ (JoinPoint) 安全拦截器 15. 基于表达式的权限控制 15.1. 概述 15.1.1. 常用内建表达式 15.2. Web 安全表达式 15.3. 方法安全表达式 15.3.1. @Pre 和@Post 注解 15.3.1.1. 访问控制使用@PreAuthorize 和@PostAuthorize 15.3.1.2. 过滤使用@PreFilter 和@PostFilter 16. acegi 到spring security 的转换方式 16.1. Spring Security 是什么 16.2. 目标 16.3. 步骤 16.4. 总结 V. 高级话题 17. 领域对象安全(ACLs) 17.1. 概述 17.2. 关键概念 17.3. 开始 18. 预认证场景 18.1. 预认证框架类 18.1.1. AbstractPreAuthenticatedProcessingFilter 18.1.2. AbstractPreAuthenticatedAuthenticationDetailsSource 18.1.2.1. J2eeBasedPreAuthenticatedWebAuthenticationDetailsSource 18.1.3. PreAuthenticatedAuthenticationProvider 18.1.4. Http403ForbiddenEntryPoint 18.2. 具体实现 18.2.1. 请求头认证(Siteminder) 18.2.1.1. Siteminder 示例配置 18.2.2. J2EE 容器认证 19. LDAP 认证 19.1. 综述 19.2. 在Spring Security 里使用LDAP 19.3. 配置LDAP 服务器 19.3.1. 使用嵌入测试服务器 19.3.2. 使用绑定认证 19.3.3. 读取授权 19.4. 实现类 19.4.1. LdapAuthenticator 实现 19.4.1.1. 常用功能 19.4.1.2. BindAuthenticator 19.4.1.3. PasswordComparisonAuthenticator 19.4.1.4. 活动目录认证 19.4.2. 链接到LDAP 服务器 19.4.3. LDAP 搜索对象 19.4.3.1. FilterBasedLdapUserSearch 19.4.4. LdapAuthoritiesPopulator 19.4.5. Spring Bean 配置 19.4.6. LDAP 属性和自定义UserDetails 20. JSP 标签库 20.1. 声明Taglib 20.2. authorize 标签 20.3. authentication 标签 20.4. accesscontrollist 标签 21. Java 认证和授权服务(JAAS)供应器 21.1. 概述 21.2. 配置 21.2.1. JAAS CallbackHandler 21.2.2. JAAS AuthorityGranter 22. CAS 认证 22.1. 概述 22.2. CAS 是如何工作的 22.3. 配置CAS 客户端 23. X.509 认证 23.1. 概述 23.2. 把X.509 认证添加到你的web 系统中 23.3. 为tomcat 配置SSL 24. 替换验证身份 24.1. 概述 24.2. 配置 A. 安全数据库表结构 A.1. User 表 A.1.1. 组权限 A.2. 持久登陆(Remember-Me)表 A.3. ACL 表 A.3.1. Hypersonic SQL A.3.1.1. PostgreSQL B. 安全命名空间 B.1. Web 应用安全- <http> 元素 B.1.1. <http> 属性 B.1.1.1. servlet-api-provision B.1.1.2. path-type B.1.1.3. lowercase-comparisons B.1.1.4. realm B.1.1.5. entry-point-ref B.1.1.6. access-decision-manager-ref B.1.1.7. access-denied-page B.1.1.8. once-per-request B.1.1.9. create-session B.1.2. <access-denied-handler> B.1.3. <intercept-url> 元素 B.1.3.1. pattern B.1.3.2. method B.1.3.3. access B.1.3.4. requires-channel B.1.3.5. filters B.1.4. <port-mappings> 元素 B.1.5. <form-login> 元素 B.1.5.1. login-page B.1.5.2. login-processing-url B.1.5.3. default-target-url B.1.5.4. always-use-default-target B.1.5.5. authentication-failure-url B.1.5.6. authentication-success-handler-ref B.1.5.7. authentication-failure-handler-ref B.1.6. <http-basic> 元素 B.1.7. <remember-me> 元素 B.1.7.1. data-source-ref B.1.7.2. token-repository-ref B.1.7.3. services-ref B.1.7.4. token-repository-ref B.1.7.5. key 属性 B.1.7.6. token-validity-seconds B.1.7.7. user-service-ref B.1.8. <session-management> 元素 B.1.8.1. session-fixation-protection B.1.9. <concurrent-control> 元素 B.1.9.1. max-sessions 属性 B.1.9.2. expired-url 属性 B.1.9.3. error-if-maximum-exceeded 属性 B.1.9.4. session-registry-alias 和session-registry-ref 属性 B.1.10. <anonymous> 元素 B.1.11. <x509> 元素 B.1.11.1. subject-principal-regex 属性 B.1.11.2. user-service-ref 属性 B.1.12. <openid-login> 元素 B.1.13. <logout> 元素 B.1.13.1. logout-url 属性 B.1.13.2. logout-success-url 属性 B.1.13.3. invalidate-session 属性 B.1.14. <custom-filter> 元素 B.2. 认证服务 B.2.1. <authentication-manager> 元素 B.2.1.1. <authentication-provider>元素 B.2.1.2. 使用<authentication-provider> 来引用一个AuthenticationProvider Bean B.3. 方法安全 B.3.1. <global-method-security> 元素 B.3.1.1. secured-annotations 和jsr250-annotations 属性 B.3.1.2. 安全方法使用<protect-pointcut> B.3.1.3. <after-invocation-provider> 元素 B.3.2. LDAP 命名空间选项 B.3.2.1. 使用<ldap-server> 元素定义LDAP 服务器 B.3.2.2. <ldap-provider> 元素 B.3.2.3. <ldap-user-service> 元素

2011-04-21

淘宝网架构解密淘宝网的开源架构

关于淘宝网的架构解密,淘宝网的开源架构。对大型网站架构的理解有很大的帮助!

2011-04-04

JVM性能优化(PPT)

很详细的关于Java虚拟机的PPT,对Java虚拟机的学习会有很大的帮助!

2011-04-04

Android开发环境搭建

新版android开发环境搭建(图文并茂)!

2011-04-04

疯狂Java实战演义(PDF和源代码)(全)

疯狂Java实战演义,这回是全的,希望能给你带来帮助!

2011-03-28

JQuery+Hibernate分页

JQuery Hibernate 分页很好的例子

2011-01-25

inside java virtual machine(中文名字:深入Java虚拟机)

第1章 Java体系结构介绍 1.1 为什么使用Java 1.2 网络带来的挑战和机遇 1.3 体系结构 1.3.1 Java虚拟机 1.3.2 类装载器的体系结构 1.3.3 Java class文件 1.3.4 Java API 1.3.5 Java程序设计语言 1.4 Java体系结构的代价 1.5 结论 1.6 资源页 第2章 平台无关 2.1 为什么要平台无关 2.2 Java的体系结构对平台无关的支持 2.2.1 Java平台 2.2.2 Java语言 2.3.3 Java class文件 . 2.2.4 可伸缩性 2.3 影响平台无关性的因素 2.3.1 Java平台的部署 2.3.2 Java平台的版本 2.3.3 本地方法 2.3.4 非标准运行时库 2.3.5 对虚拟机的依赖 2.3.6 对用户界面的依赖 2.3.7 Java平台实现中的bug 2.3.8 测试 2.4 平台无关的七个步骤 2.5 平台无关性的策略 2.6 平台无关性和网络移动对象 2.7 资源页 第3章 安全 3.1 为什么需要安全性 3.2 基本沙箱 3.3 类装载器体系结构 3.4 class文件检验器 3.4.1 第一趟:class文件的结构检查 3.4.2 第二趟:类型数据的语义检查 3.4.3 第三趟:字节码验证 3.4.4 第四趟:符号引用的验证 3.4.5 二进制兼容 3.5 Java虚拟机中内置的安全特性 3.6 安全管理器和Java API 3.7 代码签名和认证 3.8 一个代码签名示例 3.9 策略 3.10 保护域 3.11 访问控制器 3.11.1 implies()方法 3.11.2 栈检查示例 3.11.3 一个回答“是”的栈检查 3.11.4 一个回答“不”的栈检查 3.11.5 doPrivileged()方法 3.11.6 doPrivileged()的一个无效使用 3.12 Java安全模型的不足和今后的发展 方向 3.13 和体系结构无关的安全性 3.14 资源页 第4章 网络移动性 4.1 为什么需要网络移动性 4.2 一种新的软件模式 4.3 Java体系结构对网络移动性的支持 4.4 applet:网络移动性代码的示例 4.5 Jini服务对象:网络移动对象的示例 4.5.1 Jini是什么 4.5.2 Jini如何工作 4.5.3 服务对象的优点 4.6 网络移动性:Java设计的中心 4.7 资源页 第5章 Java虚拟机 5.1 Java虚拟机是什么 5.2 Java虚拟机的生命周期 5.3 Java虚拟机的体系结构 5.3.1 数据类型 5.3.2 字长的考量 5.3.3 类装载器子系统 5.3.4 方法区 5.3.5 堆 5.3.6 程序计数器 5.3.7 Java栈 5.3.8 栈帧 5.3.9 本地方法栈 5.3.10 执行引擎 5.3.11 本地方法接口 5.4 真实机器 5.5 一个模拟:“Eternal Math” 5.6 随书光盘 5.7 资源页 第6章 Java class文件 6.1 Java class文件是什么 6.2 class文件的内容 6.3 特殊字符串 6.3.1 全限定名 6.3.2 简单名称 6.3.3 描述符 6.4 常量池 6.4.1 CONSTANT_Utf8_info表 6.4.2 CONSTANT_Integer_info表 6.4.3 CONSTANT_Float_info表 6.4.4 CONSTANT_Long_info表 6.4.5 CONSTANT_Double_info表 6.4.6 CONSTANT_Class_info表 6.4.7 CONSTANT_String_info表 6.4.8 CONSTANT_Fieldref_info表 6.4.9 CONSTANT_Methodref_info表 6.4.10 CONSTANT_InterfaceMethodref_ info表 6.4.11 CONSTANT_NameAndType_info 表 6.5 字段 6.6 方法 6.7 属性 6.7.1 属性格式 6.7.2 Code属性 6.7.3 ConstantValue属性 6.7.4 Deprecated属性 6.7.5 Exceptions属性 6.7.6 InnerClasses属性 6.7.7 LineNumberTable属性 6.7.8 LocalVariableTable属性 6.7.9 SourceFile属性 6.7.10 Synthetic属性 6.8 一个模拟:“Getting Loaded” 6.9 随书光盘 6.10 资源页 第7章 类型的生命周期 7.1 类型装载、连接与初始化 7.1.1 装载 7.1.2 验证 7.1.3 准备 7.1.4 解析 7.1.5 初始化 7.2 对象的生命周期 7.2.1 类实例化 7.2.2 垃圾收集和对象的终结 7.3 卸载类型 7.4 随书光盘 7.5 资源页 第8章 连接模型 8.1 动态连接和解析 8.1.1 解析和动态扩展 8.1.2 类装载器与双亲委派模型 8.1.3 常量池解析 8.1.4 解析CONSTANT_Class_info入口 8.1.5 解析CONSTANT_Fieldref_info 入口 S.1.6 解析CONSTANT_Methodref_info 入口 8.1.7 解析CONSTANT_Interface- Methodref_info入口 8.1.8 解析CONSTANT_String_info入口 8.1.9 解析其他类型的入口 8.1.10 装载约束 8.1.11 编译时常量解析 8.1.12 直接引用 8.1.13 _quick指令 8.1.14 示例:Salutation程序的连接 8.1.15 示例:Greet程序的动态扩展 8.1.16 使用1.1版本的用户自定义类装 载器 8.1.17 使用1.2版本的用户自定义类装 载器 8.1.18 示例:使用forName()的动态扩展 8.1.19 示例:卸载无法触及的greeter类 8.1.20 示例:类型安全性与装载约束 8.2 随书光盘 8.3 资源页 第9章 垃圾收集 9.1 为什么要使用垃圾收集 9.2 垃圾收集算法 9.3 引用计数收集器 9.4 跟踪收集器 9.5 压缩收集器 9.6 拷贝收集器 9.7 按代收集的收集器 9.8 自适应收集器 9.9 火车算法 9.9.1 车厢、火车和火车站 9.9.2 车厢收集 9.9.3 记忆集合和流行对象 9.10 终结 9.11 对象可触及性的生命周期 9.11.1 引用对象 9.11.2 可触及性状态的变化 9.11.3 缓存、规范映射和临终清理 9.12 一个模拟:“Heap of Fish” 9.12.1 分配鱼 9.12.2 设置引用 9.12.3 垃圾收集 9.12.4 压缩堆 9.13 随书光盘 9.14 资源页 第10章 栈和局部变量操作 10.1 常量入栈操作 10.2 通用栈操作 10.3 把局部变量压入栈 10.4 弹出栈顶部元素,将其赋给局部变量 10.5 wide指令 10.6 一个模拟:“Fibonacci Forever” 10.7 随书光盘 10.8 资源页 第11章 类型转换 11.1 转换操作码 11.2 一个模拟:“Conversion Diversion” 11.3 随书光盘 11.4 资源页 第12章 整数运算 12.1 二进制补码运算 12.2 Inner Int:揭示Java int类型内部性质 的applet 12.3 运算操作码 12.4 一个模拟:“Prime Time” 12.5 随书光盘 12.6 资源页 第13章 逻辑运算 13.1 逻辑操作码 13.2 一个模拟:“Logical Results” 13.3 随书光盘 13.4 资源页 第14章 浮点运算 14.1 浮点数 14.2 Inner Float:揭示Java float类型内部 性质的applet 14.3 浮点模式 14.3.1 浮点值集合 14.3.2 浮点值集的转换 14.3.3 相关规则的本质 14.4 浮点操作码 14.5 一个模拟:“Circle of Squares” 14.6 随书光盘 14.7 资源页 第15章 对象和数组 15.1 关于对象和数组的回顾 15.2 针对对象的操作码 15.3 针对数组的操作码 15.4 一个模拟:“Three—Dimensional Array” 15.5 随书光盘 15.6 资源页 第16章 控制流 16.1 条件分支 16.2 五条件分支 16.3 使用表的条件分支 16.4 一个模拟:“Saying Tomato” 16.5 随书光盘 16.6 资源页 第17章 异常 17.1 异常的抛出与捕获 17.2 异常表 17.3 一个模拟:“Play Ball!” 17.4 随书光盘 17.5 资源页 第18章 finally子句 18.1 微型子例程 18.2 不对称的调用和返回 18.3 一个模拟:“Hop Around” 18.4 随书光盘 18.5 资源页 第19章 方法的调用与返回 19.1 方法调用 19.1.1 Java方法的调用 19.1.2 本地方法的调用 19.2 方法调用的其他形式 19.3 指令invokespecial 19.3.1 指令invokespecial和[init]()方法 19.3.2 指令invokespecial和私有方法 19.3.3 指令invokespecial和super关键字 19.4 指令invokeinterface 19.5 指令的调用和速度 19.6 方法调用的实例 19.7 从方法中返回 19.8 随书光盘 19.9 资源页 第20章 线程同步 20.1 监视器 20.2 对象锁 20.3 指令集中对同步的支持 20.3.1 同步语句 20.3.2 同步方法 20.4 Object类中的协调支持 20.5 随书光盘 20.6 资源页 附录A 按操作码助记符排列的指令集 附录B 按功能排列的操作码助记符 附录C 按操作码字节值排列的操作码助 记符 附录D Java虚拟机的一个模拟:“Slices of Pi”

2011-01-16

搜索引擎优化(SEO)知识完全手册

搜索引擎优化(SEO)知识完全手册是一本很好的教程。

2011-01-15

三十三篇点石精华SEO文档

搜索引擎方面很好的教程,希望能给你带来帮助。

2011-01-15

SEO基础知识及操作技巧手册

SEO搜索引擎优化方面很好的教程,希望能给你带来帮助。

2011-01-15

SEO搜索引擎优化实操手册

SEO搜索引擎优化方面很好的教程,希望能给你带来帮助。

2011-01-15

网站优化必读SEO教程

SEO搜索引擎优化很好的教程,希望能给你带来帮助。

2011-01-15

搜索引擎优化(SEO)从入门到精通

SEO搜索引擎优化很好的教程,希望给你带来很好的帮助。

2011-01-15

HTML5高级程序设计英文版

本书首先介绍了html5 的历史背景、新的语义标签及与以往html 版本相比的根本变化,同时揭示了html5 背后的设计原理。

2011-01-09

HTML5揭秘英文版

本书全面而深入地对HTML5相关的技术进行详细介绍和剖析。“从开始到现在”道出HTML5的坎坷发展史;“HTML5特性检测”介绍了多种针对不同特性的检测方法;“本地存储”揭开了如何把“数据库”搬到客户端的神秘面纱;“离线应用”展示了脱机状态下依然能让Web应用完好无损的神奇技艺;“疯狂的表单”大秀了一把炫酷无比的下一代Web表单……它几乎涵盖了HTML5标准中描述的所有新特性。

2011-01-09

HTML5用户指南英文版

本书共分为10章系统全面地介绍了html 5规范的核心内容,以及这些内容在当前浏览器中的支持情况,并告知开发者如何在当前的环境下应用这些功能,开发出漂亮的web应用。

2011-01-09

数据库系统实验与课程设计指导书

这是我们老师给我们的资料 个人感觉非常好 对我的帮助很大

2010-03-19

数据结构(清华大学出版社)课件

完整精练的课件 穿插思考题和答案解析 你一定满意!

2010-03-19

计算机三级 考试辅导

老师的课件简洁但能突出重点 适合初学者和有一定基础的 希望能给大家带来帮助

2010-03-19

计算机网络 基础实验

老师的课件简洁但能突出重点 适合初学者和有一定基础的 希望能给大家带来帮助

2010-03-19

ASP电子教程 很好的资料

老师的课件简洁但能突出重点 适合初学者和有一定基础的 希望能给大家带来帮助

2010-03-19

QC9.0.license

Quality Center9.0 bug测试管理破解license.QC9.0.license

2014-06-24

30套经典网页设计模版

30套经典网页设计模版,希望可以给你带来帮助!

2012-02-25

开源软件之道(全266页)_5_5

目录回到顶部↑ 第1篇 了解开源软件 第1章 开源软件概述 2 1.1 开源软件的理解 2 1.2 开源软件的定义 3 1.3 开源软件定义的意义 5 1.4 开源软件和其他类型软件的比较 6 第2章 开源软件的历史与未来 9 2.1 开源软件的历史 9 2.2 开源运动背后的理想与现实 12 2.2.1 理想主义的兴起 12 2.2.2 技术精英的推动 13 2.2.3 现实业界的需求 14 2.3 开源社区的壮大 15 2.4 开源软件的领袖 16 2.5 开源软件的未来 17 第3章 开源软件的好处 19 3.1 高质量 19 3.2 零许可证费 21 3.3 开放和自由 22 3.4 灵活可定制 22 .3.5 公开透明 23 3.6 良好的学习平台 23 第4章 开源软件的成本 25 4.1 部署和迁移成本 25 4.2 人员和培训成本 26 4.3 管理维护和技术支持成本 27 4.4 风险控制成本 28 第2篇 使用开源软件 第5章 正确使用开源软件 32 5.1 管理体制 32 5.2 法律风险 33 5.2.1 法律因素之著作权 34 5.2.2 法律因素之许可证 35 5.2.3 法律因素之专利 36 5.2.4 问题解析 37 5.2.5 验证著作权,正本清源 38 5.2.6 调查专利,借力打力 40 5.2.7 解读许可证,明察秋毫 41 5.3 成熟度 56 5.3.1 优秀的领导者 57 5.3.2 差异化的开发者社区 57 5.3.3 庞大的优质用户群 58 5.3.4 健康的项目“脉动” 58 5.3.5 健全的安全补丁体制 59 5.3.6 较完善的文档 60 5.4 服务 60 5.5 寻找合适的开源软件 61 第6章 开源软件之语言和平台 63 6.1 harmony 63 6.2 android 66 6.3 python 69 6.4 ruby 72 6.5 php 74 6.6 groovy 76 6.7 perl 78 6.8 flex 80 6.9 openlaszlo 82 第7章 开源软件之框架和库 84 7.1 spring 84 7.2 struts 87 7.3 jboss seam 89 7.4 equinox 91 7.5 hibernate 93 7.6 ibatis 95 7.7 lucene 97 7.8 webkit 99 第8章 开源软件之服务器软件 101 8.1 apache http服务器 101 8.2 tomcat 103 8.3 jetty 104 8.4 geronimo 105 8.5 jboss 108 8.6 glassfish 109 8.7 mysql 111 8.8 postgresql 114 8.9 derby 116 8.10 filezilla server 118 第9章 开源软件之开发工具 120 9.1 eclipse 120 9.2 netbeans 122 9.3 apache ant 124 9.4 apache maven 126 9.5 cvs 128 9.6 subversion 130 9.7 git 131 9.8 bugzilla 133 9.9 junit 135 9.10 testng 137 第10章 开源软件之桌面应用 139 10.1 gnome 139 10.2 openoffice.org 142 10.3 emacs 145 10.4 firefox 147 10.5 thunderbird 150 10.6 gimp 151 10.7 freemind 152 10.8 7-zip 154 第3篇 参与开源项目 第11章 开源社区的基础设施 158 11.1 基础设施 158 11.1.1 主页(home page) 158 11.1.2 代码库(code repository) 158 11.1.3 邮件列表(mailing list) 159 11.1.4 缺陷追踪系统(bug tracking system) 160 11.1.5 wiki 161 11.1.6 其他 161 11.2 开源项目托管网站 162 第12章 开源组织和社区 165 12.1 apache软件基金会 165 12.1.1 apache的历史 165 12.1.2 apache组织结构 166 12.1.3 apache开发模式 169 12.1.4 apache法律问题处理 172 12.1.5 apache项目简介 174 12.1.6 apache运营模式 176 12.2 自由软件基金会 177 12.2.1 fsf的历史 177 12.2.2 fsf的目标 178 12.2.3 fsf组织结构 179 12.2.4 gnu工程 180 12.3 linux kernel社区 181 12.3.1 linux kernel的历史 181 12.3.2 linux kernel社区文化和价值观 185 12.3.3 linux kernel开发模式 186 12.3.4 linux kernel运营模式 188 12.4 eclipse社区 189 12.4.1 eclipse的历史 189 12.4.2 eclipse的发展 190 12.4.3 eclipse组织结构 192 12.4.4 eclipse项目简介 193 12.4.5 eclipse运营模式 196 12.4.6 eclipse con大会 196 12.5 mozilla社区 197 12.5.1 mozilla的历史 197 12.5.2 mozilla组织结构 198 12.5.3 mozilla开发模式 198 12.6 linux相关社区 200 12.6.1 archlinux社区 200 第13章 商业模式与实例 203 13.1 许可证的决定性 203 13.2 商业模式实例 205 13.2.1 增值产品 205 13.2.2 技术支持 207 13.2.3 咨询 211 13.2.4 广告模式 212 13.2.5 软硬件结合 213 13.2.6 双重授权 215 13.2.7 社区模式 216 13.2.8 ubuntu“模式” 216 第14章 参与开源社区 219 14.1 开始加入 219 14.2 社区讨论与工作 220 14.2.1 参与社区讨论 220 14.2.2 参与社区工作 221 14.3 提升自己 225 14.4 礼仪规范 227 14.4.1 撰写邮件的礼仪和规范 227 14.4.2 邮件列表的礼仪和规范 228 14.4.3 发言的礼仪 231 14.5 开源开发的最佳实践 235 14.6 企业参与开源 238 14.6.1 需求 238 14.6.2 风险 238 14.6.3 企业参与开源的策略 239 第15章 开创事业 242 15.1 项目启动与计划 242 15.2 选择正确的许可证 247 15.3 基础设施构建 249 15.3.1 sourceforge托管开源项目基础设施构建 249 15.3.2 google code托管开源项目基础设施构建 259 15.4 宣传与坚持 263 ↑折 叠

2011-07-19

开源软件之道(全266页)_4_5

目录回到顶部↑ 第1篇 了解开源软件 第1章 开源软件概述 2 1.1 开源软件的理解 2 1.2 开源软件的定义 3 1.3 开源软件定义的意义 5 1.4 开源软件和其他类型软件的比较 6 第2章 开源软件的历史与未来 9 2.1 开源软件的历史 9 2.2 开源运动背后的理想与现实 12 2.2.1 理想主义的兴起 12 2.2.2 技术精英的推动 13 2.2.3 现实业界的需求 14 2.3 开源社区的壮大 15 2.4 开源软件的领袖 16 2.5 开源软件的未来 17 第3章 开源软件的好处 19 3.1 高质量 19 3.2 零许可证费 21 3.3 开放和自由 22 3.4 灵活可定制 22 .3.5 公开透明 23 3.6 良好的学习平台 23 第4章 开源软件的成本 25 4.1 部署和迁移成本 25 4.2 人员和培训成本 26 4.3 管理维护和技术支持成本 27 4.4 风险控制成本 28 第2篇 使用开源软件 第5章 正确使用开源软件 32 5.1 管理体制 32 5.2 法律风险 33 5.2.1 法律因素之著作权 34 5.2.2 法律因素之许可证 35 5.2.3 法律因素之专利 36 5.2.4 问题解析 37 5.2.5 验证著作权,正本清源 38 5.2.6 调查专利,借力打力 40 5.2.7 解读许可证,明察秋毫 41 5.3 成熟度 56 5.3.1 优秀的领导者 57 5.3.2 差异化的开发者社区 57 5.3.3 庞大的优质用户群 58 5.3.4 健康的项目“脉动” 58 5.3.5 健全的安全补丁体制 59 5.3.6 较完善的文档 60 5.4 服务 60 5.5 寻找合适的开源软件 61 第6章 开源软件之语言和平台 63 6.1 harmony 63 6.2 android 66 6.3 python 69 6.4 ruby 72 6.5 php 74 6.6 groovy 76 6.7 perl 78 6.8 flex 80 6.9 openlaszlo 82 第7章 开源软件之框架和库 84 7.1 spring 84 7.2 struts 87 7.3 jboss seam 89 7.4 equinox 91 7.5 hibernate 93 7.6 ibatis 95 7.7 lucene 97 7.8 webkit 99 第8章 开源软件之服务器软件 101 8.1 apache http服务器 101 8.2 tomcat 103 8.3 jetty 104 8.4 geronimo 105 8.5 jboss 108 8.6 glassfish 109 8.7 mysql 111 8.8 postgresql 114 8.9 derby 116 8.10 filezilla server 118 第9章 开源软件之开发工具 120 9.1 eclipse 120 9.2 netbeans 122 9.3 apache ant 124 9.4 apache maven 126 9.5 cvs 128 9.6 subversion 130 9.7 git 131 9.8 bugzilla 133 9.9 junit 135 9.10 testng 137 第10章 开源软件之桌面应用 139 10.1 gnome 139 10.2 openoffice.org 142 10.3 emacs 145 10.4 firefox 147 10.5 thunderbird 150 10.6 gimp 151 10.7 freemind 152 10.8 7-zip 154 第3篇 参与开源项目 第11章 开源社区的基础设施 158 11.1 基础设施 158 11.1.1 主页(home page) 158 11.1.2 代码库(code repository) 158 11.1.3 邮件列表(mailing list) 159 11.1.4 缺陷追踪系统(bug tracking system) 160 11.1.5 wiki 161 11.1.6 其他 161 11.2 开源项目托管网站 162 第12章 开源组织和社区 165 12.1 apache软件基金会 165 12.1.1 apache的历史 165 12.1.2 apache组织结构 166 12.1.3 apache开发模式 169 12.1.4 apache法律问题处理 172 12.1.5 apache项目简介 174 12.1.6 apache运营模式 176 12.2 自由软件基金会 177 12.2.1 fsf的历史 177 12.2.2 fsf的目标 178 12.2.3 fsf组织结构 179 12.2.4 gnu工程 180 12.3 linux kernel社区 181 12.3.1 linux kernel的历史 181 12.3.2 linux kernel社区文化和价值观 185 12.3.3 linux kernel开发模式 186 12.3.4 linux kernel运营模式 188 12.4 eclipse社区 189 12.4.1 eclipse的历史 189 12.4.2 eclipse的发展 190 12.4.3 eclipse组织结构 192 12.4.4 eclipse项目简介 193 12.4.5 eclipse运营模式 196 12.4.6 eclipse con大会 196 12.5 mozilla社区 197 12.5.1 mozilla的历史 197 12.5.2 mozilla组织结构 198 12.5.3 mozilla开发模式 198 12.6 linux相关社区 200 12.6.1 archlinux社区 200 第13章 商业模式与实例 203 13.1 许可证的决定性 203 13.2 商业模式实例 205 13.2.1 增值产品 205 13.2.2 技术支持 207 13.2.3 咨询 211 13.2.4 广告模式 212 13.2.5 软硬件结合 213 13.2.6 双重授权 215 13.2.7 社区模式 216 13.2.8 ubuntu“模式” 216 第14章 参与开源社区 219 14.1 开始加入 219 14.2 社区讨论与工作 220 14.2.1 参与社区讨论 220 14.2.2 参与社区工作 221 14.3 提升自己 225 14.4 礼仪规范 227 14.4.1 撰写邮件的礼仪和规范 227 14.4.2 邮件列表的礼仪和规范 228 14.4.3 发言的礼仪 231 14.5 开源开发的最佳实践 235 14.6 企业参与开源 238 14.6.1 需求 238 14.6.2 风险 238 14.6.3 企业参与开源的策略 239 第15章 开创事业 242 15.1 项目启动与计划 242 15.2 选择正确的许可证 247 15.3 基础设施构建 249 15.3.1 sourceforge托管开源项目基础设施构建 249 15.3.2 google code托管开源项目基础设施构建 259 15.4 宣传与坚持 263 ↑折 叠

2011-07-19

开源软件之道(全266页)_3_5

目录回到顶部↑ 第1篇 了解开源软件 第1章 开源软件概述 2 1.1 开源软件的理解 2 1.2 开源软件的定义 3 1.3 开源软件定义的意义 5 1.4 开源软件和其他类型软件的比较 6 第2章 开源软件的历史与未来 9 2.1 开源软件的历史 9 2.2 开源运动背后的理想与现实 12 2.2.1 理想主义的兴起 12 2.2.2 技术精英的推动 13 2.2.3 现实业界的需求 14 2.3 开源社区的壮大 15 2.4 开源软件的领袖 16 2.5 开源软件的未来 17 第3章 开源软件的好处 19 3.1 高质量 19 3.2 零许可证费 21 3.3 开放和自由 22 3.4 灵活可定制 22 .3.5 公开透明 23 3.6 良好的学习平台 23 第4章 开源软件的成本 25 4.1 部署和迁移成本 25 4.2 人员和培训成本 26 4.3 管理维护和技术支持成本 27 4.4 风险控制成本 28 第2篇 使用开源软件 第5章 正确使用开源软件 32 5.1 管理体制 32 5.2 法律风险 33 5.2.1 法律因素之著作权 34 5.2.2 法律因素之许可证 35 5.2.3 法律因素之专利 36 5.2.4 问题解析 37 5.2.5 验证著作权,正本清源 38 5.2.6 调查专利,借力打力 40 5.2.7 解读许可证,明察秋毫 41 5.3 成熟度 56 5.3.1 优秀的领导者 57 5.3.2 差异化的开发者社区 57 5.3.3 庞大的优质用户群 58 5.3.4 健康的项目“脉动” 58 5.3.5 健全的安全补丁体制 59 5.3.6 较完善的文档 60 5.4 服务 60 5.5 寻找合适的开源软件 61 第6章 开源软件之语言和平台 63 6.1 harmony 63 6.2 android 66 6.3 python 69 6.4 ruby 72 6.5 php 74 6.6 groovy 76 6.7 perl 78 6.8 flex 80 6.9 openlaszlo 82 第7章 开源软件之框架和库 84 7.1 spring 84 7.2 struts 87 7.3 jboss seam 89 7.4 equinox 91 7.5 hibernate 93 7.6 ibatis 95 7.7 lucene 97 7.8 webkit 99 第8章 开源软件之服务器软件 101 8.1 apache http服务器 101 8.2 tomcat 103 8.3 jetty 104 8.4 geronimo 105 8.5 jboss 108 8.6 glassfish 109 8.7 mysql 111 8.8 postgresql 114 8.9 derby 116 8.10 filezilla server 118 第9章 开源软件之开发工具 120 9.1 eclipse 120 9.2 netbeans 122 9.3 apache ant 124 9.4 apache maven 126 9.5 cvs 128 9.6 subversion 130 9.7 git 131 9.8 bugzilla 133 9.9 junit 135 9.10 testng 137 第10章 开源软件之桌面应用 139 10.1 gnome 139 10.2 openoffice.org 142 10.3 emacs 145 10.4 firefox 147 10.5 thunderbird 150 10.6 gimp 151 10.7 freemind 152 10.8 7-zip 154 第3篇 参与开源项目 第11章 开源社区的基础设施 158 11.1 基础设施 158 11.1.1 主页(home page) 158 11.1.2 代码库(code repository) 158 11.1.3 邮件列表(mailing list) 159 11.1.4 缺陷追踪系统(bug tracking system) 160 11.1.5 wiki 161 11.1.6 其他 161 11.2 开源项目托管网站 162 第12章 开源组织和社区 165 12.1 apache软件基金会 165 12.1.1 apache的历史 165 12.1.2 apache组织结构 166 12.1.3 apache开发模式 169 12.1.4 apache法律问题处理 172 12.1.5 apache项目简介 174 12.1.6 apache运营模式 176 12.2 自由软件基金会 177 12.2.1 fsf的历史 177 12.2.2 fsf的目标 178 12.2.3 fsf组织结构 179 12.2.4 gnu工程 180 12.3 linux kernel社区 181 12.3.1 linux kernel的历史 181 12.3.2 linux kernel社区文化和价值观 185 12.3.3 linux kernel开发模式 186 12.3.4 linux kernel运营模式 188 12.4 eclipse社区 189 12.4.1 eclipse的历史 189 12.4.2 eclipse的发展 190 12.4.3 eclipse组织结构 192 12.4.4 eclipse项目简介 193 12.4.5 eclipse运营模式 196 12.4.6 eclipse con大会 196 12.5 mozilla社区 197 12.5.1 mozilla的历史 197 12.5.2 mozilla组织结构 198 12.5.3 mozilla开发模式 198 12.6 linux相关社区 200 12.6.1 archlinux社区 200 第13章 商业模式与实例 203 13.1 许可证的决定性 203 13.2 商业模式实例 205 13.2.1 增值产品 205 13.2.2 技术支持 207 13.2.3 咨询 211 13.2.4 广告模式 212 13.2.5 软硬件结合 213 13.2.6 双重授权 215 13.2.7 社区模式 216 13.2.8 ubuntu“模式” 216 第14章 参与开源社区 219 14.1 开始加入 219 14.2 社区讨论与工作 220 14.2.1 参与社区讨论 220 14.2.2 参与社区工作 221 14.3 提升自己 225 14.4 礼仪规范 227 14.4.1 撰写邮件的礼仪和规范 227 14.4.2 邮件列表的礼仪和规范 228 14.4.3 发言的礼仪 231 14.5 开源开发的最佳实践 235 14.6 企业参与开源 238 14.6.1 需求 238 14.6.2 风险 238 14.6.3 企业参与开源的策略 239 第15章 开创事业 242 15.1 项目启动与计划 242 15.2 选择正确的许可证 247 15.3 基础设施构建 249 15.3.1 sourceforge托管开源项目基础设施构建 249 15.3.2 google code托管开源项目基础设施构建 259 15.4 宣传与坚持 263 ↑折 叠

2011-07-19

开源软件之道(全266页)_2_5

目录回到顶部↑ 第1篇 了解开源软件 第1章 开源软件概述 2 1.1 开源软件的理解 2 1.2 开源软件的定义 3 1.3 开源软件定义的意义 5 1.4 开源软件和其他类型软件的比较 6 第2章 开源软件的历史与未来 9 2.1 开源软件的历史 9 2.2 开源运动背后的理想与现实 12 2.2.1 理想主义的兴起 12 2.2.2 技术精英的推动 13 2.2.3 现实业界的需求 14 2.3 开源社区的壮大 15 2.4 开源软件的领袖 16 2.5 开源软件的未来 17 第3章 开源软件的好处 19 3.1 高质量 19 3.2 零许可证费 21 3.3 开放和自由 22 3.4 灵活可定制 22 .3.5 公开透明 23 3.6 良好的学习平台 23 第4章 开源软件的成本 25 4.1 部署和迁移成本 25 4.2 人员和培训成本 26 4.3 管理维护和技术支持成本 27 4.4 风险控制成本 28 第2篇 使用开源软件 第5章 正确使用开源软件 32 5.1 管理体制 32 5.2 法律风险 33 5.2.1 法律因素之著作权 34 5.2.2 法律因素之许可证 35 5.2.3 法律因素之专利 36 5.2.4 问题解析 37 5.2.5 验证著作权,正本清源 38 5.2.6 调查专利,借力打力 40 5.2.7 解读许可证,明察秋毫 41 5.3 成熟度 56 5.3.1 优秀的领导者 57 5.3.2 差异化的开发者社区 57 5.3.3 庞大的优质用户群 58 5.3.4 健康的项目“脉动” 58 5.3.5 健全的安全补丁体制 59 5.3.6 较完善的文档 60 5.4 服务 60 5.5 寻找合适的开源软件 61 第6章 开源软件之语言和平台 63 6.1 harmony 63 6.2 android 66 6.3 python 69 6.4 ruby 72 6.5 php 74 6.6 groovy 76 6.7 perl 78 6.8 flex 80 6.9 openlaszlo 82 第7章 开源软件之框架和库 84 7.1 spring 84 7.2 struts 87 7.3 jboss seam 89 7.4 equinox 91 7.5 hibernate 93 7.6 ibatis 95 7.7 lucene 97 7.8 webkit 99 第8章 开源软件之服务器软件 101 8.1 apache http服务器 101 8.2 tomcat 103 8.3 jetty 104 8.4 geronimo 105 8.5 jboss 108 8.6 glassfish 109 8.7 mysql 111 8.8 postgresql 114 8.9 derby 116 8.10 filezilla server 118 第9章 开源软件之开发工具 120 9.1 eclipse 120 9.2 netbeans 122 9.3 apache ant 124 9.4 apache maven 126 9.5 cvs 128 9.6 subversion 130 9.7 git 131 9.8 bugzilla 133 9.9 junit 135 9.10 testng 137 第10章 开源软件之桌面应用 139 10.1 gnome 139 10.2 openoffice.org 142 10.3 emacs 145 10.4 firefox 147 10.5 thunderbird 150 10.6 gimp 151 10.7 freemind 152 10.8 7-zip 154 第3篇 参与开源项目 第11章 开源社区的基础设施 158 11.1 基础设施 158 11.1.1 主页(home page) 158 11.1.2 代码库(code repository) 158 11.1.3 邮件列表(mailing list) 159 11.1.4 缺陷追踪系统(bug tracking system) 160 11.1.5 wiki 161 11.1.6 其他 161 11.2 开源项目托管网站 162 第12章 开源组织和社区 165 12.1 apache软件基金会 165 12.1.1 apache的历史 165 12.1.2 apache组织结构 166 12.1.3 apache开发模式 169 12.1.4 apache法律问题处理 172 12.1.5 apache项目简介 174 12.1.6 apache运营模式 176 12.2 自由软件基金会 177 12.2.1 fsf的历史 177 12.2.2 fsf的目标 178 12.2.3 fsf组织结构 179 12.2.4 gnu工程 180 12.3 linux kernel社区 181 12.3.1 linux kernel的历史 181 12.3.2 linux kernel社区文化和价值观 185 12.3.3 linux kernel开发模式 186 12.3.4 linux kernel运营模式 188 12.4 eclipse社区 189 12.4.1 eclipse的历史 189 12.4.2 eclipse的发展 190 12.4.3 eclipse组织结构 192 12.4.4 eclipse项目简介 193 12.4.5 eclipse运营模式 196 12.4.6 eclipse con大会 196 12.5 mozilla社区 197 12.5.1 mozilla的历史 197 12.5.2 mozilla组织结构 198 12.5.3 mozilla开发模式 198 12.6 linux相关社区 200 12.6.1 archlinux社区 200 第13章 商业模式与实例 203 13.1 许可证的决定性 203 13.2 商业模式实例 205 13.2.1 增值产品 205 13.2.2 技术支持 207 13.2.3 咨询 211 13.2.4 广告模式 212 13.2.5 软硬件结合 213 13.2.6 双重授权 215 13.2.7 社区模式 216 13.2.8 ubuntu“模式” 216 第14章 参与开源社区 219 14.1 开始加入 219 14.2 社区讨论与工作 220 14.2.1 参与社区讨论 220 14.2.2 参与社区工作 221 14.3 提升自己 225 14.4 礼仪规范 227 14.4.1 撰写邮件的礼仪和规范 227 14.4.2 邮件列表的礼仪和规范 228 14.4.3 发言的礼仪 231 14.5 开源开发的最佳实践 235 14.6 企业参与开源 238 14.6.1 需求 238 14.6.2 风险 238 14.6.3 企业参与开源的策略 239 第15章 开创事业 242 15.1 项目启动与计划 242 15.2 选择正确的许可证 247 15.3 基础设施构建 249 15.3.1 sourceforge托管开源项目基础设施构建 249 15.3.2 google code托管开源项目基础设施构建 259 15.4 宣传与坚持 263 ↑折 叠

2011-07-19

开源软件之道(全266页)_1_5

目录回到顶部↑ 第1篇 了解开源软件 第1章 开源软件概述 2 1.1 开源软件的理解 2 1.2 开源软件的定义 3 1.3 开源软件定义的意义 5 1.4 开源软件和其他类型软件的比较 6 第2章 开源软件的历史与未来 9 2.1 开源软件的历史 9 2.2 开源运动背后的理想与现实 12 2.2.1 理想主义的兴起 12 2.2.2 技术精英的推动 13 2.2.3 现实业界的需求 14 2.3 开源社区的壮大 15 2.4 开源软件的领袖 16 2.5 开源软件的未来 17 第3章 开源软件的好处 19 3.1 高质量 19 3.2 零许可证费 21 3.3 开放和自由 22 3.4 灵活可定制 22 .3.5 公开透明 23 3.6 良好的学习平台 23 第4章 开源软件的成本 25 4.1 部署和迁移成本 25 4.2 人员和培训成本 26 4.3 管理维护和技术支持成本 27 4.4 风险控制成本 28 第2篇 使用开源软件 第5章 正确使用开源软件 32 5.1 管理体制 32 5.2 法律风险 33 5.2.1 法律因素之著作权 34 5.2.2 法律因素之许可证 35 5.2.3 法律因素之专利 36 5.2.4 问题解析 37 5.2.5 验证著作权,正本清源 38 5.2.6 调查专利,借力打力 40 5.2.7 解读许可证,明察秋毫 41 5.3 成熟度 56 5.3.1 优秀的领导者 57 5.3.2 差异化的开发者社区 57 5.3.3 庞大的优质用户群 58 5.3.4 健康的项目“脉动” 58 5.3.5 健全的安全补丁体制 59 5.3.6 较完善的文档 60 5.4 服务 60 5.5 寻找合适的开源软件 61 第6章 开源软件之语言和平台 63 6.1 harmony 63 6.2 android 66 6.3 python 69 6.4 ruby 72 6.5 php 74 6.6 groovy 76 6.7 perl 78 6.8 flex 80 6.9 openlaszlo 82 第7章 开源软件之框架和库 84 7.1 spring 84 7.2 struts 87 7.3 jboss seam 89 7.4 equinox 91 7.5 hibernate 93 7.6 ibatis 95 7.7 lucene 97 7.8 webkit 99 第8章 开源软件之服务器软件 101 8.1 apache http服务器 101 8.2 tomcat 103 8.3 jetty 104 8.4 geronimo 105 8.5 jboss 108 8.6 glassfish 109 8.7 mysql 111 8.8 postgresql 114 8.9 derby 116 8.10 filezilla server 118 第9章 开源软件之开发工具 120 9.1 eclipse 120 9.2 netbeans 122 9.3 apache ant 124 9.4 apache maven 126 9.5 cvs 128 9.6 subversion 130 9.7 git 131 9.8 bugzilla 133 9.9 junit 135 9.10 testng 137 第10章 开源软件之桌面应用 139 10.1 gnome 139 10.2 openoffice.org 142 10.3 emacs 145 10.4 firefox 147 10.5 thunderbird 150 10.6 gimp 151 10.7 freemind 152 10.8 7-zip 154 第3篇 参与开源项目 第11章 开源社区的基础设施 158 11.1 基础设施 158 11.1.1 主页(home page) 158 11.1.2 代码库(code repository) 158 11.1.3 邮件列表(mailing list) 159 11.1.4 缺陷追踪系统(bug tracking system) 160 11.1.5 wiki 161 11.1.6 其他 161 11.2 开源项目托管网站 162 第12章 开源组织和社区 165 12.1 apache软件基金会 165 12.1.1 apache的历史 165 12.1.2 apache组织结构 166 12.1.3 apache开发模式 169 12.1.4 apache法律问题处理 172 12.1.5 apache项目简介 174 12.1.6 apache运营模式 176 12.2 自由软件基金会 177 12.2.1 fsf的历史 177 12.2.2 fsf的目标 178 12.2.3 fsf组织结构 179 12.2.4 gnu工程 180 12.3 linux kernel社区 181 12.3.1 linux kernel的历史 181 12.3.2 linux kernel社区文化和价值观 185 12.3.3 linux kernel开发模式 186 12.3.4 linux kernel运营模式 188 12.4 eclipse社区 189 12.4.1 eclipse的历史 189 12.4.2 eclipse的发展 190 12.4.3 eclipse组织结构 192 12.4.4 eclipse项目简介 193 12.4.5 eclipse运营模式 196 12.4.6 eclipse con大会 196 12.5 mozilla社区 197 12.5.1 mozilla的历史 197 12.5.2 mozilla组织结构 198 12.5.3 mozilla开发模式 198 12.6 linux相关社区 200 12.6.1 archlinux社区 200 第13章 商业模式与实例 203 13.1 许可证的决定性 203 13.2 商业模式实例 205 13.2.1 增值产品 205 13.2.2 技术支持 207 13.2.3 咨询 211 13.2.4 广告模式 212 13.2.5 软硬件结合 213 13.2.6 双重授权 215 13.2.7 社区模式 216 13.2.8 ubuntu“模式” 216 第14章 参与开源社区 219 14.1 开始加入 219 14.2 社区讨论与工作 220 14.2.1 参与社区讨论 220 14.2.2 参与社区工作 221 14.3 提升自己 225 14.4 礼仪规范 227 14.4.1 撰写邮件的礼仪和规范 227 14.4.2 邮件列表的礼仪和规范 228 14.4.3 发言的礼仪 231 14.5 开源开发的最佳实践 235 14.6 企业参与开源 238 14.6.1 需求 238 14.6.2 风险 238 14.6.3 企业参与开源的策略 239 第15章 开创事业 242 15.1 项目启动与计划 242 15.2 选择正确的许可证 247 15.3 基础设施构建 249 15.3.1 sourceforge托管开源项目基础设施构建 249 15.3.2 google code托管开源项目基础设施构建 259 15.4 宣传与坚持 263 ↑折 叠

2011-07-19

构建高性能Web站点_郭欣_3_3

目录回到顶部↑ 第1章 绪论. 1 1.1 等待的真相 1 1.2 瓶颈在哪里 2 1.3 增加带宽 3 1.4 减少网页中的http请求 4 1.5 加快服务器脚本计算速度 4 1.6 使用动态内容缓存 5 1.7 使用数据缓存 5 1.8 将动态内容静态化 6 1.9 更换web服务器软件 6 1.10 页面组件分离 7 1.11 合理部署服务器 7 1.12 使用负载均衡 8 1.13 优化数据库 8 1.14 考虑可扩展性 9 1.15 减少视觉等待 10 第2章 数据的网络传输 11 2.1 分层网络模型 11 2.2 带宽 22 2.3 响应时间 28 .2.4 互联互通 33 第3章 服务器并发处理能力 35 3.1 吞吐率 35 3.2 cpu并发计算 49 3.3 系统调用 60 3.4 内存分配 63 3.5 持久连接 65 3.6 i/o模型 68 3.7 服务器并发策略 81 第4章 动态内容缓存 96 4.1 重复的开销 96 4.2 缓存与速度 98 4.3 页面缓存 98 4.4 局部无缓存 112 4.5 静态化内容 112 第5章 动态脚本加速 121 5.1 opcode缓存 121 5.2 解释器扩展模块 132 5.3 脚本跟踪与分析 133 第6章 浏览器缓存 143 6.1 别忘了浏览器 143 6.2 缓存协商 147 6.3 彻底消灭请求 160 第7章 web服务器缓存 167 7.1 url映射 167 7.2 缓存响应内容 168 7.3 缓存文件描述符 175 第8章 反向代理缓存 178 8.1 传统代理 178 8.2 何为反向 179 8.3 在反向代理上创建缓存 180 8.4 小心穿过代理 202 8.5 流量分配 204 第9章 web组件分离 205 9.1 备受争议的分离.. 205 9.2 因材施教 206 9.3 拥有不同的域名 207 9.4 浏览器并发数 210 9.5 发挥各自的潜力 212 第10章 分布式缓存 220 10.1 数据库的前端缓存区 220 10.2 使用memcached 221 10.3 读操作缓存 225 10.4 写操作缓存 229 10.5 监控状态 232 10.6 缓存扩展 234 第11章 数据库性能优化 238 11.1 友好的状态报告 239 11.2 正确使用索引 241 11.3 锁定与等待 255 11.4 事务性表的性能 263 11.5 使用查询缓存 264 11.6 临时表 266 11.7 线程池 266 11.8 反范式化设计 267 11.9 放弃关系型数据库 269 第12章 web负载均衡 272 12.1 一些思考 272 12.2 http重定向 275 12.3 dns负载均衡 284 12.4 反向代理负载均衡 292 12.5 ip负载均衡 305 12.6 直接路由 317 12.7 ip隧道 325 12.8 考虑可用性 325 第13章 共享文件系统 328 13.1 网络共享 328 13.2 nfs 330 13.3 局限性 335 第14章 内容分发和同步 337 14.1 复制 337 14.2 ssh 338 14.3 webdav 342 14.4 rsync 342 14.5 hash tree 344 14.6 分发还是同步 345 14.7 反向代理 346 第15章 分布式文件系统 348 15.1 文件系统 348 15.2 存储节点和追踪器 350 15.3 mogilefs 352 第16章 数据库扩展 362 16.1 复制和分离 362 16.2 垂直分区 366 16.3 水平分区 367 第17章 分布式计算 374 17.1 异步计算 374 17.2 并行计算 379 第18章 性能监控 384 18.1 实时监控 384 18.2 监控代理 386 18.3 系统监控 388 18.4 服务监控 391 18.5 响应时间监控 393 参考文献 397 索引... 399 ↑折 叠

2011-07-16

构建高性能Web站点_郭欣_2_3

目录回到顶部↑ 第1章 绪论. 1 1.1 等待的真相 1 1.2 瓶颈在哪里 2 1.3 增加带宽 3 1.4 减少网页中的http请求 4 1.5 加快服务器脚本计算速度 4 1.6 使用动态内容缓存 5 1.7 使用数据缓存 5 1.8 将动态内容静态化 6 1.9 更换web服务器软件 6 1.10 页面组件分离 7 1.11 合理部署服务器 7 1.12 使用负载均衡 8 1.13 优化数据库 8 1.14 考虑可扩展性 9 1.15 减少视觉等待 10 第2章 数据的网络传输 11 2.1 分层网络模型 11 2.2 带宽 22 2.3 响应时间 28 .2.4 互联互通 33 第3章 服务器并发处理能力 35 3.1 吞吐率 35 3.2 cpu并发计算 49 3.3 系统调用 60 3.4 内存分配 63 3.5 持久连接 65 3.6 i/o模型 68 3.7 服务器并发策略 81 第4章 动态内容缓存 96 4.1 重复的开销 96 4.2 缓存与速度 98 4.3 页面缓存 98 4.4 局部无缓存 112 4.5 静态化内容 112 第5章 动态脚本加速 121 5.1 opcode缓存 121 5.2 解释器扩展模块 132 5.3 脚本跟踪与分析 133 第6章 浏览器缓存 143 6.1 别忘了浏览器 143 6.2 缓存协商 147 6.3 彻底消灭请求 160 第7章 web服务器缓存 167 7.1 url映射 167 7.2 缓存响应内容 168 7.3 缓存文件描述符 175 第8章 反向代理缓存 178 8.1 传统代理 178 8.2 何为反向 179 8.3 在反向代理上创建缓存 180 8.4 小心穿过代理 202 8.5 流量分配 204 第9章 web组件分离 205 9.1 备受争议的分离.. 205 9.2 因材施教 206 9.3 拥有不同的域名 207 9.4 浏览器并发数 210 9.5 发挥各自的潜力 212 第10章 分布式缓存 220 10.1 数据库的前端缓存区 220 10.2 使用memcached 221 10.3 读操作缓存 225 10.4 写操作缓存 229 10.5 监控状态 232 10.6 缓存扩展 234 第11章 数据库性能优化 238 11.1 友好的状态报告 239 11.2 正确使用索引 241 11.3 锁定与等待 255 11.4 事务性表的性能 263 11.5 使用查询缓存 264 11.6 临时表 266 11.7 线程池 266 11.8 反范式化设计 267 11.9 放弃关系型数据库 269 第12章 web负载均衡 272 12.1 一些思考 272 12.2 http重定向 275 12.3 dns负载均衡 284 12.4 反向代理负载均衡 292 12.5 ip负载均衡 305 12.6 直接路由 317 12.7 ip隧道 325 12.8 考虑可用性 325 第13章 共享文件系统 328 13.1 网络共享 328 13.2 nfs 330 13.3 局限性 335 第14章 内容分发和同步 337 14.1 复制 337 14.2 ssh 338 14.3 webdav 342 14.4 rsync 342 14.5 hash tree 344 14.6 分发还是同步 345 14.7 反向代理 346 第15章 分布式文件系统 348 15.1 文件系统 348 15.2 存储节点和追踪器 350 15.3 mogilefs 352 第16章 数据库扩展 362 16.1 复制和分离 362 16.2 垂直分区 366 16.3 水平分区 367 第17章 分布式计算 374 17.1 异步计算 374 17.2 并行计算 379 第18章 性能监控 384 18.1 实时监控 384 18.2 监控代理 386 18.3 系统监控 388 18.4 服务监控 391 18.5 响应时间监控 393 参考文献 397 索引... 399 ↑折 叠

2011-07-16

构建高性能Web站点_郭欣_1_3

目录回到顶部↑ 第1章 绪论. 1 1.1 等待的真相 1 1.2 瓶颈在哪里 2 1.3 增加带宽 3 1.4 减少网页中的http请求 4 1.5 加快服务器脚本计算速度 4 1.6 使用动态内容缓存 5 1.7 使用数据缓存 5 1.8 将动态内容静态化 6 1.9 更换web服务器软件 6 1.10 页面组件分离 7 1.11 合理部署服务器 7 1.12 使用负载均衡 8 1.13 优化数据库 8 1.14 考虑可扩展性 9 1.15 减少视觉等待 10 第2章 数据的网络传输 11 2.1 分层网络模型 11 2.2 带宽 22 2.3 响应时间 28 .2.4 互联互通 33 第3章 服务器并发处理能力 35 3.1 吞吐率 35 3.2 cpu并发计算 49 3.3 系统调用 60 3.4 内存分配 63 3.5 持久连接 65 3.6 i/o模型 68 3.7 服务器并发策略 81 第4章 动态内容缓存 96 4.1 重复的开销 96 4.2 缓存与速度 98 4.3 页面缓存 98 4.4 局部无缓存 112 4.5 静态化内容 112 第5章 动态脚本加速 121 5.1 opcode缓存 121 5.2 解释器扩展模块 132 5.3 脚本跟踪与分析 133 第6章 浏览器缓存 143 6.1 别忘了浏览器 143 6.2 缓存协商 147 6.3 彻底消灭请求 160 第7章 web服务器缓存 167 7.1 url映射 167 7.2 缓存响应内容 168 7.3 缓存文件描述符 175 第8章 反向代理缓存 178 8.1 传统代理 178 8.2 何为反向 179 8.3 在反向代理上创建缓存 180 8.4 小心穿过代理 202 8.5 流量分配 204 第9章 web组件分离 205 9.1 备受争议的分离.. 205 9.2 因材施教 206 9.3 拥有不同的域名 207 9.4 浏览器并发数 210 9.5 发挥各自的潜力 212 第10章 分布式缓存 220 10.1 数据库的前端缓存区 220 10.2 使用memcached 221 10.3 读操作缓存 225 10.4 写操作缓存 229 10.5 监控状态 232 10.6 缓存扩展 234 第11章 数据库性能优化 238 11.1 友好的状态报告 239 11.2 正确使用索引 241 11.3 锁定与等待 255 11.4 事务性表的性能 263 11.5 使用查询缓存 264 11.6 临时表 266 11.7 线程池 266 11.8 反范式化设计 267 11.9 放弃关系型数据库 269 第12章 web负载均衡 272 12.1 一些思考 272 12.2 http重定向 275 12.3 dns负载均衡 284 12.4 反向代理负载均衡 292 12.5 ip负载均衡 305 12.6 直接路由 317 12.7 ip隧道 325 12.8 考虑可用性 325 第13章 共享文件系统 328 13.1 网络共享 328 13.2 nfs 330 13.3 局限性 335 第14章 内容分发和同步 337 14.1 复制 337 14.2 ssh 338 14.3 webdav 342 14.4 rsync 342 14.5 hash tree 344 14.6 分发还是同步 345 14.7 反向代理 346 第15章 分布式文件系统 348 15.1 文件系统 348 15.2 存储节点和追踪器 350 15.3 mogilefs 352 第16章 数据库扩展 362 16.1 复制和分离 362 16.2 垂直分区 366 16.3 水平分区 367 第17章 分布式计算 374 17.1 异步计算 374 17.2 并行计算 379 第18章 性能监控 384 18.1 实时监控 384 18.2 监控代理 386 18.3 系统监控 388 18.4 服务监控 391 18.5 响应时间监控 393 参考文献 397 索引... 399 ↑折 叠

2011-07-16

数据结构与算法分析-Java语言描述(第2版)_2_2

目录回到顶部↑ 出版者的话 译者序 前言 第1章 引论  1.1 本书讨论的内容  1.2 数学知识复习   1.2.1 指数   1.2.2 对数   1.2.3 级数   1.2.4 模运算   1.2.5 证明的方法  1.3 递归简论  1.4 实现泛型特性构件pre-java5   1.4.1 使用object表示泛型   1.4.2 基本类型的包装   1.4.3 使用接口类型表示泛型   1.4.4 数组类型的兼容性  1.5 利用java5泛性实现泛型特性成分   1.5.1 简单的泛型类和接口   1.5.2 自动装箱/拆箱 .  1.5.3 带有限制的通配符   1.5.4 泛型static方法   1.5.5 类型限界   1.5.6 类型擦除   1.5.7 对于泛型的限制   1.6 函数对象  小结  练习  参考文献 第2章 算法分析  2.1 数学基础  2.2 模型  2.3 要分析的问题  2.4 运行时间计算   2.4.1 一个简单的例子   2.4.2 一般法则   2.4.3 最大子序列和问题的求解   2.4.4 运行时间中的对数   2.4.5 检验你的分析   2.4.6 分析结果的准确性  小结  练习  参考文献 第3章 表、栈和队列  3.1 抽象数据类型  3.2 表adt   3.2.1 表的简单数组实现   3.2.2 简单链表  3.3 javacollectionsapi中的表   3.3.1 collection接口   3.3.2 iterator接口   3.3.3 list接口、arraylist类和linkedlist类   3.3.4 例:remove方法对linkedlist类的使用   3.3.5 关于listiterator接口  3.4 arraylist类的实现   3.4.1 基本类   3.4.2 迭代器、java嵌套类和内部类  3.5 linkedlist类的实现  3.6 栈adt   3.6.1 栈模型   3.6.2 栈的实现   3.6.3 应用  3.7 队列adt   3.7.1 队列模型   3.7.2 队列的数组实现   3.7.3 队列的应用  小结  练习 第4章 树  4.1 预备知识   4.1.1 树的实现   4.1.2 树的遍历及应用  4.2 二叉树   4.2.1 实现   4.2.2 例子:表达式树  4.3 查找树adt——二叉查找树   4.3.1 contains方法   4.3.2 findmin方法和findmax方法   4.3.3 insert方法   4.3.4 remove方法   4.3.5 平均情况分析  4.4 avl树   4.4.1 单旋转   4.4.2 双旋转  4.5 伸展树   4.5.1 一个简单的想法(不能直接使用)   4.5.2 展开  4.6 树的遍历  4.7 b树  4.8 标准库中的集合与映射   4.8.1 关于set接口   4.8.2 关于map接口   4.8.3 treeset类和treemap类的实现  4.8.4 使用多个映射的例  小结  练习  参考文献 第5章 散列  5.1 一般想法  5.2 散列函数  5.3 分离链接法  5.4 不用链表的散列表   5.4.1 线性探测法   5.4.2 平方探测法   5.4.3 双散列  5.5 再散列  5.6 标准库中的散列表  5.7 可扩散列  小结  练习  参考文献 第6章 优先队列(堆)  6.1 模型  6.2 一些简单的实现  6.3 二叉堆   6.3.1 结构性质   6.3.2 堆序性质   6.3.3 基本的堆操作   6.3.4 其他的堆操作  6.4 优先队列的应用   6.4.1 选择问题   6.4.2 事件模拟  6.5 d-堆  6.6 左式堆   6.6.1 左式堆性质   6.6.2 左式堆操作  6.7 斜堆  6.8 二项队列   6.8.1 二项队列结构   6.8.2 二项队列操作   6.8.3 二项队列的实现  6.9 标准库中的优先队列  小结  练习  参考文献 第7章 排序  7.1 预备知识  7.2 插入排序   7.2.1 算法   7.2.2 插入排序的分析  7.3 一些简单排序算法的下界  7.4 希尔排序  7.5 堆排序  7.6 归并排序  7.7 快速排序   7.7.1 选取枢纽元   7.7.2 分割策略   7.7.3 小数组   7.7.4 实际的快速排序例程   7.7.5 快速排序的分析   7.7.6 选择问题的线性期望时间算法  7.8 排序算法的一般下界  7.9 桶式排序  7.10 外部排序   7.10.1 为什么需要一些新的算法   7.10.2 外部排序模型   7.10.3 简单算法   7.10.4 多路合并   7.10.5 多相合并   7.10.6 替换选择  小结  练习题  参考文献 第8章 不相交集类  8.1 等价关系  8.2 动态等价性问题  8.3 基本数据结构  8.4 灵巧求并算法  8.5 路径压缩  8.6 路径压缩和按秩求并的最坏情形  8.7 一个应用  小结  练习题  参考文献 第9章 图论算法  9.1 若干定义  9.2 拓扑排序  9.3 最短路径算法   9.3.1 无权最短路径   9.3.2 dijkstra算法   9.3.3 具有负边值的图   9.3.4 无圈图   9.3.5 所有点对最短路径   9.3.6 最短路径的例子  9.4 网络流问题  9.5 最小生成树   9.5.1 prim算法   9.5.2 kruskal算法  9.6 深度优先搜索的应用   9.6.1 无向图   9.6.2 双连通性   9.6.3 欧拉回路   9.6.4 有向图   9.6.5 查找强分支  9.7 np完全性介绍   9.7.1 难与易   9.7.2 np类   9.7.3 np完全问题  小结  练习  参考文献 第10章 算法设计技巧  10.1 贪婪算法   10.1.1 一个简单的调度问题   10.1.2 哈夫曼编码   10.1.3 近似装箱问题  10.2 分治算法   10.2.1 分治算法的运行时间   10.2.2 最近点问题   10.2.3 选择问题   10.2.4 一些算术问题的理论改进  10.3 动态规划   10.3.1 用一个表代替递归   10.3.2 矩阵乘法的顺序安排   10.3.3 最优二叉查找树   10.3.4 所有点对最短路径  10.4 随机化算法   10.4.1 随机数发生器   10.4.2 跳跃表   10.4.3 素性测试  10.5 回溯算法   10.5.1 收费公路重建问题   10.5.2 博弈  小结  练习  参考文献 第11章 摊还分析  11.1 一个无关的智力问题  11.2 二项队列  11.3 斜堆  11.4 斐波那契堆   11.4.1 切除左式堆中的节点   11.4.2 二项队列的懒惰合并   11.4.3 斐波那契堆操作   11.4.4 时间界的证明  11.5 伸展树  小结  练习  参考文献 第12章 高级数据结构及其实现  12.1 自顶向下伸展树  12.2 红黑树   12.2.1 自底向上的插入   12.2.2 自顶向下红黑树   12.2.3 自顶向下的删除  12.3 确定性跳跃表  12.4 aa树  12.5 treap树  12.6 kd树  12.7 配对堆  小结  练习  参考文献 索引 ↑折 叠

2011-07-16

数据结构与算法分析-Java语言描述(第2版)_1_2

目录回到顶部↑ 出版者的话 译者序 前言 第1章 引论  1.1 本书讨论的内容  1.2 数学知识复习   1.2.1 指数   1.2.2 对数   1.2.3 级数   1.2.4 模运算   1.2.5 证明的方法  1.3 递归简论  1.4 实现泛型特性构件pre-java5   1.4.1 使用object表示泛型   1.4.2 基本类型的包装   1.4.3 使用接口类型表示泛型   1.4.4 数组类型的兼容性  1.5 利用java5泛性实现泛型特性成分   1.5.1 简单的泛型类和接口   1.5.2 自动装箱/拆箱 .  1.5.3 带有限制的通配符   1.5.4 泛型static方法   1.5.5 类型限界   1.5.6 类型擦除   1.5.7 对于泛型的限制   1.6 函数对象  小结  练习  参考文献 第2章 算法分析  2.1 数学基础  2.2 模型  2.3 要分析的问题  2.4 运行时间计算   2.4.1 一个简单的例子   2.4.2 一般法则   2.4.3 最大子序列和问题的求解   2.4.4 运行时间中的对数   2.4.5 检验你的分析   2.4.6 分析结果的准确性  小结  练习  参考文献 第3章 表、栈和队列  3.1 抽象数据类型  3.2 表adt   3.2.1 表的简单数组实现   3.2.2 简单链表  3.3 javacollectionsapi中的表   3.3.1 collection接口   3.3.2 iterator接口   3.3.3 list接口、arraylist类和linkedlist类   3.3.4 例:remove方法对linkedlist类的使用   3.3.5 关于listiterator接口  3.4 arraylist类的实现   3.4.1 基本类   3.4.2 迭代器、java嵌套类和内部类  3.5 linkedlist类的实现  3.6 栈adt   3.6.1 栈模型   3.6.2 栈的实现   3.6.3 应用  3.7 队列adt   3.7.1 队列模型   3.7.2 队列的数组实现   3.7.3 队列的应用  小结  练习 第4章 树  4.1 预备知识   4.1.1 树的实现   4.1.2 树的遍历及应用  4.2 二叉树   4.2.1 实现   4.2.2 例子:表达式树  4.3 查找树adt——二叉查找树   4.3.1 contains方法   4.3.2 findmin方法和findmax方法   4.3.3 insert方法   4.3.4 remove方法   4.3.5 平均情况分析  4.4 avl树   4.4.1 单旋转   4.4.2 双旋转  4.5 伸展树   4.5.1 一个简单的想法(不能直接使用)   4.5.2 展开  4.6 树的遍历  4.7 b树  4.8 标准库中的集合与映射   4.8.1 关于set接口   4.8.2 关于map接口   4.8.3 treeset类和treemap类的实现  4.8.4 使用多个映射的例  小结  练习  参考文献 第5章 散列  5.1 一般想法  5.2 散列函数  5.3 分离链接法  5.4 不用链表的散列表   5.4.1 线性探测法   5.4.2 平方探测法   5.4.3 双散列  5.5 再散列  5.6 标准库中的散列表  5.7 可扩散列  小结  练习  参考文献 第6章 优先队列(堆)  6.1 模型  6.2 一些简单的实现  6.3 二叉堆   6.3.1 结构性质   6.3.2 堆序性质   6.3.3 基本的堆操作   6.3.4 其他的堆操作  6.4 优先队列的应用   6.4.1 选择问题   6.4.2 事件模拟  6.5 d-堆  6.6 左式堆   6.6.1 左式堆性质   6.6.2 左式堆操作  6.7 斜堆  6.8 二项队列   6.8.1 二项队列结构   6.8.2 二项队列操作   6.8.3 二项队列的实现  6.9 标准库中的优先队列  小结  练习  参考文献 第7章 排序  7.1 预备知识  7.2 插入排序   7.2.1 算法   7.2.2 插入排序的分析  7.3 一些简单排序算法的下界  7.4 希尔排序  7.5 堆排序  7.6 归并排序  7.7 快速排序   7.7.1 选取枢纽元   7.7.2 分割策略   7.7.3 小数组   7.7.4 实际的快速排序例程   7.7.5 快速排序的分析   7.7.6 选择问题的线性期望时间算法  7.8 排序算法的一般下界  7.9 桶式排序  7.10 外部排序   7.10.1 为什么需要一些新的算法   7.10.2 外部排序模型   7.10.3 简单算法   7.10.4 多路合并   7.10.5 多相合并   7.10.6 替换选择  小结  练习题  参考文献 第8章 不相交集类  8.1 等价关系  8.2 动态等价性问题  8.3 基本数据结构  8.4 灵巧求并算法  8.5 路径压缩  8.6 路径压缩和按秩求并的最坏情形  8.7 一个应用  小结  练习题  参考文献 第9章 图论算法  9.1 若干定义  9.2 拓扑排序  9.3 最短路径算法   9.3.1 无权最短路径   9.3.2 dijkstra算法   9.3.3 具有负边值的图   9.3.4 无圈图   9.3.5 所有点对最短路径   9.3.6 最短路径的例子  9.4 网络流问题  9.5 最小生成树   9.5.1 prim算法   9.5.2 kruskal算法  9.6 深度优先搜索的应用   9.6.1 无向图   9.6.2 双连通性   9.6.3 欧拉回路   9.6.4 有向图   9.6.5 查找强分支  9.7 np完全性介绍   9.7.1 难与易   9.7.2 np类   9.7.3 np完全问题  小结  练习  参考文献 第10章 算法设计技巧  10.1 贪婪算法   10.1.1 一个简单的调度问题   10.1.2 哈夫曼编码   10.1.3 近似装箱问题  10.2 分治算法   10.2.1 分治算法的运行时间   10.2.2 最近点问题   10.2.3 选择问题   10.2.4 一些算术问题的理论改进  10.3 动态规划   10.3.1 用一个表代替递归   10.3.2 矩阵乘法的顺序安排   10.3.3 最优二叉查找树   10.3.4 所有点对最短路径  10.4 随机化算法   10.4.1 随机数发生器   10.4.2 跳跃表   10.4.3 素性测试  10.5 回溯算法   10.5.1 收费公路重建问题   10.5.2 博弈  小结  练习  参考文献 第11章 摊还分析  11.1 一个无关的智力问题  11.2 二项队列  11.3 斜堆  11.4 斐波那契堆   11.4.1 切除左式堆中的节点   11.4.2 二项队列的懒惰合并   11.4.3 斐波那契堆操作   11.4.4 时间界的证明  11.5 伸展树  小结  练习  参考文献 第12章 高级数据结构及其实现  12.1 自顶向下伸展树  12.2 红黑树   12.2.1 自底向上的插入   12.2.2 自顶向下红黑树   12.2.3 自顶向下的删除  12.3 确定性跳跃表  12.4 aa树  12.5 treap树  12.6 kd树  12.7 配对堆  小结  练习  参考文献 索引 ↑折 叠

2011-07-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除