SSM 搭建精美实用的管理系统

课程介绍

SSM 框架即 Spring MVC + Spring + Mybatis,相信各位朋友在投递简历时已直观感受到它的重要性,Java Web 相关工作的招聘要求中基本都包括了这三项技术能力。

由于其轻量级、易用性等特点,大多公司都选用了 SSM 框架。本达人课将以 SSM 框架作为课程主题,通过实战项目带大家全面了解 SSM 框架及相关技术,并切实应用到实际的开发工作中。课程的最后增加了优化提升的知识技能,比如负载均衡、集群部署以及缓存模块的整合,通过学习,不单单学会使用,还可灵活应用于性能优化提升的实战项目中。

无论你的技术功底如何,即便之前对 Java Web 开发一知半解,通过本课程的学习,都可以完成对 SSM 框架的全面深入学习,真正获得实际开发能力。课程最后的优化教程也将进一步打通你的“任督二脉”,对网站的性能优化不再迷茫!

通过本课程,你将学习到以下内容:

  • Spring + Spring MVC + MyBatis 框架的整合及运用;
  • MySQL 8 数据库的基本使用方法;
  • Maven 的配置及使用;
  • Tomcat 8 的配置及使用;
  • Druid 数据库连接池;
  • AJAX 异步技术;
  • AdminLTE3、Bootstrap4、SweetAlert、JqGrid、jQuery 等前端框架组件及控件的使用;
  • 多图上传技术;
  • 大文件上传与文件的断点续传;
  • 文件导入导出功能;
  • Linux 系统部署及发布项目;
  • Redis 缓存数据库的配置及使用方法;
  • 前后端分离;
  • Nginx 的配置及使用;
  • Tomcat 集群的搭建及负载均衡;
  • 使用 Nginx 实现动静分离部署;
  • Java Web 性能优化的基本技巧。

课程共包含四大部分:

第一部分(第01-04课),基础篇,讲解前期准备工作及基础环境搭建,包括 Maven 使用、MySQL 的安装和使用、Spring MVC + Spring + Mybatis 框架的整合,Tomcat 的安装和使用、项目部署。

第二部分(第05-15课),实战篇 ,主要讲解系统设计及项目主要功能的实现。首先对系统整体设计、主要功能点、后台所需功能和页面布局做基本介绍,之后讲解如何做技术选型及插件选择,接着便开始功能的具体实现,包括登录功能、分页功能、富文本编辑器整合、图片上传及回显、页面交互优化,及项目打包部署与发布,最后回顾总结整个开发过程,包括知识点及开发过程中可能遇到的问题总结等。

第三部分(第16-20课),优化篇,内容包括 DAO 层优化、MySQL 优化、缓存整合、测试模块的增加、日志模块的整合及代码整洁的重要性。

第四部分(第21-23课),提升篇,主要包括 Nginx 的配置和使用、负载均衡、反向代理、Tomcat 集群部署、使用 Nginx 动静分离部署等内容。

考虑到让大家更易上手学习,每篇课程的实战内容都提供了对应的源码,大家可以按课程提示下载练习。

作者介绍

十三,现就职于某网络科技公司任职高级 Java 开发工程师,CSDN 博客作者,13blog.site 站长,在 GitHub 维护参与多个开源项目,擅长 Java 后端开发、Linux 运维及项目管理工作。

课程内容

导读:自己动手实现 Java Web 后台管理系统

课程背景

让我们从某招聘网站上发布的数个 Java 工程师招聘信息来开始本达人课。

Java 实习生 [3k-5k]

岗位要求:

  1. 热爱技术并有钻研精神,Java 基础扎实,熟悉 Spring 、Spring MVC 、MyBatis 、MySQL 、Linux;
  2. 熟悉 JavaScript,有 JavaScript 框架使用经验优先;
  3. 具备良好的沟通能力、抗压能力和团队合作精神。

Java 研发工程师 [6k-12k]

岗位职责:

  1. 熟练 Java 语言基础,熟悉 J2EE 体系架构,具有 JSP 、JavaScript 、jQuery 、BootStrap 、Servlet 、Spring 、MyBatis 、XML 等开发经验;
  2. 熟练 Oracle 、MySQL 等数据库设计与开发,并熟练掌握 SQL;
  3. 熟悉使用 Tomcat 、Eclipse 、IntelliJ 、Jetty 等应用服务器软件及开发工具;
  4. 根据项目分配,快速完成开发任务。

