华信教育资源网
Web应用开发——基于Spring MVC+MyBatis+Maven
丛   书   名: 普通高等教育“十三五”规划教材  新工科建设之路·计算机类规划教材
作   译   者:韩冬 出 版 日 期:2018-09-01
出   版   社:电子工业出版社 维   护   人:戴晨辰 
书   代   号:G0348910 I S B N:9787121348914

图书简介:

本书是目前国内较少的系统讲解Spring MVC+MyBatis+Maven这一组合的教材。全书分为Java Web开发基础、MyBatis和Spring MVC三部分,共20章。Java Web开发基础(1~9章),主要包括搭建Java Web开发环境、Servlet编程、JSP语言基础、会话管理、EL和JSTL、过滤器与监听器、AJAX技术、Maven、jQuery基础和jQuery EasyUI等内容。MyBatis(10~14章),主要包括MyBatis入门、配置和映射、动态SQL、MyBatis注解方式、MyBatis缓存配置和MyBatis应用等内容。Spring MVC(15~20章),主要包括Spring基础、Spring MVC入门、基于注解的控制器、拦截器、数据转换和格式化、Spring MVC的表单标签库、Spring MVC的文件上传和下载、Spring MVC的国际化和Spring MVC+MyBatis应用等内容。本书内容丰富、翔实,实用性强,适用面广,既可作为高等学校计算机相关专业学生学习Java Web应用开发的教材,又可作为软件培训机构和编程人员的参考用书。
定价 59.0
您的专属联系人更多
关注 评论(2) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:Maven本地仓库百度网盘:
    链接:https://pan.baidu.com/s/1DcdVRbxMrwmwAIhHtyixYA
    提取码:muks
    本书源码+PPT+模拟题+Tools百度网盘下载:
    链接:https://pan.baidu.com/s/1c94rIngQefSaVVVakuptNg
    提取码:92ep

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书是目前国内较少的系统讲解Spring MVC+MyBatis+Maven这一组合的教材。全书分为Java Web开发基础、MyBatis和Spring MVC三部分,共20章。Java Web开发基础(1~9章),主要包括搭建Java Web开发环境、Servlet编程、JSP语言基础、会话管理、EL和JSTL、过滤器与监听器、AJAX技术、Maven、jQuery基础和jQuery EasyUI等内容。MyBatis(10~14章),主要包括MyBatis入门、配置和映射、动态SQL、MyBatis注解方式、MyBatis缓存配置和MyBatis应用等内容。Spring MVC(15~20章),主要包括Spring基础、Spring MVC入门、基于注解的控制器、拦截器、数据转换和格式化、Spring MVC的表单标签库、Spring MVC的文件上传和下载、Spring MVC的国际化和Spring MVC+MyBatis应用等内容。本书内容丰富、翔实,实用性强,适用面广,既可作为高等学校计算机相关专业学生学习Java Web应用开发的教材,又可作为软件培训机构和编程人员的参考用书。

    图书详情

    ISBN:9787121348914
    开 本:16开
    页 数:348
    字 数:640.0

    本书目录

    目    录
    第一部分  Java Web开发基础
    第1章  搭建Java Web开发环境	2
    1.1  基于B/S结构的Web应用	2
    1.2  JDK安装与配置	2
    1.3  服务器Tomcat下载与安装	3
    1.4  Eclipse安装与使用	3
    1.4.1  Eclipse下载及创建Dynamic Web Project	3
    1.4.2  Eclipse中的编码问题	4
    1.4.3  将Tomcat和Eclipse相关联	6
    1.4.4  Eclipse自动部署项目到
    Tomcat的Webapps目录	7
    1.5  MySQL安装配置与使用	9
    1.6  PostgreSQL安装与使用	13
    1.6.1  PostgreSQL下载与安装	13
    1.6.2  使用pgAdmin III连接
    PostgreSQL	13
    1.6.3  使用pgAdmin III创建
    数据库	14
    1.7  Navicat Premium安装与使用	14
    1.8  本章小结	16
    习题 1	17
    第2章  Servlet编程	18
    2.1  Servlet简介	18
    2.2  Servlet基础	19
    2.2.1  用记事本写一个Servlet	19
    2.2.2  Servlet 体系结构	20
    2.2.3  Servlet 接口	20
    2.2.4  Servlet 生命周期	21
    2.2.5  Servlet 生命周期示例	22
    2.3  Servlet API编程常用接口和类	25
    2.3.1  GenericServlet类	25
    2.3.2  HttpServlet类	26
    2.3.3  ServletConfig接口	27
    2.3.4  HttpServletRequest
    接口	29
    2.3.5  HttpServletResponse
    接口	31
    2.3.6  ServletContext接口	32
    2.4  Servlet处理表单数据	35
    2.5  Servlet重定向和请求转发	36
    2.5.1  重定向	36
    2.5.2  请求转发	37
    2.5.3  Servlet中请求转发时
    forword()和include()的
    区别	38
    2.6  Servlet数据库访问	40
    2.6.1  JDBC基础	40
    2.6.2  创建测试数据	40
    2.6.3  访问数据库	40
    2.7  Servlet异常处理	41
    2.8  异步Servlet	45
    2.9  本章小结	46
    习题 2	47
    第3章  JSP语言基础	48
    3.1  JSP基本语法	48
    3.1.1  JSP简介	48
    3.1.2  JSP运行机制	48
    3.1.3  第一个JSP程序	49
    3.1.4  JSP指令	49
    3.1.5  JSP脚本	51
    3.1.6  JSP注释	52
    3.2  JSP动作元素	52
    3.3  JSP内置对象	53
    3.4  JSP综合示例	57
    3.5  本章小结	57
    习题 3	58
    第4章  会话管理	59
    4.1  Cookies	59
    4.1.1  Cookie剖析	59
    4.1.2  在Servlet中操作
    Cookie	59
    4.1.3  Cookie API	60
    4.1.4  使用Cookie示例	60
    4.2  HttpSession对象	62
    4.2.1  Session简介	62
    4.2.2  HttpSession API	62
    4.2.3  使用HttpSession示例	63
    4.3  URL重写	65
    4.3.1  为什么需要URL重写	65
    4.3.2  encodeURL()和
    encodeRedirectURL()	65
    4.3.3  使用URL重写示例	66
    4.4  隐藏表单域	66
    4.5  本章小结	66
    习题 4	67
    第5章  EL和JSTL	68
    5.1  JSP表达式语言	68
    5.1.1  EL简介	68
    5.1.2  EL的运算符和优先级	69
    5.1.3  EL隐式对象	70
    5.1.4  定义和使用EL函数	74
    5.2  JSP标准标签库	75
    5.2.1  JSTL简介	75
    5.2.2  JSTL安装与配置	76
    5.2.3  核心标签库	76
    5.3  本章小结	79
    习题 5	80
    第6章  过滤器与监听器	81
    6.1  Servlet过滤器	81
    6.1.1  Filter工作原理	81
    6.1.2  Filter核心接口	81
    6.1.3  Filter生命周期	82
    6.1.4  Filter配置	82
    6.1.5  Filter应用	83
    6.2  Servlet监听器	86
    6.2.1  Servlet监听器概述	86
    6.2.2  Servlet上下文监听	86
    6.2.3  HTTP会话监听	89
    6.2.4  Servlet请求监听	92
    6.3  本章小结	94
    习题 6	94
    第7章  AJAX技术	95
    7.1  实现AJAX应用的一般步骤	95
    7.2  使用XMLHttpRequest对象	96
    7.2.1  创建XMLHttpRequest
    对象	96
    7.2.2  XMLHttpRequest对象的
    常用属性和事件	96
    7.2.3  XMLHttpRequest对象的
    常用方法	97
    7.3  AJAX示例	98
    7.3.1  更改文本内容	98
    7.3.2  查询项目信息	100
    7.3.3  验证注册邮箱格式和
    唯一性	101
    7.4  本章小结	104
    习题 7	104
    第8章  Maven	105
    8.1  初识Maven	105
    8.2  Maven的安装和配置	107
    8.3  Maven使用	110
    8.4  坐标和依赖	111
    8.5  本章小结	112
    习题 8	113
    第9章  jQuery EasyUI	114
    9.1  jQuery基础	114
    9.1.1  初识jQuery	114
    9.1.2  jQuery选择器	116
    9.1.3  jQuery事件	116
    9.1.4  jQuery AJAX	117
    9.2  jQuery EasyUI	120
    9.3  jQuery EasyUI布局	121
    9.3.1创建边框布局	121
    9.3.2  在面板中创建复杂
    布局	122
    9.3.3  创建折叠面板	123
    9.3.4  创建标签页	124
    9.3.5  动态添加标签页	124
    9.4  jQuery EasyUI数据网格	125
    9.4.1  转换HTML表格为
    数据网格	125
    9.4.2  取得选中行数据	126
    9.4.3  创建复杂工具栏	127
    9.4.4  自定义分页	129
    9.5  本章小结	130
    习题 9	130
    
    第二部分  MyBatis
    第10章  MyBatis入门	132
    10.1  从JDBC到MyBatis	132
    10.2  第一个MyBatis示例	134
    10.2.1  创建Maven项目	134
    10.2.2  准备数据	136
    10.2.3  MyBatis配置	136
    10.2.4  创建实体类	137
    10.2.5  创建映射接口和SQL
     映射文件	138
    10.2.6  配置Log4j	138
    10.2.7  测试	138
    10.3  MyBatis框架原理	139
    10.3.1  MyBatis整体架构	140
    10.3.2  MyBatis运行原理	140
    10.4  MyBatis核心组件的
             生命周期	142
    10.4.1  SqlSessionFactory
     Builder	142
    10.4.2  SqlSessionFactory	142
    10.4.3  SqlSession	142
    10.4.4  Mapper Instances	142
    10.5  本章小结	143
    习题 10	143
    第11章  配置和映射	144
    11.1  示例:实现表数据的增、删、
              改、查	144
    11.2  MyBatis主配置文件	149
    11.3  XML映射文件	153
    11.4  高级结果映射	160
    11.4.1  示例说明	160
    11.4.2  一对一映射	164
    11.4.3  一对多映射	167
    11.4.4  多对多关联	171
    11.5  本章小结	175
    习题 11	175
    第12章  动态SQL	176
    12.1  示例:使用动态SQL	176
    12.2  if	178
    12.3  choose、when、otherwise	181
    12.4  where、set、trim	182
    12.5  foreach	187
    12.6  bind	188
    12.7  本章小结	189
    习题 12	189
    第13章  MyBatis其他	190
    13.1  MyBatis注解方式	190
    13.1.1  使用注解方式实现表
     数据的增删改查	190
    13.1.2  使用注解的动态
     SQL	194
    13.2  MyBatis缓存配置	200
    13.2.1  一级缓存(SqlSession
     层面)	200
    13.2.2  二级缓存(SqlSession
     Factory层面)	203
    13.3  本章小结	206
    习题 13	207
    第14章  MyBatis应用	208
    14.1  示例总体介绍	208
    14.1.1  任务说明和准备数据	208
    14.1.2  总体框架	209
    14.1.3  程序主要流程	209
    14.2  典型代码及技术要点	210
    14.2.1  通用功能包的类实现	210
    14.2.2  控制层	210
    14.2.3  业务层及使用
     FastJson	211
    14.2.4  数据层及JNDI
     数据源	213
    14.2.5  部署发布	215
    14.2.6  使用Jackson和手工
     拼凑JSON	215
    14.3  本章小结	215
    习题 14	216 
    
    第三部分  Spring MVC
    第15章  Spring基础	218
    15.1  Spring入门	218
    15.1.1  Spring概述	218
    15.1.2  使用Spring容器	221
    15.2  依赖注入	223
    15.3  Spring容器中的Bean	227
    15.4  容器中Bean的生命周期	230
    15.5  两种后处理器	231
    15.5.1  Bean后处理器	231
    15.5.2  容器后处理器	232
    15.6  装配Spring Bean	232
    15.6.1  通过XML配置装配
     Bean	233
    15.6.2  通过注解装配Bean	233
    15.6.3  自动装配和精确装配	235
    15.7  Spring的AOP	236
    15.8  本章小结	237
    习题 15	237
    第16章  Spring MVC入门	238
    16.1  Spring MVC概述	238
    16.2  Spring MVC入门示例1:Hello,
              Spring MVC!	238
    16.2.1  创建Maven项目	238
    16.2.2  pom.xml	239
    16.2.3  Web应用部署描述文件
     Web.xml	241
    16.2.4  Spring MVC
     配置文件	242
    16.2.5  基于Controller接口的
     控制器	242
    16.2.6  视图	243
    16.2.7  部署发布项目	243
    16.3  Spring MVC入门示例2:
              表单提交	243
    16.3.1  创建Maven项目	243
    16.3.2  编码过滤器	244
    16.3.3  表单提交及相应配置	245
    16.3.4  测试应用	246
    16.4  Spring MVC入门示例3:
              基于注解	247
    16.4.1  创建Maven项目	247
    16.4.2  创建控制器并添加
     注解	247
    16.4.3  视图解析器	248
    16.4.4  测试应用	248
    16.5  Spring MVC的工作流程	249
    16.6  本章小结	250
    习题 16	250
    第17章  基于注解的控制器	251
    17.1  Spring MVC常用注解	251
    17.1.1  @Controller和
     @RequestMapping	251
    17.1.2  @Autowired和
     @Service	253
    17.1.3  @RequestParam和
     @PathVariable	253
    17.1.4  @CookieValue和
     @RequestHeader	254
    17.2  在Spring MVC中处理模型
              数据	255
    17.2.1  数据模型	255
    17.2.2  ModelAndView	256
    17.2.3  Map及Model	257
    17.2.4  @SessionAttributes	258
    17.2.5  @ModelAttribute	259
    17.3  基于注解的控制器示例1	263
    17.3.1  创建AnnotationDemo1
     工程	263
    17.3.2  创建控制器并添加
     注解	263
    17.3.3  测试应用	264
    17.4  基于注解的控制器示例2	264
    17.4.1  创建AnnotationDemo2
     工程	264
    17.4.2  应用@Autowired和
     @Service进行依赖
     注入	265
    17.4.3  重定向	267
    17.4.4  测试应用	267
    17.5  本章小结	268
    习题 17	268
    第18章  拦截器、数据转换和格式化	269
    18.1  Spring MVC的拦截器	269
    18.1.1  拦截器的定义和注册	269
    18.1.2  拦截器的执行流程	271
    18.1.3  多个拦截器执行的顺序	274
    18.1.4  拦截器应用	275
    18.2  Spring MVC的数据转换和
              格式化	278
    18.2.1  Spring MVC消息转换
     流程	279
    18.2.2  Spring MVC的数据
     绑定	279
    18.2.3  Spring MVC的数据
     转换	284
    18.2.4  Spring MVC的数据
     格式化	287
    18.2.5  JSON格式的数据
     转换	289
    18.3  本章小结	295
    习题 18	295
    第19章  Spring MVC其他	296
    19.1  Spring MVC的表单标签库	296
    19.2  表单验证	307
    19.2.1  Spring验证	308
    19.2.2  JSR 303验证	310
    19.3  Spring MVC的文件上传和
             下载	311
    19.3.1  文件上传	311
    19.3.2  文件下载	314
    19.4  Spring MVC的国际化	315
    19.5  本章小结	318
    习题 19	318
    第20章  Spring MVC+MyBatis应用	319
    20.1  项目总体介绍	319
    20.1.1  项目简介及任务说明	319
    20.1.2  准备数据	320
    20.1.3  总体框架	320
    20.2  典型代码及技术要点	320
    20.2.1  登录模块及Kaptcha
     验证码组件	320
    20.2.2  系统管理界面	325
    20.2.3  系统用户管理	328
    20.2.4  功能模块管理	332
    20.3  本章小结	333
    习题 20	333
    参考文献	334
    展开

    前     言

    前    言
    “蒹葭苍苍,白露为霜。所谓伊人,在水一方……”,新技术、新知识宛若一位美貌典雅的妙龄女子,让人怦然心动。这位妙龄女子就是Spring MVC + MyBatis + Maven。
    Spring MVC是一个基于动作的MVC框架。该框架突出了HTTP中的请求/响应特性,在该框架中,用户的每一个请求都声明了一个需要执行的动作。而这主要是通过将每个请求URI映射到一个可执行的方法来实现的。同时,其也将请求参数映射到对应方法的参数上。
    Spring MVC与Spring框架集成在一起(如IoC容器、AOP等),具有非常灵活的数据校验、数据转换和格式化,以及数据绑定机制,支持RESTful,提供强大的约定优于配置的契约式编程支持,能够让开发者进行更简洁的Web层的开发。
    MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数及获取结果集。MyBatis可以对配置和原生Map使用简单的XML或注解,将接口和Java的POJO映射成数据库中的记录。
    MyBatis框架的优点在于:①与JDBC相比,减少了50%以上的代码量;②MyBatis是最简单的持久化框架,小巧且简单易学;③MyBatis相当灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL写在XML里,从程序代码中彻底分离,降低了耦合度,便于统一管理和优化,并可重用;④提供了XML标签,支持编写动态SQL语句;⑤提供了映射标签,支持对象与数据库的ORM映射。
    为什么有Maven?构建是程序员每天要做的工作,而且相当长的时间花在了这方面,而Maven可使这一系列的工作完全自动化。人们一直在寻找避免重复的方法,这里的重复有:设计的重复、文档的重复、编码的重复、构建的重复等。而Maven是跨平台的,使用它最大限度地消除了构建的重复。
    Maven不仅是构建工具,还是依赖管理工具和项目管理工具,Maven提供了中央仓库,能够帮用户自动下载构件。使用Maven可以进行项目高度自动化构建、依赖管理和仓库管理等。而使用Maven最大的好处就是可以实现依赖管理。
    在移动互联网兴起的时代,特别是针对后台开发,越来越多的企业喜欢使用Spring MVC + MyBatis + Maven的组合,Maven也替代Ant成为构建Java Web项目的流行工具。
    一般来说,对于性能要求较高的互联网项目,通常会选用SSM框架。
    本书的编写思路
    本书基于以下教学理念编写而成。
    1.注重基础
    要把Spring MVC + MyBatis + Maven学好,必须要有扎实的基本功,这也就是本书第一部分的内容—Java Web开发基础,主要包括Servlet编程、JSP基础、会话管理、EL和JSTL、过滤器与监听器、AJAX技术等内容。同样,要想把“Java Web开发基础”学好,就要有扎实的Java基础。在学习的旅途中,我们要循序渐进。
    2.注重知识(或者技术)格局(框架)
    注重技术细节是个好事,但学以致用。这样才会更有学习的动力。无论是Spring MVC 、MyBatis 、Maven,或者Java Web开发基础,其中的哪一部分拿出来都可以是一本书的内容,或者是一学期的课程。但一旦我们的技术格局有了,骨架有了,血肉是可以逐渐丰满起来的。学生一旦产生兴趣,技术(或者知识)细节方面的,他自己会努力学会并加以运用的。这样(同时)还会培养他自己的自学能力。这也是本书集“Java Web开发基础 + MyBatis + Spring MVC + Maven”于一体,作为《Web应用开发》课程主要教学内容的原因。
    3.注重编程实践
    本书的编程实例很多,限于篇幅,书中的一些示例代码往往只是核心代码,并不是全部的源程序。读者需要到源码包里仔细地阅读代码,以掌握相应的知识(或技能)。要成为优秀的程序员,编写相当数量的代码还是必要的。设计模式是在代码重构的过程中凸现出来的。所以,编写大量代码、注重编程实践,也为以后成为优秀的架构师打下了基础。
    4.注重学习者自身的努力和悟性
    “师傅领进门,修行在个人”,要成为优秀的软件工程师以致架构师,尤其需要个人的勤奋努力及悟性。如果在学习的过程中,学习者态度消极、被动、有惰性,那么谁也帮不上忙。
    5.注重能力培养
    “授人以鱼不如授人以渔”,但就编者的教学体会而言,实际上大多数学生喜欢的是“鱼”,而不是“渔”。所以,在教学实践中,恰如其分的引导是非常必要的。学生的“娇气”对学生以后的发展并没有多大好处。
    “Rome was not build in a day!”,能力的培养需要一个过程,虽然未必是“宝剑锋从磨砺出,梅花香自苦寒来”,但还是需要大量的编程实践、代码重构和反思(“悟”),经过长时间的潜移默化来逐渐习得。
    在教学过程中,更多的需要是“随风潜入夜,润物细无声”。
    要说明的是,本书的定位是——卓越工程师培养创新教材,不仅面向在校学生,还面向广大Java程序员、技术人员和培训机构等。
    给授课教师的教学建议(参考纸质图书所示)。
    致谢
    本书由韩冬(苏州大学)负责编制提纲及主要撰写工作,参与本书编写工作的还有张建、曹国平、肖广娣、李炜、李家伟、胡楠等,在此一并表示感谢。
    在编写本书过程中,编者参考、借鉴了很多IT技术专家、学者的相关著作,对于引用的段落或文字尽可能一一列出,谨向各位IT技术专家、学者一并表示感谢!
    本书的配套资源中,提供了所有章节程序的源代码、配套PPT、习题解答和拓展学习资源(包括HTML、CSS、JavaScript基础内容等),读者可登录华信教育资源网(http://www.hxedu.com.cn)进行下载使用。
    鉴于编者水平有限,书中难免存在不足和错误之处,敬请专家和读者提出宝贵意见和建议,以便再版时改进。
    
    韩  冬
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网