springboot项目创建整个完成过程和注意事项

这篇具有很好参考价值的文章主要介绍了springboot项目创建整个完成过程和注意事项。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1:application.yml文件配置

server:
  port: 8088
  servlet:
    context-path: /test
spring:
  datasource:
    name: text  #????
    url: jdbc:mysql://localhost:3306/dsdd?serverTimezone=GMT&useUnicode=true&characterEncoding=utf-8&useSSL=true
    username: root  #??
    password: root  #??
    #要添加mysql-connector-java依赖
    driver-class-name: com.mysql.cj.jdbc.Driver  #????com.mysql.jdbc.Driver


mybatis-plus:
  #这个作用是扫描xml文件生效可以和mapper接口文件使用,
  #如果不加这个,就无法使用xml里面的sql语句
  #启动类加了@MapperScan是扫描指定包下mapper接口生效,如果不用@MapperScan可以在每一个mapper接口添加@Mapper注解
  mapper-locations: classpath*:com/example/poi/mapper/**/xml/*Mapper.xml
  global-config:
    # 关闭MP3.0自带的banner
    banner: false
    db-config:
      #主键类型
      id-type: ASSIGN_ID
      # 默认数据库表下划线命名
      table-underline: true
  configuration:
    # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    # 返回类型为Map,显示null对应的字段
    call-setters-on-nulls: true

logging:
  level:
  	# 日记级别,设置的越小捕抓的信息越多 trace<debug<info<warn<error
    #root 键指定了根日志记录器的级别为 INFO
    root: INFO
    #com.baomidou.mybatisplus 包下的日志记录器级别为 DEBUG
    com.baomidou.mybatisplus: INFO
  file:
  	#保留了最近 30 天的日志
    max-history: 30
    #每个日记大小,当日记达到100M但还没到达下一天就生成一个新的文件按i序号
    max-size: 100MB
    #保存日记实际路径,确保指定的路径对应的目录已存在,并具有具有的写入权限
    pattern: /home/app/logs//mybatis-%d{yyyy-MM-dd}-%i.log
    #设置日志文件夹存储总大小的上限,超过就删除旧的
    total-size-cap: 1GB

2:pom.xml文件依赖管理,web服务必须按以下依赖

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>poi</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>poi</name>
    <description>poi</description>
    <properties>
        <java.version>8</java.version>
    </properties>
    <dependencies>
    
        <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>
        
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>

        <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.13</version>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        
    </dependencies>

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

        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.yml</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>

    </build>

</project>

注意:1-使用web服务controller访问必须导入以下依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

注意:2-使用mybatis-plus必须导入以下依赖(不要使用spring的mybatis,不然和spring本身数据库管理冲突,还有就是注意使用springboot版本和mybatis版本问题,建议都是使用mybatis-plus,不然使用mybatis可能出现sqlFactory找不到等问题)

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>

注意:3-打开项目的target目录,观察里面是否有对应的××Mapper.xml文件,若没有,则在pom.xml文件中加入如下配置

	<build>
		<resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.yml</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>

3:项目结构图

springboot项目创建整个完成过程和注意事项,spring boot,后端,java文章来源地址https://www.toymoban.com/news/detail-593097.html

4:启动类

package com.example.poi;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan(basePackages = "com.example.poi.mapper")
public class PoiApplication {
    public static void main(String[] args) {
        SpringApplication.run(PoiApplication.class, args);
    }
}

5:controller类

package com.example.poi.controller;

import com.example.poi.service.ITest;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;

/**
 * @Author xu
 * @create 2023/7/5 01
 */

@RestController
@RequestMapping("/customDemo")
public class DemoTwoController {

    @Resource
    ITest iTest;

    @GetMapping("/export")
    public void exportExcel(HttpServletResponse response) {

        String age = "20";
        String phone = iTest.getPhone(age);
    }
}

6:service和impl类

package com.example.poi.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.poi.entity.EntityDemo;

/**
 * @Author xu
 * @create 2023/7/14 22
 */
public interface ITest extends IService<EntityDemo> {

    String getPhone(String age);

}

package com.example.poi.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.poi.entity.EntityDemo;
import com.example.poi.mapper.TestMapper;
import com.example.poi.service.ITest;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @Author xu
 * @create 2023/7/14 22
 */
@Service
public class TestImpl extends ServiceImpl<TestMapper, EntityDemo> implements ITest {

    @Resource
    TestMapper testMapper;

    @Override
    public String getPhone(String age) {

        EntityDemo list = testMapper.selectName();

        this.baseMapper.selectOne(new LambdaQueryWrapper<EntityDemo>().eq(EntityDemo::getAge, age));


        return "entityDemo.getPhone()";
    }
}

7:mapper类和xml文件

package com.example.poi.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.poi.entity.EntityDemo;

/**
 * @Author xu
 * @create 2023/7/14 22
 */
//@Mapper
public interface TestMapper  extends BaseMapper<EntityDemo> {


    //@Select("select * from entity_demo where age='20'")
    EntityDemo selectName();
}

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.poi.mapper.TestMapper">

    <select id="selectName" resultType="com.example.poi.entity.EntityDemo">
        select * from entity_demo where age='20'
    </select>