Java 开发工程师 [10k-15k]

岗位要求:

  1. 计算机相关专业本科毕业,2 年以上 Java 开发经验;
  2. 熟练掌握 Spring 、Spring MVC 、Mybatis 主流开发框架;
  3. 精通一种以上关系数据库,如 MySQL;
  4. 熟悉分布式缓存,如 Redis 。

这里,暂且不谈 Spring 的辉煌历史,也不过多谈论 ORM 框架给广大开发人员带来的便捷,我们着眼于现实。通过上面几则招聘信息,相信大家应该都能从中直观地感受到,不管你是初学者,或者是刚入行的实习生,亦或是已经有了几年工作经验的开发者,都不能忽视这样一个事实:

Spring MVC+Spring+Mybatis 这套技术栈是绝大部分公司明确要求掌握的技术,而 Spring MVC+Spring+Mybatis 的组合搭配已经渐渐成为 Java Web 开发者必备的技能,虽然不是全部,但目前的趋势即是如此,掌握 SSM 技能栈刻不容缓。

前几年工作中,我一直使用 Spring MVC+Spring+Mybatis 的组合进行开发,平时也会対其做一些研究和体验。在这个过程中发现,网上关于 Spring MVC+Spring+Mybatis 组合的介绍文章和教程虽然很多,但很多难以满足学习者的需要 —— 要么只有简单的介绍没有详细教程,要么有较为详细的教程却没有源码,要么有源码但源码不全,很难上手使用,还有的提供了详细的源码但却没有与之对应的界面和 Demo,为学习者提供实际的操作体验。

这些情况对于有经验的开发者来说并不是大问题,但对于初学者来说如同一面厚实的砖墙堵在了学习的道路上。

于是,自 2017 年年初起,我开始在网络上连载了 Spring MVC+Spring+Mybatis 组合的系列文章,源码也开放在 GitHub 和 Gitee 开源网站上,并且每一个教程都有对应的演示网站供读者体验和学习,这种教程+源码+实际体验的模式受到许多网友的喜欢和关注。

2018 年年中,与 GitChat 达人课策划编辑达成协议将这套教学系列文章重新整理和优化,以达人课的形式呈现给各位读者。

该课对整体内容进行了更为合理的划分,同时,增加了针对初学者的详细教程。不仅如此,对于有经验的朋友,在教程后半部分增添了优化提升课程,让你更为直观、真实地体验网站的优化过程,对系统优化中集群部署及分布式开发不再迷茫。同时,也更新了项目的视觉效果,优化了网站的交互体验,在原来的基础上更贴近于企业网站,让你切身体会如何使用 Spring MVC+Spring+Mybatis 开发并且可以真实应用到实际的开发工作中。

十三温馨提示:文中有部分 Gif 图片,可能因为文章格式问题导致有些模糊,放大即可,都是高清无码版本,学习起来更舒适!

课程目的

花了几天的时间,做了一个网站小 Demo,最终效果也与此网站类似。以下是这次实战项目的 Demo 演示。

登录页:

log-in

富文本编辑页:

rich-text-manage

图片上传:

images-manage

退出登录:

log-out

课程目的也很简单,希望通过此课程,学员可以自己动手实现一个精美且实用的 Java Web 后台管理系统。

为了达成这一目的,我对课程做了如下规划:

  • 课程开始,为针对于初学者的详细教程,介绍 Spring MVC+Spring+Mybatis 的基础整合及如何进行快速开发;
  • 接着,开启后台管理系统的设计及开发过程,进行实战演练;
  • 最后,优化提升的技巧和实战分享,让你学会如何在企业开发中有一个良好的开发习惯以及如何对系统进行优化升级。

通过本课程,不仅仅让你学会开发,也会让你学会网站优化,进一步提升技术能力和技术积累。

学员定位

该达人课适合以下人群阅读:

  • 从事 Java 相关领域的开发或者有一定 Java Web 基础的人员;
  • 需要 SSM 源码练习的人员;
  • 传统开发领域,急迫想打破原有开发模式的开发人员;
  • 对系统优化缺乏实战经验的开发人员。

在学习本课程之前,需要了解 Java 开发及 Java Web 相关知识等基础技能。

课程介绍

开发环境

  • Windows/Linux
  • IntelliJ IDEA
  • JDK 1.8
  • MySQL 8
  • Tomcat

