新書推薦:
《
金托邦:江湖中的沉重正义
》
售價:HK$
60.5
《
易经今解:释疑·解惑·见微
》
售價:HK$
88.5
《
东欧史(全二册)-“中间地带”的困境
》
售價:HK$
221.8
《
虚拟资本:金融怎样挪用我们的未来
》
售價:HK$
77.3
《
刻意练习不生气
》
售價:HK$
39.2
《
大宋理财:青苗法与王安石的金融帝国(全彩插图本)
》
售價:HK$
109.8
《
安全感是内心长出的盔甲
》
售價:HK$
67.0
《
快人一步:系统性能提高之道
》
售價:HK$
110.9
|
編輯推薦: |
软件开发视频大讲堂丛书系清华社视频大讲堂重点大系之一。该大系包括多个子系列,每个子系列的图书在其同品种的图书中销售名列前茅,其中:
4个品种荣获全行业优秀畅销品种
1个品种荣获2012年清华大学出版社专业畅销书一等奖
绝大多数品种在全国计算机零售图书排行榜同品种排行中名列前茅
截至目前该大系累计销售超过130万册
该大系已成为近年来清华社计算机专业基础类零售图书畅销品牌之一
软件开发视频大讲堂系列作为清华社视频大讲堂大系的子系列之一,继承和创新了清华社视频大讲堂大系的编写模式、写作风格和优良品质。本书突出了以下内容:
总长总时长17小时同步视频演示讲解,可反复观摩,让学习更为快捷、高效
15个典型实例,通过实例学习更深入,更有趣,更有动力
369道面试真题,了解工作实例及面试问题,更好适应企业需求
596项能力测试题目,检测是否过关,了解学习之不足。
根据全国计算机零售图书排行榜,本书长期在java web类全国零售排行前列
软件开发视频大讲堂系列作为清华社视频大讲堂大系的子系列之一,执着于专业,精细于品质。
集基础知识、核心技能、高级应用、项目案例于一体
|
內容簡介: |
《Java Web从入门到精通(第2版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了进行Java Web应用程序开发应该掌握的各方面技术。《Java Web从入门到精通(第2版)》共分21章,包括Java Web应用开发概述、HTML与CSS网页开发基础、JavaScript脚本语言、搭建开发环境、JSP基本语法、JSP内置对象、JavaBean技术、Servlet技术、过滤器和监听器、Java Web的数据库操作、EL(表达式语言)、JSTL标签、Ajax技术、Struts2基础、Struts2高级技术、Hibernate技术、Hibernate高级应用、Spring核心之IoC、Spring核心之AOP、JSP操作XML、清爽夏日九宫格日记网等。所有知识都结合具体实例进行介绍,涉及的程序代码给出了详细的注释,可以使读者轻松领会Java Web应用程序开发的精髓,快速提高开发技能。 《Java Web从入门到精通(第2版)》可作为软件开发入门者的自学用书,也可作为高等院校相关专业的教学参考书,还可供开发人员查阅、参考。
|
關於作者: |
软件开发视频大讲堂丛书系清华社视频大讲堂重点大系之一。该大系包括多个子系列,每个子系列的图书在其同品种的图书中销售名列前茅,其中:4个品种荣获全行业优秀畅销品种1个品种荣获2012年清华大学出版社专业畅销书一等奖绝大多数品种在全国计算机零售图书排行榜同品种排行中名列前茅截至目前该大系累计销售超过130万册该大系已成为近年来清华社计算机专业基础类零售图书畅销品牌之一
软件开发视频大讲堂系列作为清华社视频大讲堂大系的子系列之一,继承和创新了清华社视频大讲堂大系的编写模式、写作风格和优良品质。本书突出了以下内容:总长总时长17小时同步视频演示讲解,可反复观摩,让学习更为快捷、高效15个典型实例,通过实例学习更深入,更有趣,更有动力369道面试真题,了解工作实例及面试问题,更好适应企业需求596项能力测试题目,检测是否过关,了解学习之不足。根据全国计算机零售图书排行榜,本书长期在java web类全国零售排行前列
软件开发视频大讲堂系列作为清华社视频大讲堂大系的子系列之一,执着于专业,精细于品质。集基础知识、核心技能、高级应用、项目案例于一体好学、好用、高效
|
目錄:
|
目 录:
第1篇 Web开发基础
第1章 Java Web应用开发概述
视频讲解:21分钟
1.1 程序开发体系结构
1.1.1 CS体系结构介绍
1.1.2 BS体系结构介绍
1.1.3 两种体系结构的比较
1.2 Web应用程序的工作原理
1.3 Web应用技术
1.3.1 客户端应用的技术
1.3.2 服务器端应用的技术
1.4 Java Web成功案例
1.5 常用网上资源
1.5.1 常用资源下载网
1.5.2 技术社区
1.6 小结
第2章 HTML与CSS网页开发基础
视频讲解:68分钟
2.1 HTML标记语言
2.1.1 创建第一个HTML文件
2.1.2 HTML文档结构
2.1.3 HTML常用标记
2.1.4 表格标记
2.1.5 HTML表单标记
2.1.6 超链接与图片标记
2.2 HTML 5新增内容
2.2.1 新增的元素
2.2.2 新增的input元素类型
2.3 CSS样式表
2.3.1 CSS规则
2.3.2 CSS选择器
2.3.3 在页面中包含CSS
2.4 CSS 3的新特征
2.4.1 模块与模块化结构
2.4.2 一个简单的CSS 3实例
2.5 小结
2.6 实践与练习
第3章 JavaScript脚本语言
视频讲解:90分钟
3.1 JavaScript概述
3.1.1 什么是JavaScript
3.1.2 JavaScript的主要特点
3.2 JavaScript语言基础
3.2.1 JavaScript的语法
3.2.2 JavaScript中的关键字
3.2.3 JavaScript的数据类型
3.2.4 变量的定义及使用
3.2.5 运算符的应用
3.3 流程控制语句
3.3.1 if条件判断语句
3.3.2 switch多分支语句
3.3.3 for循环语句
3.3.4 while循环语句
3.3.5 dowhile循环语句
3.3.6 break与continue语句
3.4 函数
3.4.1 函数的定义
3.4.2 函数的调用
3.5 事件处理
3.5.1 什么是事件处理程序
3.5.2 JavaScript常用事件
3.5.3 事件处理程序的调用
3.6 常用对象
3.6.1 Window对象
3.6.2 String对象
3.6.3 Date对象
3.7 DOM技术
3.7.1 DOM的分层结构
3.7.2 遍历文档
3.7.3 获取文档中的指定元素
3.7.4 操作文档
3.8 小结
3.9 实践与练习
第4章 搭建开发环境
视频讲解:19分钟
4.1 Java Web应用的开发环境概述
4.2 Tomcat的安装与配置
4.2.1 下载Tomcat
4.2.2 Tomcat的目录结构
4.2.3 修改Tomcat的默认端口
4.2.4 部署Web应用
4.3 Eclipse的下载与使用
4.3.1 Eclipse的下载与安装
4.3.2 启动Eclipse
4.3.3 Eclipse工作台
4.3.4 使用Eclipse开发Web应用
4.4 小结
4.5 实践与练习
第2篇 JSP语言基础
第5章 JSP基本语法
视频讲解:50分钟
5.1 JSP页面概述
5.2 指令标识
5.2.1 page指令
5.2.2 include指令
5.2.3 taglib指令
5.3 脚本标识
5.3.1 JSP表达式
5.3.2 声明标识
5.3.3 代码片段
5.4 JSP注释
5.4.1 HTML中的注释
5.4.2 带有JSP表达式的注释
5.4.3 隐藏注释
5.4.4 动态注释
5.5 动作标识
5.5.1 包含文件标识
5.5.2 请求转发标识
5.5.3 传递参数标识
5.6 小结
5.7 实践与练习
第6章 JSP内置对象
视频讲解:69分钟
6.1 JSP内置对象概述
6.2 request对象
6.2.1 访问请求参数
6.2.2 在作用域中管理属性
6.2.3 获取cookie
6.2.4 解决中文乱码
6.2.5 获取客户端信息
6.2.6 显示国际化信息
6.3 response对象
6.3.1 重定向网页
6.3.2 处理HTTP文件头
6.3.3 设置输出缓冲
6.4 session对象
6.4.1 创建及获取客户的会话
6.4.2 从会话中移动指定的绑定对象
6.4.3 销毁session
6.4.4 会话超时的管理
6.4.5 session对象的应用
6.5 application对象
6.5.1 访问应用程序初始化参数
6.5.2 管理应用程序环境属性
6.6 out对象
6.6.1 向客户端输出数据
6.6.2 管理响应缓冲
6.7 其他内置对象
6.7.1 获取会话范围的pageContext对象
6.7.2 读取web.xml配置信息的config对象
6.7.3 应答或请求的page对象
6.7.4 获取异常信息的exception对象
6.8 小结
6.9 实践与练习
第7章 JavaBean技术
视频讲解:29分钟
7.1 JavaBean介绍
7.1.1 JavaBean概述
7.1.2 JavaBean种类
7.2 JavaBean的应用
7.2.1 获取JavaBean属性信息
7.2.2 对JavaBean属性赋值
7.2.3 在JSP页面中应用JavaBean
7.3 在JSP中应用JavaBean
7.3.1 解决中文乱码的JavaBean
7.3.2 在JSP页面中用来显示时间的JavaBean
7.3.3 数组转换成字符串
7.4 小结
7.5 实践与练习
第8章 Servlet技术
视频讲解:22分钟
8.1 Servlet基础
8.1.1 Servlet结构体系
8.1.2 Servlet技术特点
8.1.3 Servlet与JSP的区别
8.1.4 Servlet代码结构
8.2 Servlet API编程常用接口和类
8.2.1 Servlet接口
8.2.2 ServletConfig接口
8.2.3 HttpServletRequest接口
8.2.4 HttpServletResponse接口
8.2.5 GenericServlet类
8.2.6 HttpServlet类
8.3 Servlet开发
8.3.1 Servlet创建
8.3.2 Servlet配置
8.4 小结
8.5 实践与练习
第9章 过虑器和监听器
视频讲解:44分钟
9.1 Servlet过滤器
9.1.1 什么是过滤器
9.1.2 过滤器核心对象
9.1.3 过滤器创建与配置
9.1.4 字符编码过滤器
9.2 Servlet监听器
9.2.1 Servlet监听器简介
9.2.2 Servlet监听器的原理
9.2.3 Servlet上下文监听
9.2.4 HTTP会话监听
9.2.5 Servlet请求监听
9.2.6 Servlet监听器统计在线人数
9.3 Servlet 3.0新特性
9.3.1 新增注释
9.3.2 对文件上传的支持
9.3.3 异步处理
9.4 小结
9.5 实践与练习
第3篇 JSP高级内容
第10章 Java Web的数据库操作
视频讲解:48分钟
10.1 JDBC技术
10.1.1 JDBC简介
10.1.2 JDBC连接数据库的过程
10.2 JDBC API
10.2.1 Connection接口
10.2.2 DriverManager类
10.2.3 Statement接口
10.2.4 PreparedStatement接口
10.2.5 ResultSet接口
10.3 JDBC操作数据库
10.3.1 添加数据
10.3.2 查询数据
10.3.3 修改数据
10.3.4 删除数据
10.3.5 批处理
10.3.6 调用存储过程
10.4 JDBC在Java Web中的应用
10.4.1 开发模式
10.4.2 分页查询
10.5 小结
10.6 实践与练习
第11章 EL(表达式语言)
视频讲解:23分钟
11.1 EL概述
11.1.1 EL的基本语法
11.1.2 EL的特点
11.2 与低版本的环境兼容禁用EL
11.2.1 使用斜杠\符号
11.2.2 使用page指令
11.2.3 在web.xml文件中配置元素
11.3 保留的关键字
11.4 EL的运算符及优先级
11.4.1 通过EL访问数据
11.4.2 在EL中进行算术运算
11.4.3 在EL中判断对象是否为空
11.4.4 在EL中进行逻辑关系运算
11.4.5 在EL中进行条件运算
11.5 EL的隐含对象
11.5.1 页面上下文对象
11.5.2 访问作用域范围的隐含对象
11.5.3 访问环境信息的隐含对象
11.6 定义和使用EL函数
11.6.1 定义和使用函数
11.6.2 定义和使用EL函数时常见的错误
11.7 小结
11.8 实践与练习
第12章 JSTL标签
视频讲解:62分钟
12.1 JSTL标签库简介
12.2 JSTL的配置
12.3 表达式标签
12.3.1 输出标签
12.3.2 变量设置标签
12.3.3 变量移除标签
12.3.4 捕获异常标签
12.4 URL相关标签
12.4.1 导入标签
12.4.2 动态生成URL标签
12.4.3 重定向标签
12.4.4 传递参数标签
12.5 流程控制标签
12.5.1 条件判断标签
12.5.2 条件选择标签
12.5.3 条件测试标签
12.5.4 其他条件标签
12.6 循环标签
12.6.1 循环标签
12.6.2 迭代标签
12.7 小结
12.8 实践与练习
第13章 Ajax技术
视频讲解:59分钟
13.1 当下谁在用Ajax
13.1.1 百度搜索提示
13.1.2 淘宝新会员免费注册
13.1.3 明日科技编程词典服务网
13.2 Ajax开发模式与传统开发模式的比较
13.3 Ajax使用的技术
13.4 使用XMLHttpRequest对象
13.4.1 初始化XMLHttpRequest对象
13.4.2 XMLHttpRequest对象的常用方法
13.4.3 XMLHttpRequest对象的常用属性
13.5 与服务器通信发送请求与处理响应
13.5.1 发送请求
13.5.2 处理服务器响应
13.5.3 一个完整的实例检测用户名是否唯一
13.6 解决中文乱码问题
13.6.1 发送请求时出现中文乱码
13.6.2 获取服务器的响应结果时出现中文乱码
13.7 Ajax重构
13.7.1 Ajax重构的步骤
13.7.2 应用Ajax重构实现实时显示公告信息
13.8 Ajax常用实例
13.8.1 级联下拉列表
13.8.2 显示进度条
13.9 小结
13.10 实践与练习
第4篇 流行框架与XML技术
第14章 Struts2基础
视频讲解:60分钟
14.1 Struts2概述
14.1.1 理解MVC原理
14.1.2 Struts2框架的产生
14.1.3 Struts2的结构体系
14.2 Struts2入门
14.2.1 Struts2的获取与放置
14.2.2 第一个Struts2程序
14.3 Action对象
14.3.1 认识Action对象
14.3.2 请求参数的注入原理
14.3.3 Action的基本流程
14.3.4 什么是动态Action
14.3.5 动态Action的应用
14.4 Struts2的配置文件
14.4.1 Struts2的配置文件类型
14.4.2 Struts2的包配置
14.4.3 名称空间配置
14.4.4 Action相关配置
14.4.5 通配符实现简化配置
14.4.6 返回结果的配置
14.5 Struts2的开发模式
14.5.1 实现与Servlet API的交互
14.5.2 域模型DomainModel
14.5.3 驱动模型ModelDriven
14.6 典型应用
14.6.1 Struts2处理表单数据
14.6.2 使用Map类型的request、session和application
14.7 小结
14.8 实践与练习
第15章 Struts2高级技术
视频讲解:49分钟
15.1 OGNL表达式语言
15.1.1 认识OGNL
15.1.2 Struts2框架中的OGNL
15.1.3 操作普通的属性与方法
15.1.4 访问静态方法与属性
15.1.5 访问数组
15.1.6 访问List、Set、Map集合
15.1.7 投影与选择
15.2 Struts2的标签库
15.2.1 数据标签的应用
15.2.2 控制标签的应用
15.2.3 表单标签的应用
15.3 拦截器的使用
15.3.1 了解拦截器
15.3.2 拦截器API
15.3.3 使用拦截器
15.4 数据验证机制
15.4.1 手动验证的实现
15.4.2 验证文件的命名规则
15.4.3 验证文件的编写风格
15.5 典型应用
15.5.1 Struts2标签下的用户注册
15.5.2 使用验证框架对数据校验
15.6 小结
15.7 实践与练习
第16章 Hibernate技术
视频讲解:42分钟
16.1 初识Hibernate
16.1.1 理解ORM原理
16.1.2 Hibernate简介
16.2 Hibernate入门
16.2.1 获取Hibernate
16.2.2 Hibernate配置文件
16.2.3 了解并编写持久化类
16.2.4 Hibernate映射
16.2.5 Hibernate主键策略
16.3 Hibernate数据持久化
16.3.1 Hibernate实例状态
16.3.2 Hibernate初始化类
16.3.3 保存数据
16.3.4 查询数据
16.3.5 删除数据
16.3.6 修改数据
16.3.7 关于延迟加载
16.4 使用Hibernate的缓存
16.4.1 一级缓存的使用
16.4.2 配置并使用二级缓存
16.5 小结
16.6 实践与练习
第17章 Hibernate高级应用
视频讲解:72分钟
17.1 实体关联关系映射
17.1.1 数据模型与领域模型
17.1.2 理解并配置多对一单向关联
17.1.3 理解并配置多对一双向关联
17.1.4 理解并配置一对一主键关联
17.1.5 理解并配置一对一外键关联
17.1.6 理解并配置多对多关联关系
17.1.7 了解级联操作
17.2 实体继承关系映射
17.2.1 类继承树映射成一张表
17.2.2 每个子类映射成一张表
17.2.3 每个具体类映射成一张表
17.3 Hibernate查询语言
17.3.1 了解HQL语言
17.3.2 实体对象查询
17.3.3 条件查询
17.3.4 HQL参数绑定机制
17.3.5 排序查询
17.3.6 聚合函数的应用
17.3.7 分组方法
17.3.8 联合查询
17.3.9 子查询
17.4 小结
17.5 实践与练习
第18章 Spring核心之IoC
视频讲解:38分钟
18.1 Spring概述
18.1.1 初识Spring
18.1.2 Spring的获取
18.1.3 简单配置Spring
18.1.4 使用BeanFactory管理bean
18.1.5 AplicationContext的应用
18.2 依赖注入
18.2.1 什么是控制反转与依赖注入
18.2.2 bean的配置
18.2.3 Setter注入
18.2.4 构造器注入
18.2.5 引用其他的bean
18.2.6 匿名内部JavaBean的创建
18.3 自动装配
18.3.1 按bean名称装配
18.3.2 按bean类型装配
18.3.3 自动装配的其他方式
18.4 bean的作用域
18.4.1 了解Spring中的bean
18.4.2 singleton的作用域
18.4.3 prototype的作用域
18.5 对bean的特殊处理
18.5.1 初始化与销毁
18.5.2 自定义属性编辑器
18.6 小结
18.7 实践与练习
第19章 Spring核心之AOP
视频讲解:24分钟
19.1 AOP概述
19.1.1 了解AOP
19.1.2 AOP的简单实现
19.2 Spring的切入点
19.2.1 静态切入点与动态切入点
19.2.2 深入静态切入点
19.2.3 深入切入点底层
19.2.4 Spring中其他切入点
19.3 Aspect对AOP的支持
19.3.1 了解Aspect
19.3.2 Spring中的Aspect
19.3.3 DefaultPointcutAdvisor切入点配置器
19.3.4 NameMatchMethodPointcutAdvisor切入点配置器
19.4 Spring持久化
19.4.1 DAO模式介绍
19.4.2 Spring的DAO理念
19.4.3 事务应用的管理
19.4.4 应用JdbcTemplate操作数据库
19.4.5 与Hibernate整合
19.5 小结
19.6 实践与练习
第20章 JSP操作XML
视频讲解:50分钟
20.1 XML简介
20.1.1 XML文档结构
20.1.2 XML语法要求
20.1.3 为XML文档中的元素定义属性
20.1.4 XML的注释
20.1.5 处理字符数据
20.2 dom4j概述
20.2.1 dom4j简介
20.2.2 dom4j的下载与配置
20.3 创建XML文档
20.3.1 创建XML文档对象
20.3.2 创建根节点
20.3.3 添加注释
20.3.4 添加属性
20.3.5 创建子节点
20.3.6 设置节点的内容
20.3.7 设置编码
20.3.8 设置输出格式
20.3.9 输出XML文档
20.4 解析XML文档
20.4.1 构建XML文档对象
20.4.2 获取根节点
20.4.3 获取子节点
20.5 修改XML文档
20.5.1 修改节点
20.5.2 删除节点
20.6 典型应用
20.6.1 保存公告信息到XML文件
20.6.2 对保存到XML文件中的公告信息进行管理
20.7 小结
20.8 实践与练习
第5篇 项 目 实 战
第21章 清爽夏日九宫格日记网
视频讲解:95分钟
21.1 项目设计思路
21.1.1 功能阐述
21.1.2 网站预览
21.1.3 功能结构
21.1.4 文件夹组织结构
21.2 数据库和数据表设计
21.2.1 数据库设计
21.2.2 数据表设计
21.3 公共模块设计
21.3.1 编写数据库连接及操作的类
21.3.2 编写保存分页代码的JavaBean
21.3.3 配置解决中文乱码的过滤器
21.3.4 编写实体类
21.4 主界面设计
21.4.1 主界面概述
21.4.2 让采用DIV CSS布局的页面内容居中
21.4.3 主界面的实现过程
21.5 用户模块设计
21.5.1 用户模块概述
21.5.2 实现Ajax重构
21.5.3 用户注册的实现过程
21.5.4 用户登录的实现过程
21.5.5 退出登录的实现过程
21.5.6 找回密码的实现过程
21.6 显示九宫格日记列表模块设计
21.6.1 显示九宫格日记列表概述
21.6.2 展开和收缩图片
21.6.3 查看日记原图
21.6.4 对日记图片进行左转和右转
21.6.5 显示全部九宫格日记的实现过程
21.6.6 我的日记的实现过程
21.6.7 删除我的日记的实现过程
21.7 写九宫格日记模块设计
21.7.1 写九宫格日记模块概述
21.7.2 应用jQuery让PNG图片在IE 6下背景透明(选学)
21.7.3 填写日记信息的实现过程
21.7.4 预览生成的日记图片的实现过程
21.7.5 保存日记图片的实现过程
21.8 项目发布
21.9 小结
|
內容試閱:
|
丛书说明:软件开发视频大讲堂丛书(第1版)于2008年8月出版以来,因其编写细腻,易学实用,配备全程视频等,在软件开发类图书市场上产生了很大反响,绝大部分品种在全国软件开发零售图书排行榜中名列前茅,2009年多个品种被评为全国优秀畅销书。
软件开发视频大讲堂丛书(第2版)于2010年8月出版,出版后,绝大部分品种在全国软件开发类零售图书排行榜中依然名列前茅。丛书中多个品种被百余所高校计算机相关专业、软件学院选为教学参考书,在众多的软件开发类图书中成为最耀眼的品牌之一。丛书累计销售40多万册。
软件开发视频大讲堂丛书(第3版)于2012年8月出版,根据读者需要,增删了品种,重新录制了视频,提供了从入门学习实例应用模块开发项目开发能力测试面试等各个阶段的海量开发资源库。因丛书编写结构合理、实例选择经典实用,丛书迄今累计销售90多万册。
软件开发视频大讲堂丛书(第4版)在继承前3版所有优点的基础上,修正了前3版图书中发现的疏漏之处,并结合目前市场需要,进一步对丛书品牌进行了完善,对相关内容进行了更新优化,使之更适合读者学习。为了方便教学,还提供了教学课件PPT。
Java是Sun公司推出的能够跨越多平台的、可移植性最高的一种面向对象的编程语言,也是目前最先进、特征最丰富、功能最强大的计算机语言之一。利用Java可以编写桌面应用程序、Web应用程序、分布式系统应用程序、嵌入式系统应用程序等,从而使其成为应用范围最广泛的开发语言,特别是在Web程序开发方面。
目前,Java Web开发领域的书籍有很多,但是能真正地把技术讲解透彻的图书并不是很多,尤其是结合项目的书籍就更少了。本书从初学者的角度,循序渐进地讲解使用Java语言和开源框架进行Web程序开发应该掌握的各项技术,包括HTML、JSP基础、流行框架等内容。
本书内容 本书提供了从入门到编程高手所必需的各类知识,共分5篇,大体结构如下图所示。
第1篇:Web开发基础。本篇通过讲解JavaWeb应用开发概述、HTML与CSS网页开发基础、JavaScript脚本语言和搭建开发环境等内容,并结合大量的图示、实例、视频等,使读者快速掌握Web开发基础,为以后编程奠定坚实的基础。
第2篇:JSP语言基础。本篇通过讲解JSP基本语法、JSP内置对象、JavaBean技术、Servlet技术、过滤器和监听器等内容,并结合大量的图示、实例、视频等,使读者快速掌握JSP语言基础。学习完本篇,读者将对JSP程序开发有更深的了解。
第3篇:JSP高级内容。本篇通过讲解JavaWeb的数据库操作、EL(表达式语言)、JSTL标签和Ajax技术等内容,并结合大量的图示、实例、视频等,使读者快速掌握JSP高级内容。学习完本篇,读者能够掌握更深的JSP技术。
第4篇:流行框架与XML技术。本篇通过讲解Struts2基础、Struts2高级技术、Hibernate技术、Hibernate高级应用、Spring核心之IoC、Spring核心之AOP、JSP操作XML等内容,并结合大量的图示、实例、视频等,使读者快速掌握Java Web常用框架与XML技术。学习完本篇,读者可轻松完成Java Web程序开发。
第5篇:项目实战。本篇通过开发一个完整的项目清爽夏日九宫格日记网,引领读者运用软件工程的设计思想,进行Web项目的实践开发。书中按照项目设计思路数据库和数据表设计公共模块设计主界面设计用户模块设计显示九宫格日记列表模块设计写九宫格日记模块设计项目发布的过程进行介绍,带领读者一步步亲身体验项目开发的全过程。
本书特点 由浅入深,循序渐进。本书以初、中级程序员为对象,先从Web开发基础讲起,再讲解JSP语言基础、JSP高级内容,然后介绍流行框架与XML技术,最后练习开发一个完整的项目。讲解过程中步骤详尽,版式新颖,在操作的内容图片上以uvw的编号 内容的方式进行标注,让读者在阅读时一目了然,从而快速掌握书中内容。
语音视频,讲解详尽。书中每一章节均提供声图并茂的教学视频,读者可以根据书中提供的视频位置在光盘中找到相应文件。这些视频能够引导初学者快速地入门,感受编程的快乐和成就感,增强进一步学习的信心,从而快速成为编程高手。
实例典型,轻松易学。结合实例进行学习是最好的学习方式,本书通过一个知识点、一个实例、一个结果、一段评析、一个综合应用的模式,透彻详尽地讲述了实际开发中所需的各类知识。另外,为了便于读者阅读程序代码,快速学习编程技能,书中几乎每行代码都提供了注释。
精彩栏目,贴心提醒。本书根据需要在各章使用了很多注意说明技巧等小栏目,让读者在学习过程中可以更轻松地理解相关知识点及概念,更快地掌握个别技术的应用技巧。
应用实践,随时练习。书中几乎每章都提供了实践与练习,读者能够通过对问题的解答重新回顾、熟悉所学的知识,为进一步学习做好充分的准备。
读者对象 初学编程的入门者 编程爱好者
大中专院校的老师和学生 相关培训机构的老师和学员
做毕业设计的学生 初、中级程序开发人员
程序测试及维护人员 参加实习的菜鸟程序员
读者服务 为了方便解决学习过程中遇到的各类疑难问题,读者朋友可加我们的QQ(可容纳10万人),也可以登录网站留言,我们将竭诚为您服务。
致读者 本书由明日科技有限公司的Java程序开发团队编写,主要编写人员有王小科、王国辉、申小琦、本书由明日科技责任有限公司的Java程序开发小组编写。明日科技是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材既注重选取软件开发中的必需、常用内容,又注重内容的易学、方便以及相关知识的拓展,深受读者喜爱。其编写的教材多次荣获全行业优秀畅销品种中国大学出版社优秀畅销书等奖项,多个品种长期位居同类图书销售排行榜的前列。
祝读书快乐!
编 者
数据库的应用在日常的生活和工作中可以说是无处不在,无论是一个小型的企业办公自动化系统,还是像中国移动那样的大型运营系统,似乎都离不开数据库。对于大多数应用程序来说,不管它们是Windows桌面应用程序,还是Web应用程序,存储和检索数据都是其核心功能,所以针对数据库的开发已经成为软件开发的一种必备技能。如果说过去是学好数理化,走遍天下都不怕,那么,对于今天的软件开发者而言就是学好数据库,走到哪儿都不怵。本章将向读者介绍如何在Java Web中进行数据库应用开发。
通过阅读本章,您可以:
:了解JDBC的结构体系
:掌握JDBC连接数据库的过程
:熟悉JDBC的常用API
:掌握通过JDBC向数据库中添加数据
:掌握通过JDBC查询数据
:掌握通过JDBC修改数据库中的数据
:掌握通过JDBC删除数据库中的数据
:掌握进行批处理的方法
:掌握JDBC在Java Web中的应用
10.1 JDBC技术 视频讲解:光盘\TM\lx\10\JDBC技术.exe
JDBC(Java Data Base Connectivity)是Java程序与数据库系统通信的标准API,它定义在JDK的API中,通过JDBC技术,Java程序可以非常方便地与各种数据库交互,JDBC在Java程序与数据库系统之间架起了一座桥梁。
10.1.1 JDBC简介 JDBC是Java程序操作数据库的API,也是Java程序与数据库交互的一门技术。JDBC是Java操作数据库的规范,由一组用Java语言编写的类和接口组成,它对数据库的操作提供了基本方法,但对于数据库的细节操作由数据库厂商进行实现。使用JDBC操作数据库,需要数据库厂商提供数据库的驱动程序。Java程序与数据库交互的示意图如图10.1所示。
通过图10.1可以看出,JDBC在Java程序与数据库之间起到了一个桥梁的作用,有了JDBC就可以方便地与各种数据库进行交互,不必为某一个特定的数据库制定专门的访问程序。例如,访问MySQL数据库可以使用JDBC进行访问,访问SQL Server同样使用JDBC。因此,JDBC对Java程序员而言,是一套标准的操作数据库的API;而对数据库厂商而言,又是一套标准的模型接口。
10.1.2 JDBC连接数据库的过程 在了解了JDBC与数据库后,本节介绍使用JDBC操作数据的开发流程,其关键步骤如下。
注册数据库驱动
连接数据库前,需要将数据库厂商提供的数据库驱动类注册到JDBC的驱动管理器中。通常情况下,是通过将数据库驱动类加载到JVM来实现的。
【例10.1】 加载数据库驱动,注册到驱动管理器。代码如下:
Class.forName"com.mysql.jdbc.Driver";
构建数据库连接URL
要建立数据库连接,就要构建数据库连接的URL,这个URL由数据库厂商制定,不同的数据库,它的URL也有所区别,但都符合一个基本的格式,即JDBC协议 IP地址或域名 端口 数据库名称。如MySQL的数据库连接URL的字符串为jdbc:mysql:localhost:3306test。
获取Connection对象
在注册了数据库驱动及构建数据库URL后,就可以通过驱动管理器获取数据库的连接Connection。Connection对象是JDBC封装的数据库连接对象,只有创建此对象后,才可以对数据进行相关操作,它的获取方法如下:
DriverManager.getConnectionurl,username,password;
Connection对象的获取需要用到DriverManager对象,DriverManager的getConnection方法通过数据库连接URL、数据库用户名及数据库密码创建Connection对象。
【例10.2】 通过JDBC连接MySQL数据库。(实例位置:光盘\TM\sl\10\1)
(1)创建名称为10.1的动态Web项目,将MySQL数据库的驱动包添加至项目的构建路径,构建开发环境。
(2)创建程序中的主页index.jsp,在该页面中加载数据库驱动并创建数据库连接。关键代码如下:
try {
Class.forName"com.mysql.jdbc.Driver";加载数据库驱动,注册到驱动管理器
String url = "jdbc:mysql:localhost:3306test";数据库连接字符串
String username = "root";数据库用户名
String password = "111";数据库密码
Connection conn = DriverManager.getConnectionurl,username,password;创建Connection连接
ifconn != null{判断数据库连接是否为空
out.println"数据库连接成功!";输出连接信息
conn.close;关闭数据库连接
}else{
out.println"数据库连接失败!";输出连接信息
}
} catch ClassNotFoundException e {
e.printStackTrace;
} catch SQLException e {
e.printStackTrace;
}
%
在index.jsp页面中,首先通过Class的forName方法加载数据库驱动,然后使用DriverManager对象的getConnection方法获取数据库连接Connection对象,最后将获取结果输出到页面中。实例运行结果如图10.2所示。
10.2 JDBC API 视频讲解:光盘\TM\lx\10\JDBC API.exe
JDBC是Java程序操作数据库的标准,它由一组用Java语言编写的类和接口组成,Java通过JDBC可以对多种关系数据库进行统一访问。所以,学习JDBC需要掌握JDBC中的类和接口,也就是JDBCAPI。
10.2.1 Connection接口 Connection接口位于java.sql包中,是与特定数据库的连接会话,只有获得特定数据库的连接对象,才能访问数据库,操作数据库中的数据表、视图和存储过程等。Connection接口的方法声明及说明如表10.1所示。
表10.1 Connection接口的方法声明及说明
方 法 声 明
说 明
void closethrows SQLException
立即释放Connection对象的数据库连接占用的JDBC资源,在操作数据库后,应立即调用此方法
void commit throws SQLException
提交事务,并释放Connection对象当前持有的所有数据库锁。当事务被设置为手动提交模式时,需要调用该方法提交事务
Statement createStatementthrows SQLException
创建一个Statement对象来将SQL语句发送到数据库,该方法返回Statement对象
续表
方 法 声 明
说 明
boolean getAutoCommitthrows SQLException
用于判断Connection对象是否被设置为自动提交模式,该方法返回布尔值
DatabaseMetaData getMetaDatathrows SQLException
获取Connection对象所连接的数据库的元数据DatabaseMetaData对象,元数据包括关于数据库的表、受支持的SQL 语法、存储过程、此连接功能等信息
int getTransactionIsolationthrows SQLException
获取Connection对象的当前事务隔离级别
boolean isClosedthrows SQLException
判断Connection对象是否与数据库断开连接,该方法返回布尔值。需要注意的是,如果Connection对象与数据库断开连接,则不能再通过Connection对象操作数据库
boolean isReadOnlythrows SQLException
判断Connection对象是否为只读模式,该方法返回布尔值
PreparedStatement prepareStatementString sqlthrows SQLException
将参数化的SQL语句预编译并存储在PreparedStatement对象中,并返回所创建的这个PreparedStatement对象
void releaseSavepointSavepoint savepoint throwsSQLException
从当前事务中移除指定的Savepoint和后续Savepoint对象
void rollbackthrows SQLException
回滚事务,并释放Connection对象当前持有的所有数据库锁。注意,该方法需要应用于Connection对象的手动提交模式中
void rollbackSavepoint savepointthrows SQLException
回滚事务,针对Savepoint对象之后的更改
void setAutoCommitboolean autoCommitthrowsSQLException
设置Connection对象的提交模式,如果参数autoCommit的值设置为true,Connection对象则为自动提交模式;如果参数autoCommit的值设置为false,Connection对象则为手动提交模式
void setReadOnlyboolean readOnly throws SQLException
将Connection对象的连接模式设置为只读,该方法用于对数据库进行优化
Savepoint setSavepointthrows SQLException
在当前事务中创建一个未命名的保留点,并返回这个保留点对象
Savepoint setSavepointString name throwsSQLException
在当前事务中创建一个指定名称的保留点,并返回这个保留点对象
void setTransactionIsolationint levelthrows SQLException
设置Connection对象的事务隔离级别
10.2.2 DriverManager类 使用JDBC操作数据库,需要使用数据库厂商提供的驱动程序,通过驱动程序可以与数据库进行交互。DriverManager类主要作用于用户及驱动程序之间,它是JDBC中的管理层,通过DriverManager类可以管理数据库厂商提供的驱动程序,并建立应用程序与数据库之间的连接,其方法声明及说明如表10.2所示。
表10.2 DriverManager类的方法声明及说明
方 法 声 明
说 明
public static void deregisterDriverDriver driver throws SQLException
从DriverManager的管理列表中删除一个驱动程序。参数driver为要删除的驱动对象
public static Connection getConnectionString url throws SQLException
根据指定数据库连接URL,建立与数据库连接Connection。参数url为数据库连接URL
public static Connection getConnectionString url,Properties infothrows SQLException
根据指定数据库连接URL及数据库连接属性信息建立数据库连接Connection。参数url为数据库连接URL,参数info为数据库连接属性
public static Connection getConnectionString url,String user, String passwordthrows SQLException
根据指定数据库连接URL、用户名及密码建立数据库连接Connection。参数url为数据库连接URL,参数user为连接数据库的用户名,参数password为连接数据库的密码
public static Enumeration getDrivers
获取当前DriverManager中已加载的所有驱动程序,它的返回值为Enumeration
public static void registerDriverDriver driver throws SQLException
向DriverManager注册一个驱动对象,参数driver为要注册的驱动
10.2.3 Statement接口 在创建了数据库连接之后,就可以通过程序来调用SQL语句对数据库进行操作,在JDBC中Statement接口封装了这些操作。Statement接口提供了执行语句和获取查询结果的基本方法,其方法声明及说明如表10.3所示。
表10.3 Statement接口的方法声明及说明
方 法 声 明
说 明
void addBatchString sql throws SQLException
将SQL语句添加到Statement对象的当前命令列表中,该方法用于SQL命令的批处理
void clearBatchthrows SQLException
清空Statement对象中的命令列表
void closethrows SQLException
立即释放Statement对象的数据库和JDBC资源,而不是等待该对象自动关闭时发生此操作
boolean executeString sql throws SQLException
执行指定的SQL语句。如果SQL语句返回结果,该方法返回true,否则返回false
int[] executeBatchthrows SQLException
将一批SQL命令提交给数据库执行,返回更新计数组成的数组
ResultSet executeQueryString sqlthrows SQLException
执行查询类型(select)的SQL语句,该方法返回查询所获取的结果集ResultSet对象
续表
方 法 声 明
说 明
executeUpdateint executeUpdateString sqlthrows SQLException
执行SQL语句中DML类型(insert、update、delete)的SQL语句,返回更新所影响的行数
Connection getConnection throws SQLException
获取生成Statement对象的Connection对象
boolean isClosed throws SQLException
判断Statement对象是否已被关闭,如果被关闭,则不能再调用该Statement对象执行SQL语句,该方法返回布尔值
10.2.4 PreparedStatement接口 Statement接口封装了JDBC执行SQL语句的方法,它可以完成Java程序执行SQL语句的操作,但在实际开发过程中,SQL语句往往需要将程序中的变量做查询条件参数等。使用Statement接口进行操作过于烦琐,而且存在安全方面的缺陷,针对这一问题,JDBC API中封装了Statement的扩展PreparedStatement对象。
PreparedStatement接口继承于Statement接口,它拥有Statement接口中的方法,而且PreparedStatement接口针对带有参数SQL语句的执行操作进行了扩展。应用于PreparedStatement接口中的SQL语句,可以使用占位符?来代替SQL语句中的参数,然后再对其进行赋值。PreparedStatement接口的方法声明及说明如表10.4所示。
|
|