描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121362699丛书名: 应用型本科计算机系列规划教材
内容简介
SSH是Struts、Spring、Hibernate的一个集成框架,是目前比较流行的一种Java Web应用程序开源框架,不仅实现了视图、控制器与模型的彻底分离,还实现了业务逻辑层与持久层的分离,提高了系统的可复用性。SSH不同层之间耦合度小,有利于团队成员并行工作,提高了开发效率。本书采用技术专题的方式,精心开发了大量的应用案例,详细介绍了3种框架的理论、技术、应用,并通过一个综合案例讲解Spring与Struts的整合开发。
目 录
第1章 Web应用开发 (1)
1.1 软件开发架构 (1)
1.2 J2EE轻量级框架Struts Spring Hibernate (4)
1.2.1 轻量级J2EE架构技术 (4)
1.2.2 认识SSH (5)
1.2.3 SSH架构轻量级Web应用 (7)
1.3 总结与提高 (8)
第2章 应用开发环境的安装与配置 (9)
2.1 认识Eclipse (9)
2.1.1 Eclipse概述 (9)
2.1.2 MyEclipse概述 (10)
2.2 安装MySQL数据库和MySQL管理工具 (12)
2.2.1 安装MySQL (12)
2.2.2 下载并安装MySQL管理工具Navicat Premium (13)
2.2.3 用Navicat Premium连接MySQL数据库 (14)
2.3 第一个Web工程—用户登录程序 (14)
2.3.1 项目实现 (15)
2.3.2 运行工程 (20)
2.3.3 相关知识 (21)
2.3.4 Web工程解析 (21)
2.4 总结与提高 (22)
第3章 Struts 2开发入门 (24)
3.1 从Hello开始学习Struts 2 (24)
3.1.1 Struts 2工程创建 (25)
3.1.2 配置web.xml文件 (29)
3.1.3 配置struts.xml文件 (29)
3.1.4 创建Action类Hello.java (30)
3.1.5 新建视图文件Hello.jsp (31)
3.1.6 发布运行 (32)
3.2 Struts 2表单标签的基本应用 (32)
3.2.1 建立Web工程 (32)
3.2.2 使用Struts 2标签搭建JSP界面 (32)
3.2.3 创建Action类文件 (33)
3.2.4 配置Struts.xml文件 (34)
3.2.5 发布运行项目 (34)
3.3 Struts 2框架核心 (35)
3.3.1 添加过滤器和配置文件 (35)
3.3.2 创建Action (39)
3.3.3 创建视图文件 (43)
3.4 总结与提高 (47)
3.5 拓展练习 (47)
第4章 Struts 2框架拦截器 (49)
4.1 认识拦截器 (49)
4.1.1 理解拦截器 (49)
4.1.2 预定义的拦截器 (50)
4.1.3 配置拦截器 (53)
4.1.4 拦截器栈 (53)
4.1.5 拦截器实例—计算Action执行的时间 (54)
4.2 使用自定义拦截器 (55)
4.2.1 自定义拦截器 (55)
4.2.2 自定义拦截器实例—飞行员报考申请拦截 (58)
4.3 拦截器实例 (64)
4.3.1 文字过滤拦截器 (64)
4.3.2 权限拦截器 (66)
4.4 总结与提高 (71)
4.5 拓展练习 (71)
第5章 类型转换 (73)
5.1 Struts 2框架对类型转换的支持 (73)
5.1.1 为什么需要类型转换 (73)
5.1.2 Struts 2框架内建的类型转换器 (75)
5.1.3 List集合类型转换 (78)
5.2 使用自定义转换器实现类型转换 (82)
5.2.1 编写类型转换器类 (82)
5.2.2 类型转换器的配置 (83)
5.2.3 自定义转换器实例 (84)
5.2.4 类型转换综合实例 (88)
5.3 类型转换中的错误处理 (92)
5.4 总结与提高 (93)
5.5 拓展练习 (93)
第6章 Struts 2输入校验 (95)
6.1 使用手动编程实现输入校验 (95)
6.1.1 使用validate()方法进行输入校验 (97)
6.1.2 使用validateXxx()方法进行输入校验 (100)
6.1.3 Struts 2的输入校验流程 (101)
6.2 使用Struts 2校验框架实现输入校验 (102)
6.2.1 Struts 2校验框架 (102)
6.2.2 运用Struts 2内置的校验器 (105)
6.2.3 注册表单校验实例 (111)
6.2.4 注册实例拓展—复合类型验证器 (115)
6.3 自定义校验器 (119)
6.3.1 自定义校验器实例 (119)
6.3.2 自定义校验器实例拓展 (122)
6.4 总结与提高 (125)
6.5 拓展练习 (126)
第7章 国际化 (127)
7.1 Struts 2国际化 (127)
7.1.1 什么是国际化 (127)
7.1.2 Locale类 (128)
7.1.3 ResourceBundle类 (129)
7.2 Struts 2对国际化的支持 (131)
7.2.1 资源包属性文件 (131)
7.2.2 Action及配置文件 (133)
7.2.3 Struts 2中加载资源文件的方式 (134)
7.2.4 搜索网站的国际化显示效果 (137)
7.3 Struts 2的国际化实现 (139)
7.3.1 Struts 2国际化信息的获取 (139)
7.3.2 Action的国际化 (140)
7.3.3 JSP页面的国际化 (140)
7.3.4 校验的国际化 (143)
7.4 商品信息录入国际化实例 (144)
7.4.1 项目运行结果 (144)
7.4.2 项目实现 (145)
7.5 总结与提高 (152)
7.6 拓展练习 (152)
第8章 Hibernate数据持久化技术 (154)
8.1 认识Hibernate (155)
8.1.1 ORM与数据持久化 (155)
8.1.2 什么是Hibernate (156)
8.1.3 Hibernate的安装与配置 (157)
8.1.4 Hibernate核心接口 (158)
8.2 Hibernate开发关键技术 (161)
8.2.1 Hibernate开发步骤 (161)
8.2.2 实体类 (161)
8.2.3 Hibernate的配置 (163)
8.2.4 Hibernate开发关键技术实例 (163)
8.3 Hibernate综合实例—留言板程序 (171)
8.3.1 项目介绍 (171)
8.3.2 用DB Browser管理数据库 (173)
8.3.3 新建MySQL数据库 (174)
8.3.4 新建Web工程并添加Hibernate组件 (175)
8.3.5 项目实现 (179)
8.4 使用反向工程快速生成Java POJO类、映射文件和DAO (194)
8.4.1 打开MyEclipse Database Explorer透视图 (194)
8.4.2 反向工程设置 (194)
8.5 总结与提高 (196)
第9章 Spring技术 (197)
9.1 认识Spring (198)
9.1.1 Spring产生的背景 (198)
9.1.2 Spring简介 (198)
9.1.3 Spring开发入门实例 (201)
9.2 控制反转(IOC) (206)
9.2.1 什么是控制反转 (206)
9.2.2 控制反转实例 (208)
9.2.3 DI注入方式 (211)
9.3 Bean与Spring容器 (213)
9.3.1 Spring的Bean (213)
9.3.2 使用静态工厂方法实例化一个Bean (214)
9.3.3 Spring中Bean的生命周期 (219)
9.4 Spring AOP应用开发 (224)
9.4.1 认识AOP (224)
9.4.2 AOP核心概念 (225)
9.4.3 AOP应用实例 (227)
9.5 基于Spring的MVC框架开发 (235)
9.6 Spring与Struts整合开发实例 (245)
9.6.1 整合开发环境部署 (246)
9.6.2 项目实现 (250)
9.7 总结与提高 (253)
第10章 新闻发布系统 (254)
10.1 项目概述 (254)
10.2 系统分析 (254)
10.2.1 功能需求 (254)
10.2.2 可行性分析 (255)
10.3 总体设计 (255)
10.4 详细设计 (256)
10.5 删除项目中的资源包 (257)
10.6 配置Hibernate (258)
10.7 Struts、Spring和Hibernate整合的配置文件 (260)
10.7.1 Spring整合Hibernate (260)
10.7.2 配置Spring事务管理 (261)
10.7.3 配置Spring Bean (262)
10.7.4 配置Spring applicationContext.xml文件 (264)
10.7.5 配置struts.xml (264)
10.8 前台功能实现 (265)
10.8.1 网站前台首页设计 (265)
10.8.2 新闻人物投票实现及显示 (270)
10.8.3 新闻查询实现及显示 (273)
10.9 后台功能实现 (276)
10.9.1 后台登录模块设计实现 (276)
10.9.2 总管理员设置 (278)
10.9.3 新闻类别管理 (286)
10.9.4 新闻管理 (291)
10.9.5 链接管理 (298)
10.9.6 新闻人物管理 (302)
10.9.7 退出后台 (307)
10.10 权限拦截器的实现 (307)
1.1 软件开发架构 (1)
1.2 J2EE轻量级框架Struts Spring Hibernate (4)
1.2.1 轻量级J2EE架构技术 (4)
1.2.2 认识SSH (5)
1.2.3 SSH架构轻量级Web应用 (7)
1.3 总结与提高 (8)
第2章 应用开发环境的安装与配置 (9)
2.1 认识Eclipse (9)
2.1.1 Eclipse概述 (9)
2.1.2 MyEclipse概述 (10)
2.2 安装MySQL数据库和MySQL管理工具 (12)
2.2.1 安装MySQL (12)
2.2.2 下载并安装MySQL管理工具Navicat Premium (13)
2.2.3 用Navicat Premium连接MySQL数据库 (14)
2.3 第一个Web工程—用户登录程序 (14)
2.3.1 项目实现 (15)
2.3.2 运行工程 (20)
2.3.3 相关知识 (21)
2.3.4 Web工程解析 (21)
2.4 总结与提高 (22)
第3章 Struts 2开发入门 (24)
3.1 从Hello开始学习Struts 2 (24)
3.1.1 Struts 2工程创建 (25)
3.1.2 配置web.xml文件 (29)
3.1.3 配置struts.xml文件 (29)
3.1.4 创建Action类Hello.java (30)
3.1.5 新建视图文件Hello.jsp (31)
3.1.6 发布运行 (32)
3.2 Struts 2表单标签的基本应用 (32)
3.2.1 建立Web工程 (32)
3.2.2 使用Struts 2标签搭建JSP界面 (32)
3.2.3 创建Action类文件 (33)
3.2.4 配置Struts.xml文件 (34)
3.2.5 发布运行项目 (34)
3.3 Struts 2框架核心 (35)
3.3.1 添加过滤器和配置文件 (35)
3.3.2 创建Action (39)
3.3.3 创建视图文件 (43)
3.4 总结与提高 (47)
3.5 拓展练习 (47)
第4章 Struts 2框架拦截器 (49)
4.1 认识拦截器 (49)
4.1.1 理解拦截器 (49)
4.1.2 预定义的拦截器 (50)
4.1.3 配置拦截器 (53)
4.1.4 拦截器栈 (53)
4.1.5 拦截器实例—计算Action执行的时间 (54)
4.2 使用自定义拦截器 (55)
4.2.1 自定义拦截器 (55)
4.2.2 自定义拦截器实例—飞行员报考申请拦截 (58)
4.3 拦截器实例 (64)
4.3.1 文字过滤拦截器 (64)
4.3.2 权限拦截器 (66)
4.4 总结与提高 (71)
4.5 拓展练习 (71)
第5章 类型转换 (73)
5.1 Struts 2框架对类型转换的支持 (73)
5.1.1 为什么需要类型转换 (73)
5.1.2 Struts 2框架内建的类型转换器 (75)
5.1.3 List集合类型转换 (78)
5.2 使用自定义转换器实现类型转换 (82)
5.2.1 编写类型转换器类 (82)
5.2.2 类型转换器的配置 (83)
5.2.3 自定义转换器实例 (84)
5.2.4 类型转换综合实例 (88)
5.3 类型转换中的错误处理 (92)
5.4 总结与提高 (93)
5.5 拓展练习 (93)
第6章 Struts 2输入校验 (95)
6.1 使用手动编程实现输入校验 (95)
6.1.1 使用validate()方法进行输入校验 (97)
6.1.2 使用validateXxx()方法进行输入校验 (100)
6.1.3 Struts 2的输入校验流程 (101)
6.2 使用Struts 2校验框架实现输入校验 (102)
6.2.1 Struts 2校验框架 (102)
6.2.2 运用Struts 2内置的校验器 (105)
6.2.3 注册表单校验实例 (111)
6.2.4 注册实例拓展—复合类型验证器 (115)
6.3 自定义校验器 (119)
6.3.1 自定义校验器实例 (119)
6.3.2 自定义校验器实例拓展 (122)
6.4 总结与提高 (125)
6.5 拓展练习 (126)
第7章 国际化 (127)
7.1 Struts 2国际化 (127)
7.1.1 什么是国际化 (127)
7.1.2 Locale类 (128)
7.1.3 ResourceBundle类 (129)
7.2 Struts 2对国际化的支持 (131)
7.2.1 资源包属性文件 (131)
7.2.2 Action及配置文件 (133)
7.2.3 Struts 2中加载资源文件的方式 (134)
7.2.4 搜索网站的国际化显示效果 (137)
7.3 Struts 2的国际化实现 (139)
7.3.1 Struts 2国际化信息的获取 (139)
7.3.2 Action的国际化 (140)
7.3.3 JSP页面的国际化 (140)
7.3.4 校验的国际化 (143)
7.4 商品信息录入国际化实例 (144)
7.4.1 项目运行结果 (144)
7.4.2 项目实现 (145)
7.5 总结与提高 (152)
7.6 拓展练习 (152)
第8章 Hibernate数据持久化技术 (154)
8.1 认识Hibernate (155)
8.1.1 ORM与数据持久化 (155)
8.1.2 什么是Hibernate (156)
8.1.3 Hibernate的安装与配置 (157)
8.1.4 Hibernate核心接口 (158)
8.2 Hibernate开发关键技术 (161)
8.2.1 Hibernate开发步骤 (161)
8.2.2 实体类 (161)
8.2.3 Hibernate的配置 (163)
8.2.4 Hibernate开发关键技术实例 (163)
8.3 Hibernate综合实例—留言板程序 (171)
8.3.1 项目介绍 (171)
8.3.2 用DB Browser管理数据库 (173)
8.3.3 新建MySQL数据库 (174)
8.3.4 新建Web工程并添加Hibernate组件 (175)
8.3.5 项目实现 (179)
8.4 使用反向工程快速生成Java POJO类、映射文件和DAO (194)
8.4.1 打开MyEclipse Database Explorer透视图 (194)
8.4.2 反向工程设置 (194)
8.5 总结与提高 (196)
第9章 Spring技术 (197)
9.1 认识Spring (198)
9.1.1 Spring产生的背景 (198)
9.1.2 Spring简介 (198)
9.1.3 Spring开发入门实例 (201)
9.2 控制反转(IOC) (206)
9.2.1 什么是控制反转 (206)
9.2.2 控制反转实例 (208)
9.2.3 DI注入方式 (211)
9.3 Bean与Spring容器 (213)
9.3.1 Spring的Bean (213)
9.3.2 使用静态工厂方法实例化一个Bean (214)
9.3.3 Spring中Bean的生命周期 (219)
9.4 Spring AOP应用开发 (224)
9.4.1 认识AOP (224)
9.4.2 AOP核心概念 (225)
9.4.3 AOP应用实例 (227)
9.5 基于Spring的MVC框架开发 (235)
9.6 Spring与Struts整合开发实例 (245)
9.6.1 整合开发环境部署 (246)
9.6.2 项目实现 (250)
9.7 总结与提高 (253)
第10章 新闻发布系统 (254)
10.1 项目概述 (254)
10.2 系统分析 (254)
10.2.1 功能需求 (254)
10.2.2 可行性分析 (255)
10.3 总体设计 (255)
10.4 详细设计 (256)
10.5 删除项目中的资源包 (257)
10.6 配置Hibernate (258)
10.7 Struts、Spring和Hibernate整合的配置文件 (260)
10.7.1 Spring整合Hibernate (260)
10.7.2 配置Spring事务管理 (261)
10.7.3 配置Spring Bean (262)
10.7.4 配置Spring applicationContext.xml文件 (264)
10.7.5 配置struts.xml (264)
10.8 前台功能实现 (265)
10.8.1 网站前台首页设计 (265)
10.8.2 新闻人物投票实现及显示 (270)
10.8.3 新闻查询实现及显示 (273)
10.9 后台功能实现 (276)
10.9.1 后台登录模块设计实现 (276)
10.9.2 总管理员设置 (278)
10.9.3 新闻类别管理 (286)
10.9.4 新闻管理 (291)
10.9.5 链接管理 (298)
10.9.6 新闻人物管理 (302)
10.9.7 退出后台 (307)
10.10 权限拦截器的实现 (307)
前 言
传统的Java Web应用程序是采用JSP Servlet JavaBean来实现的,这种模式实现了最基本的MVC分层,使得程序结构分为几层,有负责前台展示的JSP、负责流程逻辑控制的Servlet及负责数据封装的JavaBean。但是这种结构仍然存在一些问题:如JSP页面中需要使用符号嵌入很多Java代码,造成页面结构混乱,Servlet和JavaBean负责大量的跳转和运算工作,耦合紧密,程序复用度低等。
SSH就是Struts Spring Hibernate 3个Java框架的集合,表现层用Struts,Struts充当视图层和控制层;业务层用Spring,Spring通过控制反转让控制层间接调用业务逻辑层;持久层用Hibernate,Hibernate充当数据访问层。Struts采用MVC模式,主要作用于用户交互;Spring采用IOC和AOP,用于项目的松耦合;Hibernate是对象持久化框架,其实就是实体类和数据库表建立关系,操作类就会触发相应的SQL语句,可以不用写任何SQL语句,完成数据库编程。
本书的组织结构
本书共10章,从内容安排上可以分为以下6个部分。
第1章,该章首先对软件架构进行定义,并系统阐述Web应用发展的进程,从JSP开发的Model 1、Model 2讲解到MVC开发思想。重点对J2EE轻量级框架Struts Spring Hibernate进行介绍,对从结构到各层的技术实现进行深入剖析。
第2章,该章讲解SSH框架技术应用开发环境的安装和配置,首先介绍MyEclipse开发平台的安装和配置,并以用户登录程序的开发过程为例,演练了如何熟练利用MyEclipse平台进行开发。
第3~7章,以技术专题的方式讲解Struts 2关键技术,包括Struts 2框架拦截器、类型转换、Struts 2输入校验、国际化,通过这些技术实例的学习,读者不仅能从理论上认识和理解Struts 2,还能实际进行Struts 2的基本开发。
第8章,该章首先通过ORM和数据持久化来帮助读者认识Hibernate,并通过开发关键技术的讲解和留言板程序的开发,帮助读者掌握JDBC主流持久化框架。
第9章,该章阐述控制反转(IOC)和面向切面编程(AOP)思想,并通过实例讲解如何进行开发。对Spring的关键组成Bean及容器的实例化和生命周期进行实例解析。实例演练了Spring的MVC框架开发和Spring与Struts 2的整合开发。
第10章,该章采用SSH开发框架组合开发了新闻发布系统,网站功能完善、设计合理、性能稳定,读者可以在实例实现中进一步锤炼SSH的开发能力。
本书的特色
1.以丰富的实例引导知识点,将繁杂枯燥的概念融入实例中,以项目驱动教材的延伸。
2.抽取典型应用,进而以点带面,以面贯穿知识体系。
3.注重启发性、实用性和渐进性。
4.适合作为高等职业学校教材,将高等职业教育的理念融入教材的编写中,各章节注重内容的取舍与教学学时、能力点培养的对应。
内容编排
1.代码导读。对于代码中比较重要而不容易理解的内容,在代码前使用标注文字,然后在代码导读中进行解释。
SSH就是Struts Spring Hibernate 3个Java框架的集合,表现层用Struts,Struts充当视图层和控制层;业务层用Spring,Spring通过控制反转让控制层间接调用业务逻辑层;持久层用Hibernate,Hibernate充当数据访问层。Struts采用MVC模式,主要作用于用户交互;Spring采用IOC和AOP,用于项目的松耦合;Hibernate是对象持久化框架,其实就是实体类和数据库表建立关系,操作类就会触发相应的SQL语句,可以不用写任何SQL语句,完成数据库编程。
本书的组织结构
本书共10章,从内容安排上可以分为以下6个部分。
第1章,该章首先对软件架构进行定义,并系统阐述Web应用发展的进程,从JSP开发的Model 1、Model 2讲解到MVC开发思想。重点对J2EE轻量级框架Struts Spring Hibernate进行介绍,对从结构到各层的技术实现进行深入剖析。
第2章,该章讲解SSH框架技术应用开发环境的安装和配置,首先介绍MyEclipse开发平台的安装和配置,并以用户登录程序的开发过程为例,演练了如何熟练利用MyEclipse平台进行开发。
第3~7章,以技术专题的方式讲解Struts 2关键技术,包括Struts 2框架拦截器、类型转换、Struts 2输入校验、国际化,通过这些技术实例的学习,读者不仅能从理论上认识和理解Struts 2,还能实际进行Struts 2的基本开发。
第8章,该章首先通过ORM和数据持久化来帮助读者认识Hibernate,并通过开发关键技术的讲解和留言板程序的开发,帮助读者掌握JDBC主流持久化框架。
第9章,该章阐述控制反转(IOC)和面向切面编程(AOP)思想,并通过实例讲解如何进行开发。对Spring的关键组成Bean及容器的实例化和生命周期进行实例解析。实例演练了Spring的MVC框架开发和Spring与Struts 2的整合开发。
第10章,该章采用SSH开发框架组合开发了新闻发布系统,网站功能完善、设计合理、性能稳定,读者可以在实例实现中进一步锤炼SSH的开发能力。
本书的特色
1.以丰富的实例引导知识点,将繁杂枯燥的概念融入实例中,以项目驱动教材的延伸。
2.抽取典型应用,进而以点带面,以面贯穿知识体系。
3.注重启发性、实用性和渐进性。
4.适合作为高等职业学校教材,将高等职业教育的理念融入教材的编写中,各章节注重内容的取舍与教学学时、能力点培养的对应。
内容编排
1.代码导读。对于代码中比较重要而不容易理解的内容,在代码前使用标注文字,然后在代码导读中进行解释。
代码导读
2.注意。用于强调当前问题的附加信息和注意事项。
注意
3.技巧。提供编程捷径、技巧和经验。
技巧
4.链接。提供实例或知识点涉及的内容,既能避免重复,又能让读者方便地找到相关的技术解答,通过链接提供对重复内容的快速索引。
链接
5.技术细节。重点介绍开发过程中用到的关键技术或方法。
技术细节
致谢
本书的编撰花费了一年多的时间,感谢家人在此期间的支持,感恩二女儿的出生带给我的快乐;感谢深圳职业技术学院计算机学院、创新创业学院同事的无私帮助;感谢秦高德、孙志伟两位老师帮我一起研究教材的编撰思路,共同完成本书的撰写,以及陈杜彬、杨景等同学对教材案例的开发给予的支持。
为了方便教师教学,本书配有源码、电子课件,请有此需要的教师登录华信教育资源网(www.hxedu.com.cn)注册后免费进行下载,有问题时可在网站留言板留言或与电子工业出版社联系(E-mail:[email protected])。
由于项目式教学法正处于经验积累和改进过程中,同时,由于编者水平有限和时间仓促,书中难免存在疏漏和不足,希望同行专家和读者给予批评和指正。
编 者
评论
还没有评论。