收获

通过本课程,您将学习到以下内容:

  • Spring+Spring MVC+MyBatis 框架的整合及运用;
  • MySQL8 数据库的基本使用方法;
  • Maven 的配置及使用;
  • Tomcat 8 的配置及使用;
  • Druid 数据库连接池;
  • AJAX 异步技术;
  • AdminLTE3 、Bootstrap 4 、SweetAlert 、JqGrid 、JQuery 等前端框架组件及控件的使用;
  • 多图上传技术;
  • 大文件上传与文件的断点续传;
  • 文件导入导出功能;
  • Linux 系统部署及发布项目;
  • Redis 缓存数据库的配置及使用方法;
  • 前后端分离;
  • Nginx 的配置及使用;
  • Tomcat 集群的搭建及负载均衡;
  • 使用 Nginx 实现动静分离部署;
  • Java Web 性能优化的基本技巧。

演示站点

点击这里查看:gitchat-ssm

第01课:Spring MVC+ Spring + Mybatis “三大框架”介绍

1.1 为什么要使用框架?

对于绝大部分 Java Web 开发者来说,开发的第一个项目应该都是以 JSP 或者 JSP+Servlet 形式完成的项目,之后陆陆续续、大大小小的项目应该也是以此为基础进行开发,当你看到一个个完美的作品竣工完结之时,心满意足之余你可能会有这样一种疑惑,明明使用 JSP+Servlet 技术就可以完成的项目为什么要使用各种框架?

首先,这些项目只是学习过程中的练习项目,其次,这些项目是个人项目并不是企业应用,学习 Java Web 开发的目的是企业级应用的开发,闭门造车的思维模式不可取。一个中小型项目全部使用 JSP+Servlet 进行开发和维护,其成本就会很高,更不用说大型项目了,那简直就是一个灾难,开发成本、迭代成本、维护成本将会更高。

真实的企业应用开发有几个比较重要的关注点分别是:代码复用、标准化、可维护性、开发成本,JSP+Servlet 的封装和抽象程度与框架相比起来就毫无优势可言了。

  • 代码复用:框架的封装和抽象程度较高,企业开发中的很多功能都做了相应的实现,例如 JDBC 、请求分发、对象管理、事务管理等底层代码,如果不使用框架而选择自己开发的话,代码量着实不小,框架的使用为开发人员减少了大部分的编码工作,提升开发效率。

  • 标准化:对于上述的功能,如果没有使用框架,每个企业应该肯定会有自己的封装。各企业封装的思路不同及业务场景的不同也会导致或大或小的差异性,这将给员工带来比较大的学习成本。从一家公司换到另外一家公司,需要重新学习使用公司内部的框架,这种做法往往会加大学习成本。而使用框架,上述的问题将不复存在,大部分公司都在用这套框架和这套框架下的开发模式,最终产生一个大家都接受的标准化流程,框架实际上也是一种规范,可以让每位开发人员保持类似的开发风格和开发方式。

  • 可维护性:代码复用程度高、开发流程的规范化和标准化带来的就是开发效率的提升;框架的引入也使得代码分层更加清晰,底层技术细节的封装,使得开发人员的关注点更加倾向于具体业务上;这些原因会使得企业应用拥有更优秀的可维护性。

其实,说得简单点,当优秀的框架逐渐成为趋势、成为标准之时,开发者的学习成本降低了,同时也减少了开发者的重复编码工作,简化开发,加快开发进度,降低维护难度。

1.2 “ 三大框架 ”

谈到框架之时,我相信你的脑海中会迅速出现一个词语 —— “ 三大框架 ” ,每个 Java Web 学习者对该词肯定都印象深刻。开始接触 Java 开发框架时,这个词语也就随之深刻在脑海中,因为周围的开发者乃至自己都会时常提到它。

“ 三大框架 ” 已成为大家接受的叫法,在进入公司后,随着开发经验的增长,“ 三大框架 ” 被提到的越来越少了。伴随着可使用的优秀框架越来越多,已经不止是 “ 三大框架 ” 了。“ 三大框架 ” 的每一种技术,虽然是独立的技术,用于企业级应用开发时又是紧密结合在一起,并不孤立,“ 三大框架 ” 主要用来开发 Web 应用,分别负责 MVC 开发模式下的不同模块功能。