</mapper>

8:注册mybati-plus分页拦截器(不注册这个,分页是失效)

//拦截器
@Configuration  //第一步:配置类  交给Spring管理  确保在启动类的包或子包下,才能被扫描到
public class NPCConfig {
//        第二步:做对应Bean
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
//        第三步:创建拦截器(这只是一个壳子)
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
//        第四步:添加内部拦截器  (分页的)
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
//        可以添加多个内部拦截器
        return interceptor;
    }
}

到了这里,关于springboot项目创建整个完成过程和注意事项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Informatica9.6.1安装全过程及注意事项

    点击   Mr.绵羊的知识星球 解锁更多优质文章。 目录 一、环境 二、注意事项 三、安装流程 四、遇到的坑 说在前面: 如何下载和安装下面的大佬文章中有。本文主要介绍我的安装总结和碰到的问题。可以结合下面的注意事项进行安装,避免踩坑。 系统: windows10 64bit oracl

    2024年02月05日
    浏览(34)
  • win11安装ubuntu 子系统安装过程及注意事项

    第一步 :安装系统必须组件 由于子系统是系统自带组件,需要安装软件支持 第二步:应用商店安装 ubuntu 编辑 编辑 这个时候打开会报错 第三步,运行linux子系统 选择Windows PowerShell 以管理员身份运行) 输入:Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linu

    2024年02月11日
    浏览(39)
  • STM32cubeMX配置工程(全过程+修改MCU方法+注意事项)

    1.修改默认的固件包下载路径,避免占用C盘空间 2、选择ACCESS TO MCU 3、在跳出的界面中的Part Number中搜索对应的芯片型号 4、选好后在右下角双击对应的芯片,然后跳出配置界面 左边可以配置外设,右边可以配置每个IO口的功能 System Core包括GPIO、RCC时钟、看门狗、DMA等系统外设

    2024年02月17日
    浏览(55)
  • 全球首个 AI 超级工程师:拥有全栈技能,一个指令就能完成整个开发过程

    全球首位AI软件工程师Devin是由初创公司Cognition推出的,它被认为是世界上第一个完全自主的AI软件工程师[2][15]。Devin具备强大的编程和软件开发能力,能够在多个方面协助或完全独立地完成软件开发任务[15]。它的核心能力包括自学新语言、开发迭代App、自动Debug等[8][10],并且

    2024年04月09日
    浏览(84)
  • Windows下关于windbg 调试 dump文件过程的环境配置以及注意事项

    在windows下,异常的调试很便捷,除了使用vs调试外还可以使用微软的windbg,windbg一般在安装vs的时候可以选装(windows开发套件),如果你是使用vs的开发者,那可以去磁盘中搜索windbg.exe看看有没有在安装vs的时候安装windbg,如图: 如果没有安装windbg也没关系,可以去微软的官网下载 下载

    2024年02月09日
    浏览(50)
  • STM32:利用PWM波控制飞盈电调过程和注意事项

    在进行模型控制的过程中,如四旋翼无人机等,需要用到电机,这些电机需要通过电调来控制电机的转速。在电调模块中带有的说明书一般都是利用遥控器进行控制,有些情况需要自己通过信号控制电调,而非遥控器,这个时候需要用到单片机生成PWM波。 电调的型号和种类繁

    2024年02月16日
    浏览(34)
  • Linux 软链接的创建、修改和删除方法及注意事项

    在 Linux 中,可以使用  ln -s [源文件] [软链接文件]  的命令来创建软链接。 首先,打开终端并进入目标路径,可以使用  pwd  命令查看当前路径。 使用  mkdir  命令创建一个名为  test  的目录,并使用  touch  命令在该目录下创建两个测试文件,分别为  test.txt  和  val.tx

    2024年02月12日
    浏览(45)
  • SpringBoot 事务回滚注意事项

    参考资料 导致 Spring 事务失效常见的几种情况 SpringBoot2异常处理回滚事务详解(自动回滚/手动回滚/部分回滚) Spring,为内部方法新起一个事务,此处应有坑。 PlatformTransactionManager Spring 事务管理及失效总结 我认真总结并分析了 Spring 事务失效的十种常见场景 SpringBoot AOP配置全

    2024年02月14日
    浏览(37)
  • C# Solidworks二次开发:自动创建虚拟零件及使用注意事项

    今天要讲的是关于在solidworks中如何自动创建虚拟零件的功能,也就是solidworks中插入新零件这个功能。 实现这个功能需要使用的API如下所示: InsertNewVirtualPart(swFaceOrPlane1, out swcomp2); 其中这个方法中使用到了两个参数。 第一个参数:为一个平面,或是一个基准平面。 第二

    2024年02月15日
    浏览(60)
  • Linux mkdir命令教程:如何创建目录(附实例详解和注意事项)

    mkdir 命令在Linux系统中用于创建新的目录。 mkdir 是\\\"make directory\\\"的缩写,它可以帮助您通过一条命令就能创建目录。 mkdir 命令在所有主流的Linux发行版中都可以使用,包括但不限于Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora、Raspbian。这个命令是预装在这些系统中

    2024年04月22日
    浏览(88)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包