第1章 前端技术 1
1.1 初识HTML 1
1.2 走进HTML 1
1.3 CSS基础 8
1.4 CSS样式 11
1.5 CSS框模型 18
1.6 CSS定位 19
1.7 JavaScript基础 21
1.8 JavaScript HTMLDOM 26
1.9 JavaScript库 31
1.9.1 JavaScript库简介 31
1.9.2 jQuery 31
第2章 MySQL 41
2.1 MySQL的安装和配置 41
2.2 MySQL基本操作 43
2.2.1 数据库相关操作 43
2.2.2 表的操作 44
2.2.3 数据的操作 48
2.2.4 数据记录查询 49
2.3 数据的备份与恢复 52
2.4 访问数据库 53
第3章 Java程序开发 56
3.1 Java简介 56
3.2 Java多线程编程 57
3.2.1 一个线程的生命周期 58
3.2.2 创建一个线程 58
3.2.3 线程安全与共享资源 60
3.2.4 死锁 61
3.2.5 线程的调度 62
3.2.6 Java同步块 72
3.2.7 并发容器 75
3.2.8 线程池的使用 80
3.3 Java网络编程 84
3.3.1 Java网络编程基础 84
3.3.2 非阻塞式的Socket编程 95
3.3.3 安全网络通信 100
第4章 Django应用框架 106
4.1 Django概述 106
4.2 安装 107
4.3 视图(View)和统一资源定位符(URL) 113
4.3.1 创建视图 113
4.3.2 创建URLconf 114
4 3.3 正则表达式 116
4.3.4 Django请求处理方式 118
4.3.5 关于Request与Response 119
4.3.6 动态视图内容 122
4.3.7 动态URL 123
4.4 模板(Template) 126
4.4.1 模板系统基本知识 127
4.4.2 如何使用模板系统 128
4.4.3 模板渲染 129
4.4.4 字典和Context替换 130
4.4.5 深度变量的查找 131
4.4.6 Context对象的操作 134
4.4.7 理念与局限 141
4.4.8 在视图中使用模板 142
4.4.9 模板加载 143
4.4.10 locals()技巧 146
4.4.11 include模板标签 147
4.4.12 模板继承 148
4.5 模型(Model) 151
4.5.1 在视图中进行数据库查询的基本方法 152
4.5.2 MTV开发模式 152
4.5.3 创建APP应用程序 153
4.5.4 在Python代码中定义模型 154
4.5.5 编写模型 155
4.5.6 模型安装 156
4.5.7 基本数据访问 159
4.5.8 Unicode对象 161
4.5.9 数据过滤 163
4.5.10 获取单个对象 164
4.5.11 数据排序 165
4.5.12 连锁查询 166
4.5.13 更新多个对象 167
4.5.14 删除对象 168
4.6 Django实例——搭建一个博客 169
4.7 Session 176
4.8 常用服务器命令 180
第5章 Nginx模块开发 182
5.1 Nginx简介 182
5.2 Nginx配置 182
5.2.1 安装Nginx 182
5.2.2 Nginx命令行控制参数 187
5.2.3 Nginx配置的基本方法 188
5.2.4 rewrite重定向 192
5.3 简单的HTTP子请求模块开发 195
5.4 简单的HTTP过滤模块开发 199
5.5 SSL模块 206
第6章 uWSGI服务器 210
6.1 uWSGI概述 210
6.2 uWSGI安装及运行命令 211
6.3 uWSGI选项配置 213
第7章 嵌入式开发 216
7.1 系统概述 216
7.1.1 嵌入式系统的基本概念 216
7.1.2 嵌入式系统的特点 217
7.1.3 嵌入式系统的发展趋势 218
7.2 嵌入式Linux基础 218
7.2.1 Linux文件系统 218
7.2.2 Linux目录结构 221
7.2.3 文件类型及文件属性 223
7.2.4 嵌入式Linux开发环境构建 225
7.2.5 Minicom的安装 229
7.3 嵌入式C语言开发流程 231
7.3.1 Vim编辑器 232
7.3.2 GCC编译器 234
7.3.3 GDB调试器 237
7.3.4 GDBServer远程调试 241
7.3.5 Make工程管理器 242
7.4 文件I/O 251
7.4.1 文件I/O编程基础 251
7.4.2 基本I/O操作 253
7.4.3 标准I/O操作 256
7.4.4 Linux串口编程 259
7.4.5 串口使用详解 264
7.4.6 串口编程实例 265
7.4.7 Modbus通信协议 267
7.4.8 ZigBee通信协议 269
7.5 Linux进程 273
7.5.1 进程概述 273
7.5.2 Linux进程编程 274
7.5.3 Zombie进程 282
7.5.4 进程间的通信和同步 283
7.5.5 管道通信 284
7.5.6 共享内存通信 292
7.5.7 其他通信方式 295
7.6 线程概述 295
7.6.1 线程的分类和特性 296
7.6.2 线程的实现 296
7.6.3 线程属性 297
7.6.4 线程之间的同步与互斥 299
第8章 网络编程 305
8.1 套接字编程简介 305
8.2 套接字选项 307
8.2.1 SOL_SOCKET协议族选项 308
8.2.2 IPPROTO_IP选项 312
8.3 基本TCP套接字编程 314
8.3.1 socket概述 314
8.3.2 connect()函数 315
8.3.3 bind()函数 315
8.3.4 listen()函数 316
8.3.5 accept()函数 317
8.3.6 fork()与exec()函数 318
8.3.7 close()函数 319
8.3.8 TCP编程实例 319
8.4 基本UDP套接字编程 322
8.4.1 recvfrom()和sendto()函数 323
8.4.2 UDP的connect()函数 324
8.4.3 UDP程序实例 325
第9章 用户认证系统实例 328
9.1 静态资源部署 328
9.1.1 Nginx配置 328
9.1.2 静态资源 330
9.2 Django应用处理程序设计 332
9.2.1 项目创建及配置 332
9.2.2 数据库设计 334
9.2.3 应用处理程序设计 335
附录A CSS源码 341
附录B HTML文件 386
参考文献 394