这个词语所代表的含义也不是固定的,我初学 Java Web 开发时,“ 三大框架 ” 代表的是 SSH(即 Spring 、Struts2 、Hibernate ),而在今天,“ 三大框架 ” 已经逐渐过渡成为 SSM(即 Spring 、Spring MVC 、MyBatis ),本课程选择的技术即为 Spring+Spring MVC+MyBatis 。

1.3 状态火热的 SSM 技术栈

我们可以登录几大招聘网招,看看企业 Java Web 相关岗位的招聘文案,通过招聘信息中的要求得出以下结论:

SSM 这套技术栈是绝大部分公司明确要求掌握的技术,而 SSM 的组合搭配已经渐渐成为 Java Web 开发者必备的技能,虽然不是全部,但仍是目前的主要趋势,掌握 SSM 技能栈刻不容缓。

由此可以看出 Spring MVC+Spring+Mybatis 技术栈有着很高的受欢迎程度。那么,Spring MVC+Spring+Mybatis 到底有多么火热呢?我找出了一些数据给大家展示一下。

SSM搜索指数

此图来自于百度指数,我在 2018 年 6 月 14 日查询了 SSM 关键词的数据,从图中可知,自百度指数有数据统计以来,Spring MVC+Spring+Mybatis 的搜索指数一直很高,自 2011年至 2018 年一直呈现连年稳定增长的趋势,近四年的搜索指数也一直保持在一个极高的水平上。

十三也找了其他几组数据进行对比:

大数据搜索指数

docker搜索指数

以上两张图片同样来自于百度指数,分别为近几年比较火热的技术和话题:大数据、Docker 技术,这两个词语的火热程度应该不用我多说,唯有炙手可热来描述了。三张图片结合观察,同大数据和 Docker 相比起来,SSM 也丝毫不落下风,十分稳定地保持在一个极高的水准之上。

一直增长、搜索指数数值极高且极其稳定,这些状态加在一起,如果要找一个合适的词语来形容的话,那就只能是恐怖了,一时风头无两的 SSM 技术栈!

我近两年也一直在做关于 Spring+Spring MVC+MyBatis 的技术文章分享,因此本达人课选择的主要技术栈仍为 Spring+Spring MVC+MyBatis,下面将分别对其进行介绍。

1.4 Spring

Spring 是一个轻量级的企业级应用开发框架,于 2004 年由 Rod Johnson 发布了1.0 版本,经过多年的更新迭代,已经逐渐成为 Java 开源世界的第一框架,Spring 框架号称 Java EE 应用的一站式解决方案,与各个优秀的 MVC 框架如 Spring MVC 、Struts2 、JSF 等可以无缝整合,与各个 ORM 框架如 Hibernate 、MyBatis 、JPA 等也可以无缝衔接,其他各种技术也因为 Spring 的存在而被很容易地整合进项目开发之中,如 Redis 整合、Log4J 整合、ElasticSearch 整合、RabbitMQ 整合、Quartz 整合、Thymeleaf 整合等等,只要你开发中需要使用到的技术,Spring 都提供了极好的封装和整合体验,这也是为何 Spring 生命力如此强大的原因,暂时还没有能够替代 Spring 的框架出现。

Spring 框架提供约 20 个模块,如下图:

spring-framework

Spring 框架并不强制应用完全依赖于 Spring,开发者可自由选择需要的模块。

总结起来,Spring 框架有如下优点:

  • Spring 的 IOC 容器将对象之间的依赖关系交由 Spring 控制,提高了组件之间的解耦,简化 Java 开发;
  • 面向切面编程,Spring AOP 是面向对象编程(OOP)的一种补充,通过这种方式将系统中的一些通用任务提取出来进行单独处理,比如事务处理、日志模块、权限控制、性能监控等,避免大量的代码重复,使得代码更加简洁,复用性更强,也帮助开发人员更加关注业务逻辑;
  • 非侵入式,代码的污染极低;
  • 无与伦比的兼容性,与其他优秀的第三方框架无缝整合;
  • Spring 框架的源码是无与伦比的 Java 代码盛宴;
  • 高度的开放性;
  • 开源社区十分活跃,文档齐全,学习成本不高。

1.5 Spring MVC

