学之思项目第一天-完成项目搭建

本文讲述了如何在前后端分离项目中使用Maven搭建父子模块,解决依赖配置问题,如依赖导入、版本冲突和IDEA设置,重点介绍了SpringBoot的依赖管理和第三方库的集成。
摘要由CSDN通过智能技术生成

一、前端

拉下前端代码执行 npm i 然后执行npm run serve就行了

二、后端

搭建父子模块

因为这个涉及到前台以及后台管理所以使用父子模块

并且放置一个公共模块,放置公共的依赖以及公共的代码

2.1 搭建父子工程

这个可以使用直接一个个的maven模块,然后变成boot模块。也可以直接使用初始化器

2.2 出现的问题

1. maven idea忘记配置

导致maven加载依赖,一直加载
2. 自己创建导致的maven编译插件找不到
3. 使用boot初始化器,没有src等结构

这个就是个bug,一下有一下没有

4. 依赖爆红

这里试了很多次,最终就按照SGBlog项目那样的依赖管理就行了,其实parent应该也行,初始化器的方式。但是好像还是不太好,以后写项目就用dependence的方式就行了,什么都不要管,博客、谷粒都是这么写的,以后无非就是这种前后端分离或者是分布式的微服务都行了。

注意这里的dependence导入了就不能在本pom中再导了,得在其子pom导,比如导starter-web starter-security等

5. 依赖导入很慢,卡顿状态

6. 这个我最终是通过在创建项目的时候就将idea的maven配置好解决的。这解决了最后的maven一直不成功

最终搭建好后,将一些 生成的实体类、mapper接口 xml文件、service impl放到common模块中

发现 service的bean一直找不到,注入到controller中的service bean 

后面通过在common中添加aop starter解决

三、思考总结

反正就按照博客那样的maven配置就行了。

1、在父工程中写上 boot-starter-dependence依赖 再配置上需要进行依赖管理的第三方依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>


    <groupId>com.sq</groupId>
    <artifactId>xzs</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <modules>
        <module>xzs-student</module>
        <module>xzs-common</module>
        <module>xzs-admin</module>
    </modules>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>



    <dependencyManagement>
        <dependencies>
            <!-- SpringBoot的依赖配置-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.5.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--fastjson依赖-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.33</version>
            </dependency>
            <!--jwt依赖-->
            <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <version>0.9.0</version>
            </dependency>
            <!--mybatisPlus依赖-->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.4.3</version>
            </dependency>

            <!--阿里云OSS-->
            <dependency>
                <groupId>com.aliyun.oss</groupId>
                <artifactId>aliyun-sdk-oss</artifactId>
                <version>3.10.2</version>
            </dependency>


            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>easyexcel</artifactId>
                <version>3.0.5</version>
            </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>
        </dependencies>
    </dependencyManagement>

<!--    <build>-->
<!--        <plugins>-->
<!--            <plugin>-->
<!--                <groupId>org.springframework.boot</groupId>-->
<!--                <artifactId>spring-boot-maven-plugin</artifactId>-->
<!--            </plugin>-->
<!--        </plugins>-->
<!--    </build>-->

</project>

2. 在common中导入需要用到的 spring家族的starter 以及 第三方依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.sq</groupId>
        <artifactId>xzs</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <artifactId>xzs-common</artifactId>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <!--短信服务-->
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>dysmsapi20170525</artifactId>
        </dependency>

        <dependency>
            <groupId>com.aliyun.oss</groupId>
            <artifactId>aliyun-sdk-oss</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <!--AOP-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

    </dependencies>

</project>

3, 在各个子模块中导入common模块

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.sq</groupId>
        <artifactId>xzs</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <artifactId>xzs-student</artifactId>


    <dependencies>
        <dependency>
            <groupId>com.sq</groupId>
            <artifactId>xzs-common</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
    </dependencies>

</project>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值