2023-12-25 基础框架搭建

2023-12-27  本文已影响0人  大也

各个模版文件
yaml ######### 2023-12-25 application.yaml 模版配置
main ######### 2023-12-25 main 启动类模版
mybatis-config ######### 2023-12-25 mybatis-config.xml 模版
logback ######### 2023-12-25logback-spring.xml 模版
mapper.xml ######### 2023-12-25 mapper.xml 模版
RespondResult ######### 2023-12-25 实体类返回对象模版
Knife4j ######### 2023-12-26 Swagger/Knife4j 模版类
GlobalExceptionHandler ## 2023-12-26 全局/自定义异常模版GlobalExceptionHandler

登陆 实现 ------

image.png
image.png
image.png image.png

1.搞好pom 写yaml 再主启动 再业务
1)pom
最好也写一个 pom 模版类 ing

<dependencies>

        <!-- spring boot web开发所需要的起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- redis的起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

        <!-- mybatis的起步依赖 -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
        </dependency>

        <!-- mysql驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

        <!-- common-service依赖 -->
        <dependency>
            <groupId>com.atguigu</groupId>
            <artifactId>common-service</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

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

        <!-- 分页插件-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.3</version>
        </dependency>
    </dependencies>

2)yaml
看了下 发现自己还没有 yaml 模版 现写一个
2023-12-25 application.yaml 模版配置
这里是yaml

spring:
  application:
    name: server-manager
  profiles:
    active: dev

yaml dev

server:
  port: 8501

# 配置数据库连接信息
spring:
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    #需要虚拟机的地址
#    url: jdbc:mysql://localhost:3306/db_spzx?characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true
    url: jdbc:mysql://localhost:3306/db_spzx?characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true
    username: root
    password: a123456
  # Redis的相关配置
  data:
    redis:
      #需要虚拟机的地址
      host: localhost
      port: 6379
#  password: 1234

mybatis的配置

mybatis:
config-location: classpath:/mybatis-config.xml
mapper-locations: classpath:/mapper//.xml

3)主启动
2023-12-25 启动类模版

这里是
@SpringBootApplication
public class ManagerApplication {
    public static void main(String[] args) {
        SpringApplication.run(ManagerApplication.class,args);
    }
}
  1. 3层 架构 controller / mapper /server(serverImpl)
    1)controller

@Tag(name = "用户接口")
@RestController
@RequestMapping(value = "/admin/system/index")
public class IndexController {
}
2)server
public interface SysUserService {
    /**
     * 根据用户名查询用户数据
     * @return
     */
    public abstract LoginVo login(LoginDto loginDto) ;
}

2.1)serverImpl

@Service
public class SysUserServiceImpl implements SysUserService {
    @Override
    public LoginVo login(LoginDto loginDto) {
        return null;
    }
}

3)mapper

@Mapper
public abstract class SysUserMapper {
    /**
     * 根据用户名查询用户数据
     * @param userName
     * @return
     */
    public abstract SysUser selectByUserName(String userName) ;
}

3.1)mapper.xml

<?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.atguigu.spzx.manager.mapper.SysUserMapper">

    <!-- 用于select查询公用抽取的列 -->
    <sql id="columns">
        id,username userName ,password,name,phone,avatar,description,status,create_time,update_time,is_deleted
    </sql>

    <select id="selectUserInfoByUserName" resultType="com.atguigu.spzx.model.entity.system.SysUser">
        select <include refid="columns" /> from sys_user where username = #{userName} and is_deleted = 0
    </select>

</mapper>

logback-spring.xml 和 mybatis-config.xml
logback-spring.xml
2023-12-25logback-spring.xml 模版

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <contextName>logback</contextName>

    <!-- 日志的输出目录 -->
    <property name="log.path" value="D://logs//spzx-manager//logs" />

    <!--控制台日志格式:彩色日志-->
    <!-- magenta:洋红 -->
    <!-- boldMagenta:粗红-->
    <!-- cyan:青色 -->
    <!-- white:白色 -->
    <!-- magenta:洋红 -->
    <property name="CONSOLE_LOG_PATTERN" value="%yellow(%date{yyyy-MM-dd HH:mm:ss}) %highlight([%-5level]) %green(%logger) %msg%n"/>

    <!--文件日志格式-->
    <property name="FILE_LOG_PATTERN" value="%date{yyyy-MM-dd HH:mm:ss} [%-5level] %thread %file:%line %logger %msg%n" />

    <!--编码-->
    <property name="ENCODING" value="UTF-8" />

    <!-- 控制台日志 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <!-- 临界值过滤器 -->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>INFO</level>
        </filter>
        <encoder>
            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
            <charset>${ENCODING}</charset>
        </encoder>
    </appender>

    <!-- 文件日志 -->
    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>${log.path}//log.log</file>
        <append>true</append>
        <encoder>
            <pattern>%date{yyyy-MM-dd HH:mm:ss} %msg%n</pattern>
            <charset>${ENCODING}</charset>
        </encoder>
    </appender>

    <!-- 开发环境 -->
    <springProfile name="dev">
        <!-- com.atguigu日志记录器:业务程序INFO级别  -->
        <logger name="com.atguigu" level="INFO" />
        <!-- 根日志记录器:INFO级别  -->
        <root level="INFO">
            <appender-ref ref="CONSOLE" />
            <appender-ref ref="FILE" />
        </root>
    </springProfile>
</configuration>

mybatis-config.xml
2023-12-25 mybatis-config.xml 模版

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC
        "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <!-- 设置驼峰标识 -->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
        <!-- 打印SQL语句 -->
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>
    <plugins>
        <!-- 分页插件 -->
        <plugin interceptor="com.github.pagehelper.PageInterceptor"/>
    </plugins>
</configuration>
上一篇 下一篇

猜你喜欢

热点阅读