Spring MVC 是 Spring 框架体系中的全功能 MVC 模块,在前面 Spring 结构图中可以看到这一关系,其中的 Web MVC 即 Spring MVC 。Spring MVC 是基于 Java 语言实现 MVC 设计模式的请求驱动类型的轻量级 Web 框架,目的是将 Web 开发模块化及代码简化。其提供了 DispatcherServlet 前端控制器分派请求,同时提供灵活的配置处理程序映射、视图解析,并支持文件上传,目前已经是众多 MVC 框架中的佼佼者。

下图为 Spring MVC 框架的工作流程图及注释:

Spring MVC-workflow

Spring MVC 框架的优点如下:

  • Spring 和 Spring MVC 无需复杂的操作即可整合,天生契合,灵活度高,非侵入性;
  • 配置简单,学习成本低;
  • 设计合理,各模块分工明确,功能强大;
  • 非常容易与第三方视图技术集成整合;
  • 能够进行 Web 层的单元测试;
  • 支持灵活的 URL 到页面控制器的映射;
  • 灵活且强大的数据验证、格式化和数据绑定机制;
  • 开源社区十分活跃,文档齐全。

1.6 MyBatis

MyBatis 的前身是 Apache 社区的一个开源项目 iBatis,于 2010 年更名为 MyBatis 。MyBatis 是支持定制化 SQL 、存储过程以及高级映射的优秀的持久层框架,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集,使得开发人员更加关注 SQL 本身和业务逻辑,不用再去花费时间关注整个复杂的 JDBC 操作过程。

以下为 MyBatis 的结构图:

mybatis-framework

MyBatis 的优点如下:

  • 封装了 JDBC 大部分操作,减少开发人员工作量;
  • 相比一些自动化的 ORM 框架,“半自动化”使得开发人员可以自由的编写 SQL 语句,灵活度更高;
  • Java 代码与 SQL 语句分离,降低维护难度;
  • 自动映射结果集,减少重复的编码工作;
  • 开源社区十分活跃,文档齐全,学习成本不高。

1.7 总结

由于篇幅有限,本文只简单介绍了 SSM 技术栈。本达人课的侧重点在实战开发上,因此,后续文章将专注于实战教程部分。本达人课保证文章的篇幅充足、过程详细,让你不虚此行,一定会有收获。

另外,与 SSH 技术栈的比较不在本文的讨论范围内,我认为这种框架之间的对比对于学习者来说也只是看个热闹,只有真正地使用过才能懂得其中的区别。同时,我也认为技术之间没有高低优劣之分,只有适不适合自己,因此就不再花费篇幅去做对比了,有兴趣的朋友可以去实际体验一下再做对比,切不可眼高手低。

第02课:前期准备工作及基础环境搭建

2.1 简介

本来不打算单独用一个篇幅来介绍基础环境的搭建,但考虑到课程的受众比较广,如果因为环境问题导致某些朋友无法继续后面的课程就真的很遗憾了。

本文会详细的介绍 JDK 8 的安装、IDEA 2018 的安装使用、Maven 的安装和配置、MySQL 8 的安装和使用。如果已经准备好了这些基础环境,可以选择性地略过这一节。

考虑到 Windows 系统更为普及,本文将介绍 Windows 系统之上的环境搭建,Linux 系统上的基础环境搭建将在后续课程中介绍。

工欲善其事必先利其器,接下来跟随十三的讲解来安装和配置实战所需的环境和工具吧!

2.2 JDK 8 安装配置

根据系统选择需要下载的安装包,这里选择的是 Windows 64 位下 JDK 8 ,如果已经安装了可以跳过。

1. 下载安装包

首先访问 JDK 8 下载页面,链接如下:

JDK 8 下载链接

选择对应的版本,然后下载,下载前需点击 “ Accept License Agreement ” ,不然无法点击下载,过程如下图:

jdk8-download

2. 安装

下载完成后,点击安装包进行安装。需要注意的是,此步骤中 JDK 的安装路径,可以选择默认路径,也可以更改安装路径,比如十三就是更改安装路径到 F:\Java\jdk1.8.0_171 。此外,安装过程中将公共 JRE 取消安装,因为 JDK 中已经包含 JRE 了,过程如下图:

jdk8-install

安装成功!

3. 配置环境变量

右键 “我的电脑” ,依次进入 “属性” -> “高级系统设置” -> “环境变量”,点击新建按钮,首先添加 JAVAHOME 变量,变量值为安装步骤中选择的安装路径 F:\Java\jdk1.8.0171 ,过程如下图:

jdk8-env

