2023-12-25 基础框架搭建
各个模版文件
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
登陆 实现 ------
![](https://img.haomeiwen.com/i2673147/24d9d2cd4356b2b6.png)
![](https://img.haomeiwen.com/i2673147/3b15c363657e38d4.png)
![](https://img.haomeiwen.com/i2673147/ec206f5a35377d7a.png)
![](https://img.haomeiwen.com/i2673147/52ae4915e036aeb5.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);
}
}
- 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>