springboot+mybatis+vue WEB项目简易搭建文档

图书管理系统架构文档

摘要

图书管理系统,拟用MySql作数据库,使用SpringBoot作为后端架构,并使用Maven作为后端项目管理组件,Java语言,数据库与后端稳定连接架构MyBatis,Vue作为前端架构。

系统搭建步骤

1、数据库搭建

(1) 安装MySql;

在网上下载mysql安装包,解压并安装(或直接安装)。

(2) 配置MySql(非必要);

说明:给mysql配置环境变量后我们就可以在cmd里运行mysql(开启、停止等操作)

\1. 和其实环境变量的配置方法一样,我们打开环境变量配置窗口(组合键win+Pause -> 更改设置 -> 系统属性里选择“高级” -> 环境变量)

\2. 选中系统变量中的“path”,在path值开头处输入mysql安装目录下的bin文件夹所在路径:C:\Program Files\MySQL\MySQL Server 5.7\bin,保存退出

注意:mysql server安装的默认路径为:C:\Program Files\MySQL\MySQL Server 5.7

\3. 测试是否配置成功:打开cmd,输入“

mysql -u root -p”回车,然后输入mysql安装时设置的root账号的密码(123456),若提示“Welcome to the MySQL monitor.”说明配置成功了。

(3) 启动mysql服务;

管理员的身份运行cmd(或进入mysql目录),输入“net start xxx”(xxx 为自己在安装时设置的服务器名称)

(4) 创建表,并新增数据;

建议使用navicat运行.sql文件。

2、后端框架搭建

(1) 使用Maven搭建SpringBoot项目;

新建项目:

image-20211019140636959

​ 设置项目名:

image-20211019140707308

​ 创建好Maven项目之后如下:

image-20211019140722342

​ 设置Maven仓库及配置文件位置:

img

(2) 安装依赖,及MyBatis组件

将Maven管理项目下的pom.xml文件中添加以下依赖:

<!--spring boot启动父依赖-->
	<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
	<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

	<!--依赖-->
	<dependencies>
        <dependency>	<!--aop切面编程-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>
        
        <dependency>	<!--数据库-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        
        <dependency>	<!--java_Web项目-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        
        <dependency>	<!--项目健康监控-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        
        <dependency>	<!--java项目监控-->
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-server</artifactId>
            <version>2.1.0</version>
        </dependency>
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-client</artifactId>
            <version>2.1.0</version>
        </dependency>
        
        <dependency>	<!--javax扩展库_javaEE_Api-->
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>7.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>	<!--简化调用com和Win32程序库-->
            <groupId>com.jacob</groupId>
            <artifactId>jacob</artifactId>
            <version>1.19</version>
        </dependency>

        <dependency>	<!--Mybatis启动-->
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.0</version>
        </dependency>

        <dependency>	<!--日志文件-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j</artifactId>
            <version>1.3.8.RELEASE</version>
        </dependency>

        <dependency>	<!--测试-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>	<!--常用工具API集合-->
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.4</version>
        </dependency>
        
        <dependency>	<!--用于操作JAVA BEAN的工具包(Spring Bean是被实例的,组装的及被Spring 容器管理的Java对象)-->
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.4</version>
        </dependency>

        <dependency>	<!--mysql数据库连接-->
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.35</version>
        </dependency>
        
        <dependency>	<!-- alibaba的druid数据库连接池 -->
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.9</version>
        </dependency>

        <dependency>	<!--json字符简化操作-->
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-joda</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-parameter-names</artifactId>
        </dependency>
       
        <!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc4 -->
        <dependency>	<!--jdbc数据库连接-->
            <groupId>com.microsoft.sqlserver</groupId>
            <artifactId>sqljdbc4</artifactId>
            <version>4.0</version>
        </dependency>
        
        <!--开发者工具-->
        <dependency>	<!--热部署工具-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
        
        <dependency>	<!--前后端交互简化-->
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>
        

        <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
        <!--<dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.12</version>
        </dependency>-->

        <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
        <dependency>	<!--简化Json操作-->
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.58</version>
        </dependency>
        
        <dependency>	<!--针对Excel相关操作-->
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.17</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml-schemas</artifactId>
            <version>3.17</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.17</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>2.1.6</version>
        </dependency>

        <!-- hutool工具类 -->
        <dependency>	<!--国产良心工具包(很方便)-->
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.4.3</version>
        </dependency>


        <dependency>	<!--IO工具库-->
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
        </dependency>

        <dependency>	<!--代码打包-->
            <groupId>ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.6.5</version>
        </dependency>

        <dependency>	<!--绘制图表-->
            <groupId>org.jfree</groupId>
            <artifactId>jfreechart</artifactId>
            <version>1.5.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
        <dependency>	<!--简化集合等基础类型的创建-->
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>28.0-jre</version>
        </dependency>

        <dependency>	<!--简化JAVA_SDK安装-->
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.0.3</version>
        </dependency>
        
        <dependency>	<!--断言简化-->
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core</artifactId>
        </dependency>
        
        <dependency>	<!--简化代码-->
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.12</version>
        </dependency>
    </dependencies>
	
	
	<build>
        <finalName>ProjectLiberary</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- mybatis generator 自动生成代码插件 -->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    			
         <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
                    <overwrite>true</overwrite>
                    <verbose>true</verbose>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.1</version>
                <configuration>
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <targetPath>${project.build.directory}/classes</targetPath>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/logback.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