之后编辑 PATH 变量,在变量的末尾添加 :;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

jdk8-path

最后增加 CLASSPATH 变量,同添加 JAVAHOME 变量的过程一样,点击新建按钮,输入变量名,并输入变量值 :.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

环境变量设置完成。

4. 检查

打开命令提示符,输入 java -version ,输出版本号正确即可,十三安装的版本是 1.8.0171 ,命令行输出版本号也是 1.8.0171 ,配置成功,过程如下图:

jdk8-valid

大功告成!

2.3 IDEA 2018 的安装使用

IDEA 全称 IntelliJ IDEA,是用于 Java 语言开发的集成环境(也可用于其他语言),IntelliJ 在业界被公认为最好的 Java 开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE 支持、Ant 、JUnit 、CVS 整合、代码审查、 创新的 GUI 设计等方面的功能可以说是超常的。

十三会使用 IDEA 进行所有教程的编码工作,建议大家也使用这款开发工具。不过如果你习惯了 MyEclipse 或者 Eclipse 的话,也没有关系,项目代码是 Java Web 工程,你也可以使用 MyEclipse 或者 Eclipse 进行后续开发,并不会有什么差别。

1. 下载安装包

首先到 IDEA 的官方网站,点击 IDEA 进入下载页面,网址如下:

IDEA 下载链接

注意:请选择 Ultimate 版本下载,点击 DOWNLOAD 按钮下载即可,如下图:

idea-download

2. 安装

下载完成后,点击安装包进行安装,过程比较简单,一直点击 “ next ” 按钮即可,过程如下面图片所示。

点击安装包程序:

idea-install-1

安装过程:

idea-install-2

安装成功:

idea-install-3

由于文件比较大,可能会花一点时间。

3. 授权

由于 Ultimate 版本是收费版本,如果没有购买的话是不能使用的,不过网上有朋友提供了注册地址,因此,使用这些注册地址即可。IDEA 安装成功后第一次打开会直接跳转到授权页面,点击 License Server ,填写授权地址即可,地址为: http://123.206.193.241:1017 (如果失效,可以用这个: http://active.chinapyg.com/ ),如果资金充裕也可以选择自行购买。

过程如下图:

idea-install-3

成功后再次打开 IDEA 就不会再跳到授权页面了。

2.4 Maven 的安装和配置

1. 下载安装包

首先到 Maven 的官方网站,点击 Maven 压缩包进行下载,链接及过程见下。

Maven 的官方网站

maven-dowanload

2. 安装

选择目录进行安装,我选择的是 D:\maven 目录,解压后,Maven 的安装目录为 D:\maven\apache-maven-3.5.4 ,过程如下图:

maven-dowanload

之后则需要配置 Maven 命令的环境变量,同设置 JDK 环境变量过程一样,新增 MAVEN_HOME 变量,变量值为安装目录 D:\maven\apache-maven-3.5.4 ,过程如下:

maven-path

之后再修改 PATH 环境变量,在末尾增加 ;%MAVEN_HOME%\bin; 即可。

maven-path

3. 配置文件

修改配置文件,文件目录是安装目录下的 conf 目录,找到 settings.xml 文件,修改为如下配置即可:

<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- 本地仓库的路径 十三设置的是D盘maven/repo目录下 (自行配置一个文件夹即可,默认是~/.m2/repository) --><localRepository>D:\maven\repo</localRepository>   <!-- 配置阿里云镜像服务器 国内镜像速度会快一些 --> <mirror>        <id>alimaven</id>        <name>aliyun maven</name>        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>        <mirrorOf>central</mirrorOf>            </mirror></settings>

4. 验证

安装配置成功后,需要验证 Maven 命令是否可以在本机正常使用,验证方法同 JDK 验证相同,打开 Windows 的命令提示符,输入以下命令:

mvn -v

能够正常显示 Maven 安装信息即可:

maven-path

5. IDEA 配置 Maven

IDEA 默认安装了 Maven 环境,想要我们自己安装的 Maven 可以在 IDEA 中正常使用,则需要进行以下配置:

File -> Settings -> Maven

maven-idea

至此,关于 Maven 的相关安装和配置已经完成。

2.5 MySQL 8 的安装和使用

2018 年,MySQL 8.0 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快两倍,还带来了大量的改进和更快的性能。

mysql8

