【后端 · 初学】使用IDEA新建一个Springboot项目

1 【new project】=》【Spring boot】 =》配置项目的名称和存放位置,type选择【maven】。 选择jdk,最好大于等于17.
在这里插入图片描述
2 选择需要的依赖,本项目使用mybatis-plus,所以不需要添加mybatis的依赖。选择完成点击create即可。
在这里插入图片描述
3 修改pom.xml,下面是一份验证过没有问题的依赖配置。由于不同版本的依赖之间经常出现各种问题,因此最好不要随意修改。最新版的mybatis-plus直接引入mybatis-plus-spring-boot3-starter即可,无需再排除mybatis-spring并单独引入。

<!--  当前项目依赖的第三方 框架  start   -->
    <dependencies>
        <!--SpringBoot 默认依赖的内容  start       -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--SpringBoot 默认依赖的内容  end       -->


        <!-- Spring Web引用 SpringMVC  start      -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- Spring Web引用 SpringMVC  end      -->

        <!-- 热部署  start   -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <!-- 热部署  end     -->


        <!-- 数据库 持久层 Mybatis-plus  start      -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
            <version>3.5.7</version>
        </dependency>
        <!-- 数据库 持久层 Mybatis-plus end      -->

        <!--mysql 驱动依赖  start        -->
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <version>8.0.33</version>
        </dependency>
        <!--mysql 驱动依赖  end        -->

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>


        <!-- json 数据转化      -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>2.0.7.graal</version>
        </dependency>
        <!-- json 数据转化      -->

        <!--登录令牌  token        -->
        <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.19.2</version>
        </dependency>
        <!--登录令牌  token        -->


        <!--文件上传 start -->
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.5</version>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.15.1</version>
        </dependency>
        <!-- 文件上传 end  -->


        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.7</version>
        </dependency>

        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.28</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.1</version>
        </dependency>
    </dependencies>
    <!--  当前项目依赖的第三方 框架  start   -->

4 建包分层:控制器 —— 业务逻辑 —— 持久层 —— DB

  • 实体层 pojo bean entity
  • 持久层 dao mapper
  • 业务逻辑层 service
  • 控制层 controller
  • 拦截器 interceptor
  • 配置 config
  • 工具包utils

5 给项目配置属性文件 application.yml

    spring:
      application:
        name: MobileBankingSystem

      # 数据库配置
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/bank
        username: root
        password: 1234

      # 静态文件路径
      mvc:
        static-path-pattern: /static/**
      web:
        resources:
          static-locations: /static/**

      # 文件上传大小
      servlet:
        multipart:
          max-file-size: 1MB
          max-request-size: 10MB

    # 端口
    server:
      port: 8080

    # mybatis-plus
    mybatis-plus:
      configuration:
        # 日志
        log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
      global-config:
        # 逻辑删除
        db-config:
          logic-not-delete-value: 1
          logic-delete-value: 0

    # 日志
    logging:
      level:
        web: debug
        sql: debug

6 使用代码生成器,生成基础代码

  		<!-- 代码生成器 start      -->
          <dependency>
              <groupId>com.baomidou</groupId>
              <artifactId>mybatis-plus-generator</artifactId>
              <version>3.5.7</version>
          </dependency>
          <!-- 代码生成器 end      -->

          <!-- 代码模板 start      -->
          <dependency>
              <groupId>org.freemarker</groupId>
              <artifactId>freemarker</artifactId>
              <version>2.3.28</version>
              <scope>compile</scope>
          </dependency>
          <!-- 代码模板 end      -->
  • MobileBankingSystemApplicationTests中写一个方法,生成基础代码
 // 将url、username、password改成数据库的具体配置
      FastAutoGenerator.create("url", "username", "password")
              .globalConfig(builder -> builder
                      .author("Baomidou")		// 作者改成自己
                      .outputDir(Paths.get(System.getProperty("user.dir")) + "/src/main/java") // 可以直接填个固定地址,暂时存放生成的代码
                      .commentDate("yyyy-MM-dd")
              )
              .packageConfig(builder -> builder
                      .parent("com.baomidou.mybatisplus")		// 修改根包
                      .entity("entity")		
                      .mapper("mapper")
                      .service("service")
                      .serviceImpl("service.impl")
                      .xml("mapper.xml")						// 可以自行增减或者修改包名
              )
              .strategyConfig(builder -> builder
                      .entityBuilder()
                      .enableLombok()
              )
              .templateEngine(new FreemarkerTemplateEngine())	// 代码模板,mybatis-plus支持四个
              .execute();
  • 执行单元测试方法生成代码

6 在主程序入口类加上自动扫描注解@MapperScan("com.sheep.mobilebankingsystem.mapper")

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值