​ 添加Maven依赖之后,需要配置Spring Boot启动配置文件,启动类,Mybatis启动配置文件。

A. Spring Boot启动配置

  1. 在resources目录下创建application.yml文件,并配置启动文件为test;

  2. ……下创建application-test.yml文件,在此文件中,配置spring boot启动配置,如mybatis文件生成位置、spring容器配置、日志文件配置。(此操作是应对多种开发模式:比如开发者环境、测试环境、生产环境等)

  3. 创建spring boot启动类于java目录下,创建的包下:

image-20211019140544306

我的启动类的名称为: ProjectLiberaryApplication;

B. 日志配置文件

  1. 在resources目录下创建logback.xml,并配置。

C. Mybatis配置文件

  1. 在以上pom.xml文件中的<org.mybatis.generator>标签下的标签中显示的位置,创建MybatisGeneratorConfig.xml文件,即Mybatis数据库连接自动生成配置文件。

(3) 测试

将启动选项配置为选择的ProjectLiberaryApplication,启动。

若成功则会出现:

image-20211019140554941

3、前端框架搭建

搭建Vue框架

一、安装node环境

1、下载地址为:https://nodejs.org/en/

2、检查是否安装成功:如果输出版本号,说明我们安装node环境成功

img

3、为了提高我们的效率,可以使用淘宝的镜像:http://npm.taobao.org/

输入:npm install -g cnpm –registry=https://registry.npm.taobao.org,即可安装npm镜像,以后再用到npm的地方直接用cnpm来代替就好了。img

检查是否安装成功:

img

img

二、使用vue-cli

​ 1、安装vue-cli[5]服务,如果已经安装过需要卸载之前安装的较低的版本(1.x、2.x)

​ npm uninstall vue-cli -g //或者 yarn global remove vue-cli

​ 2、node.js需要使用8.9版本以上。

​ 3、安装vue-cli

​ cnpm install -g @vue/cli //或者yarn global add @vue/cli

​ 4、检查是否安装成功:

img

​ 5、创建项目,在想要搭建项目的位置打开控制台:

img

​ 根据可视化创建前端项目;

​ 或输入:vue create todo-app // todo-app是项目名

​ 直接生成vue项目

参考

[1] Maven 翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。Maven 也可被用于构建和管理各种项目,例如 C#,Ruby,Scala 和其他语言编写的项目。Maven 曾是 Jakarta 项目的子项目,现为由 Apache 软件基金会主持的独立 Apache 项目。

[2] MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。是一个基于Java提供的持久层框架包括SQL Maps和Data Access Objects(DAOs).

[3] Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

[4] 简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