本教程使用的 MySQL 数据库版本是8.0.11,如果你已经安装了其他版本的 MySQL 则可以忽略这一节,如果你想掌握 MySQL 8 的安装使用则可以跟着十三的教程体验一把。

1. 下载安装包

首先到 MySQL 8 Installer 的下载页面,链接如下:

MySQL 8 Installer 下载地址

选择对应的版本然后点击 Dowanload 按钮,之后会跳转到下载页面,点击页面下方的 No thanks, just start my download. 即可进行下载,过程如下图:

mysql8-installer-download

2. 安装

  • 解压至安装目录。

首先是确定 MySQL 8 的安装目录,可以自行决定,我是将其安装在 F:\mysql-8.0.11-winx64 目录下,解压安装包至安装目录下即可。

mysql8-unzip

  • 配置文件。

在安装目录下新建配置文件 my.ini ,配置文件中写入:

[mysqld] port=3306 basedir =F:\mysql-8.0.11-winx64 datadir =F:\mysqlData\max_allowed_packet = 20M

保存即可,其中 datadir 为数据存储目录,十三将其放在了 F:\mysqlData\ 目录下,你可以对应地进行修改。

  • 初始化 MySQL 8 。

打开命令行,进入 MySQL 的 bin 目录下,之后进行初始化,命令为:

mysqld --initialize --console

初始化成功后,命令行会打印出 root 用户的初始密码(记得保存,如果没有报错或者忘记的话,删掉初始化的 datadir 目录再次进行初始化即可),过程如下图:

mysql8-initialize

  • 启动 MySQL 服务。

在启动服务前,首先要将 MySQL 8 安装为 Windows 的系统服务,在 MySQL 的 bin 目录执行命令如下:

mysqld --install mysql8

其中 mysql8 为服务名称,你可以自行修改成想要的名字。

服务注册成功后,就可以启动 MySQL 服务了,执行命令:

net start mysql8
  • 登录 MySQL 。

mysql8-login

服务启动成功后,则可以登录 MySQL 服务器了,在 bin 目录下执行 mysql -uroot -p ,输入刚刚保存的密码即可。不过首次登录 MySQL 时需要修改 root 用户密码,不然是无法进行操作的。需要执行的修改 root 用户密码操作,如下:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '131313';FLUSH PRIVILEGES;

mysql8-alter-password

十三修改密码为 131313 ,你可以按照你的要求进行设置,之后就可以进行操作了。

  • 验证。

通过客户端连接 MySQL 8,输入用户名密码无报错即为登录成功,如下图:

mysql8-login-by-app

安装成功!

还是要再提醒一下各位,如果已经安装了其他版本的 MySQL 也是可以的,后续实战教程对于 MySQL 版本没有特殊要求。

2.6 总结

磨刀不误砍柴工,事先准备好环境才有利于进行后续的操作,不过篇幅有限,本篇文章只介绍了 Windows 系统上的安装配置过程,Linux 系统上基础环境的搭建会在另一篇文章中介绍。

通过以上几个步骤,本次实战教程的基础准备工作就完成了。同时还要提醒各位的是,如果你习惯了其他的代码编辑工具或者已经安装了其他版本的 MySQL 、Maven 、JDK,都没有关系,代码与这些是没有强关联的,因此不用过多地纠结于这个事情,如果看完本教程你没有安装成功,可以另行通过其他详细些的教程进行环境搭建。

第03课:三大框架的整合
第04课:Tomcat 8 安装部署及功能改造
第05课:产品设计之搭建精美实用的后台管理系统
第06课:前端选型 AdminLTE3
第07课:登录模块的系统设计和实现
第08课:使用 JqGrid 插件实现分页功能
第09课:弹框组件整合——完善添加和修改功能
第10课:图片管理模块
第11课:多图上传与大文件分片上传、断点续传
第12课:文件导入导出功能
第13课:富文本信息管理模块
第14课:SweetAlert 插件整合及搜索功能实现
第15课:项目发布——Linux 命令及发布流程
第16课:项目优化篇之日志输出
第17课:项目优化之单元测试
第18课:项目优化之数据库连接池
第19课:项目优化之 Druid 整合
第20课:项目优化之缓存整合
第21课:网站架构演进及 Nginx 介绍
第22课:Nginx + Tomcat 集群搭建
第23课:Nginx 动静分离

阅读全文: http://gitbook.cn/gitchat/column/5b4dae389bcda53d07056bc9

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页