[5] Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统,提供:

  • 通过 @vue/cli 实现的交互式的项目脚手架。
  • 通过 @vue/cli + @vue/cli-service-global 实现的零配置原型开发。
  • 一个运行时依赖 (@vue/cli-service),该依赖:
  • 可升级;
  • 基于 webpack 构建,并带有合理的默认配置;
  • 可以通过项目内的配置文件进行配置;
  • 可以通过插件进行扩展。
  • 一个丰富的官方插件集合,集成了前端生态中最好的工具。
  • 一套完全图形化的创建和管理 Vue.js 项目的用户界面。
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程简介:历经半个多月的时间,Debug亲自撸的 “企业员工角色权限管理平台” 终于完成了。正如字面意思,本课程讲解的是一个真正意义上的、企业级的项目实战,主要介绍了企业级应用系统中后端应用权限的管理,其中主要涵盖了六大核心业务模块、十几张数据库表。 其中的核心业务模块主要包括用户模块、部门模块、岗位模块、角色模块、菜单模块和系统日志模块;与此同时,Debug还亲自撸了额外的附属模块,包括字典管理模块、商品分类模块以及考勤管理模块等等,主要是为了更好地巩固相应的技术栈以及企业应用系统业务模块的开发流程! 核心技术栈列表: 值得介绍的是,本课程在技术栈层面涵盖了前端和后端的大部分常用技术,包括Spring Boot、Spring MVC、MybatisMybatis-Plus、Shiro(身份认证与资源授权跟会话等等)、Spring AOP、防止XSS攻击、防止SQL注入攻击、过滤器Filter、验证码Kaptcha、热部署插件Devtools、POI、Vue、LayUI、ElementUI、JQuery、HTML、Bootstrap、Freemarker、一键打包部署运行工具Wagon等等,如下图所示: 课程内容与收益: 总的来说,本课程是一门具有很强实践性质的“项目实战”课程,即“企业应用员工角色权限管理平台”,主要介绍了当前企业级应用系统中员工、部门、岗位、角色、权限、菜单以及其他实体模块的管理;其中,还重点讲解了如何基于Shiro的资源授权实现员工-角色-操作权限、员工-角色-数据权限的管理;在课程的最后,还介绍了如何实现一键打包上传部署运行项目等等。如下图所示为本权限管理平台的数据库设计图: 以下为项目整体的运行效果截图: 值得一提的是,在本课程中,Debug也向各位小伙伴介绍了如何在企业级应用系统业务模块的开发中,前端到后端再到数据库,最后再到服务器的上线部署运行等流程,如下图所示:
### 回答1: springboot+vue+mybatis是一种常见的Web开发技术栈,其中springboot是一种基于Spring框架的快速开发框架,vue是一种流行的前端框架,mybatis是一种Java持久层框架,用于与数据库进行交互。这种技术栈可以快速搭建一个高效、可靠的Web应用程序,适用于各种规模的项目。 ### 回答2: Spring Boot、VueMyBatis都是在Web应用程序开发中常用的技术栈。它们的组合可以有效提高Web应用程序的开发效率和代码质量。以下是对它们的简介。 Spring Boot是一个基于Spring Framework的开发框架,它可以让你快速创建和配置Spring应用程序。Spring Boot自带了许多可以快速启动和使用的开箱即用的组件,从而简化了应用程序的开发流程。Spring Boot专注于减少代码量,提供简便的配置和预设组件,使得开发人员不需要繁琐的配置过程和复杂的堆叠。 Vue是一种构建用户界面的JavaScript框架,是一种轻量级的MVVM框架。Vue提供了数据绑定、组件化系统、自定义指令等特性,使得我们可以更加高效地构建复杂的单页应用程序。Vue具有翻译能力和响应式行为,适合应用于大规模的企业级单页面Web应用。 MyBatis是一种基于Java语言的ORM框架,它可以将关系型数据库中的数据映射到Java对象中,并且提供了方便的CRUD操作,从而减少了应用程序对于SQL语句的编写和调试过程。MyBatis适用于对于数据关系和SQL控制有非常严格要求的大型企业级应用程序。 将Spring Boot、VueMyBatis组合在一起可以得到一个全面的Web应用程序技术栈。Spring Boot提供了基础的Web开发平台,MyBatis提供了数据持久化,而Vue则提供了一个现代化的用户界面。事实上,通过使用这个技术栈,我们可以使用Java/Kotlin构建强大的后端服务,同时使用Vue构建出非常流畅的前端体验。 总而言之,Spring Boot、VueMyBatis都是非常流行的Web应用程序开发技术栈,他们的优点相互弥补,能够为开发人员提供高效、高质量的Web应用程序。 ### 回答3: SpringbootVueMybatis都是应用于现代web应用的开源框架或工具。 Springboot是一个针对Spring框架的快速应用启动器,它可以让你更加快速地开发Spring应用程序,并且包含了很多常用组件,如Spring MVC、Spring Data等。它极大地简化了配置和集成,这使得开发者不必过多地关注程序的基础构建。 Vue是一个轻量级的JavaScript框架,用于构建现代、交互式的web用户界面。与React和Angular相比,Vue具有易学、易用、易扩展等特点。Vue拥有庞大的生态系统,可以便捷地集成到项目中,并提供了强大的应用开发功能,例如可复用组件、单文件组件、渐进式框架等。 Mybatis是一个面向Java应用程序的ORM框架,它极易于配置,且不会对代码进行过度封装,使得开发者可以在项目中自由地控制SQL。Mybatis与Spring非常配合,可以利用Spring的依赖注入来管理SQL Session。 现在将这些工具结合起来,可以创建出一个全栈应用程序框架。Springboot可以处理应用程序的所有基础需求,Vue可以构建应用程序的前端,Mybatis可以处理数据库操作。使用这些工具可以使得开发者更加容易和方便地创建一个功能强大的现代Web应用程序。 总之,SpringbootVueMybatis在其各自领域内都是强大的工具,他们的结合可以让开发人员更轻松地构建出完整的web应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值