当前位置: 首页 > news >正文

wap网站制作软件企业简介内容

wap网站制作软件,企业简介内容,淮安哪里有做网站的,网站是专门对生活中的一些所谓常识做辟谣的快速搭建SpringBoot3.x项目 写在前面一、创建项目二、配置多环境三、连接数据库查询数据3.1 新建数据库mybatisdemo并且创建sys_user表3.2 创建实体类3.2 创建Mapper接口3.3 添加mybatis.xml文件3.4 新建service 接口及实现类3.5 创建Controller 四、封装统一结果返回4.1 定义 … 快速搭建SpringBoot3.x项目 写在前面一、创建项目二、配置多环境三、连接数据库查询数据3.1 新建数据库mybatisdemo并且创建sys_user表3.2 创建实体类3.2 创建Mapper接口3.3 添加mybatis.xml文件3.4 新建service 接口及实现类3.5 创建Controller 四、封装统一结果返回4.1 定义 IResultCode 的接口4.2 定义了一个枚举类 ResultCode4.3 定义统一响应结构体 五、定义值对象VO5.1 定义VO5.2 service 改造5.3 接口测试 六、日期时间处理七、统一异常处理7.1 添加自定义异常与其他异常返回结果7.2 自定义异常7.3 全局异常处理7.4 测试异常处理 八、添加系统日志8.1 常用日志框架8.2 日志常用配置8.3 日志基本使用8.4 日志高级配置 九、小结 写在前面 上一小节中我们从0到1 使用Vite搭建了一个Vue3项目并集成了Element Plus 实现了一个简单的增删改查页面。 这一篇中我们将使用IDEA快速搭建一个SpringBoot3.x的项目。 一、创建项目 1、File-new-project 2、选择“Spring Initializr”点击next 3、选择spring boot版本及添加相关依赖 这一步我们需要选择springboot版本及Dependencies信息当然了Dependencies 不是必须选择的。可以在项目建好之后需要什么添加什么。 简要说明我们这里选择了四个Dependencies Lombok : 需要我们先安装Lombok插件可以简化实体类书写String Web添加项目的web支持MySQL Driver我们用到MySQL数据库所以添加MySQL相关驱动MyBatis Framework我们用到MyBatis这一ORM框架操作数据库 4、创建好的项目结构 5、配置Maven 在这里配置本地Maven本地路径、Maven仓库。在本地Maven的settings.xml中会配置maven的镜像资源等信息 6、 下载相关依赖 在这里我们下载之前配置好的依赖一般项目创建后会默认下载 二、配置多环境 在实际开发中我们一般都会有好几套运行环境。比如①开发环境 ②测试环境 ③ 生产环境等等 我们不可能每次都去修改一个配置文件这就显得很麻烦。下面我们主要说一说怎么配置多环境 ① 修改application.properties 配置文件 idea创建的springboot项目默认的配置文件是application.properties。我们这里将application.properties修改成application.yml。 为什么这么修改呢因为yml文件配置起来比较方便可以省略好多冗余内容当然了你不改也是没啥问题的。 修改后的applicatio.yml文件如下通过active:属性来切换环境 spring:application:name: springbootdemoprofiles:active: dev②添加开发环境配置 新建application-dev.yml 文件在这里我们就可以配置开发环境下的端口数据库连接等信息具体内容如下 server.port 属性指定应用程序在服务器上监听的端口号。这里设置为8080spring.datasource 属性配置应用程序与数据库的连接 driver-class-name 指定数据库驱动程序的类名url 指定数据库的连接地址这里是本地MySQL数据库的地址和端口号以及数据库名称username 和 password 分别指定连接数据库所需的用户名和密码 spring.mybatis.mapper-locations 属性指定MyBatis映射器XML文件的位置。这里配置为 classpath:mapper/*.xml 表示映射器文件位于classpath下的mapper目录中 server:port: 8080 # 配置端口为8080spring:datasource:driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3308/test?useUnicodetruecharacterEncodingutf-8useSSLfalseusername: rootpassword: 123456 mybatis:mapper-locations: classpath:mapper/*.xml③ 添加生产环境配置 新建application-prod.yml文件这里配置的是生产环境。具体内容如下配置一样的只是各种换成了生产的 server:port: 8989spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://www.xiezhrspace.cn:3308/mybatisdemo?useUnicodetruecharacterEncodingutf-8useSSLfalseusername: rootpassword: 123456 mybatis:mapper-locations: classpath:mapper/*.xml 以上配置好之后我们就可以启动springboot项目 浏览器输入http://localhost:8080 后出现如下内容说明项目启动成功 三、连接数据库查询数据 通过之前的步骤我们的springboot项目已经可以正常运行起来了接下来我们就从数据库中获取数据并通过json格式返回前台 3.1 新建数据库mybatisdemo并且创建sys_user表 DROP TABLE IF EXISTS sys_user; CREATE TABLE sys_user (id int(0) NOT NULL AUTO_INCREMENT COMMENT 主键id,username varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 用户名,nickname varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户昵称,password varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户密码,sex enum(1,2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户性别,birthday date NULL DEFAULT NULL COMMENT 用户生日,email varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户邮箱,phone varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户电话,addr varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户地址,stop_flag enum(1,0) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 用户启用标志,create_time datetime(0) NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT 用户创建时间,update_time datetime(0) NULL DEFAULT NULL COMMENT 用户更新时间,PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 3 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci ROW_FORMAT Dynamic;INSERT INTO sys_user VALUES (1, xiezhr, 程序员小凡, 12345678, 1, 1999-09-19, xiezhrqq.com, 13288888888, 云南省昆明市, 0, 2023-09-04 21:08:32, NULL); INSERT INTO sys_user VALUES (2, xiaoqi, 程序员晓柒, 123456, 1, 2020-10-04, xiaoqi163.com, 13288888888, 云南文山, 0, 2023-09-04 21:09:42, NULL); INSERT INTO sys_user VALUES (3, xiaodeng, 财务小邓, 123456, 2, 2019-09-04, xiaodengqq.com, 13588888888, 云南文山, 0, 2023-09-04 21:10:43, NULL); 3.2 创建实体类 创建与表结构一致的实体类SysUser Data 是Lombok依赖的注解使用它我们就不用写get、set方法了 Data public class SysUser implements Serializable {private static final long serialVersionUID 526934774547561999L;/*** 主键id*/private Integer id;/*** 用户名*/private String username;/*** 用户昵称*/private String nickname;/*** 用户密码*/private String password;/*** 用户性别*/private String sex;/*** 用户生日*/private Date birthday;/*** 用户邮箱*/private String email;/*** 用户电话*/private String phone;/*** 用户地址*/private String addr;/*** 用户启用标志*/private String stopFlag;/*** 用户创建时间*/private Date createTime;/*** 用户更新时间*/private Date updateTime;} 3.2 创建Mapper接口 数据访问对象,是MVC架构中负责与数据库进行交互的组件。它封装了数据库的访问操作提供给Service层调用。Dao层通常包含一系列方法用于对数据库进行增删改查操作以及与数据库的连接、事务管理等。 Mapper 表示这个接口是一个MyBatis的Mapper接口用于定义数据库操作的方法 Mapper public interface SysUserMapper {ListSysUser querySyserList(); }3.3 添加mybatis.xml文件 MyBatis的映射文件mapper用于操作数据库中的sys_user表。其中定义了一个resultMap用于映射查询结果到SysUser对象还定义了一个select语句用于查询sys_user表中的所有用户信息。 id“querySyserList” 必须与mapper接口中方法名一致 ?xml version1.0 encodingUTF-8? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespacecom.xiezhr.mapper.SysUserMapperresultMap typecom.xiezhr.model.entity.SysUser idSysUserMapresult propertyid columnid jdbcTypeINTEGER/result propertyusername columnusername jdbcTypeVARCHAR/result propertynickname columnnickname jdbcTypeVARCHAR/result propertypassword columnpassword jdbcTypeVARCHAR/result propertysex columnsex jdbcTypeVARCHAR/result propertybirthday columnbirthday jdbcTypeTIMESTAMP/result propertyemail columnemail jdbcTypeVARCHAR/result propertyphone columnphone jdbcTypeVARCHAR/result propertyaddr columnaddr jdbcTypeVARCHAR/result propertystopFlag columnstop_flag jdbcTypeVARCHAR/result propertycreateTime columncreate_time jdbcTypeTIMESTAMP/result propertyupdateTime columnupdate_time jdbcTypeTIMESTAMP//resultMap!--查询所有用户信息--select idquerySyserList resultMapSysUserMapselect * from sys_user/select /mapper3.4 新建service 接口及实现类 Service是MVC架构中负责处理业务逻辑的组件。它封装了业务逻辑的实现细节提供给Controller调用。Service层通常包含一系列方法用于处理各种业务需求如数据处理、事务管理、业务规则校验等。 SysUserService public interface SysUserService {ListSysUser querySyserList(); }SysUserServiceImpl Service 标识这个类是服务层Service的组件用于实现业务逻辑的封装和管理。以便Spring容器能够扫描并将其实例化为一个Bean并将其纳入到Spring的管理中。通过Service注解可以方便地进行依赖注入、事务管理等操作Resource 标识一个类或对象需要被注入到另一个类中用于实现依赖注入 Service public class SysUserServiceImpl implements SysUserService {Resourceprivate SysUserMapper userMapper;Overridepublic ListSysUser querySyserList() {return userMapper.querySyserList();} }3.5 创建Controller Controller是MVC架构中负责接收用户请求并处理的组件。它接收来自用户的请求并根据请求的内容调用相应的Service方法进行业务处理然后返回结果给用户。Controller通常负责路由请求、参数验证、调用Service等操作 SysUserController RestController用于标识一个类是RESTful风格的控制器结合了Controller和ResponseBody注解的功能用于处理HTTP请求并返回RESTful风格的响应RequestMapping用于映射HTTP请求到控制器的处理方法指定请求的URL路径和请求方法Autowired用于自动装配依赖对象 RestController RequestMapping(/sysUser) public class SysUserController {Autowiredprivate SysUserService sysUserService;RequestMapping(value /querySysUser,method RequestMethod.GET)public ListSysUser querySysUser(){return sysUserService.querySyserList();} }到此我们三大组件的代码都写完了接下来我们来看看我们写好的接口 浏览器地址栏输入http://localhost:8080/sysUser/querySysUser 四、封装统一结果返回 为了保证所有接口返回的数据格式一致减少重复代码编写。我们将对返回结果进行统一处理。 具体返回结果格式如下 {code: 200, // 状态码表示请求的处理结果message: 请求成功, // 状态消息对请求结果的简要描述data: { // 数据对象用于存储具体的返回数据key1: value1,key2: value2} }code 表示请求的处理结果一般采用HTTP状态码或自定义的业务状态码message 对请求结果的简要描述通常是一个字符串data 用于存储具体的返回数据可以是一个对象、数组或其他类型的数据 4.1 定义 IResultCode 的接口 它位于 com.xiezhr.common.result 包中,可以由不同的类来实现,实现一致且统一的结果码和消息的处理和返回 package com.xiezhr.common.result;public interface IResultCode {String getCode();String getMsg(); }getCode() : 这个方法返回一个 String 类型的结果码getMsg() : 这个方法返回一个 String 类型的结果消息 4.2 定义了一个枚举类 ResultCode 定义了一个枚举类 ResultCode 它实现了 IResultCode 接口并包含了一些常见的响应码和对应的消息。 AllArgsConstructor NoArgsConstructor public enum ResultCode implements IResultCode, Serializable {SUCCESS(200,成功),NOT_FOUND(404,未找到),INTERNAL_SERVER_ERROR(500,服务器内部错误), ;private String code;private String msg;Overridepublic String getCode() {return code;}Overridepublic String getMsg() {return msg;} } 定义系统中常见的响应码和对应的消息用于表示不同的业务场景或操作的执行结果 每个枚举常量都包含一个 code 和一个 msg 分别表示响应码和消息内容 枚举常量包括了一些常见的响应码如 SUCCESS 表示成功 INTERNAL_SERVER_ERROR 服务器内部错误 NOT_FOUND 表示未找到 4.3 定义统一响应结构体 定义了一个名为 Result 的类用于表示统一的响应结构体 Data public class ResultT implements Serializable {private static final long serialVersionUID 1L;private String code;private String msg;private T data;public staticT ResultT success() {return success(null);}public staticT ResultT success(T data) {Result result new Result();result.setCode(ResultCode.SUCCESS.getCode());result.setMsg(ResultCode.SUCCESS.getMsg());result.setData(data);return result;}public static T ResultT error(String msg) {ResultT result new Result();result.setCode(ResultCode.ERROR.getCode());result.setMsg(ResultCode.ERROR.getMsg());return result;} } 到此统一响应返回我们已经封装好了我们来改造一下Controller中的代码看看效果 SysUserController未改之前 RequestMapping(value /querySysUser,method RequestMethod.GET) public ListSysUser querySysUser(){return sysUserService.querySyserList(); }SysUserController修改之后 RequestMapping(value /querySysUser,method RequestMethod.GET) public Result querySysUser(){return Result.success(sysUserService.querySyserList()); }前端返回结果 五、定义值对象VO 从上面的返回结果我们会发现将密码等敏感信息返回到了前端这是非常不可取的 这时我们就需要根据前端的需求灵活地选择需要展示的数据字段 如果你还傻傻分不清PO BO VO DTO POJO DAO DO 这些概念可以看看知乎的这篇文章个人觉得还是说的比较清楚的了 https://www.zhihu.com/question/39651928/answer/2490565983 5.1 定义VO 定义一个需要返回前端的VO Data public class UserInfoVO {/*** 用户名*/private String username;/*** 用户昵称*/private String nickname;/*** 用户性别*/private String sex;/*** 用户生日*/private Date birthday;/*** 用户邮箱*/private String email;/*** 用户电话*/private String phone;/*** 用户地址*/private String addr; } 5.2 service 改造 interface SysUserService 改造前 public interface SysUserService {ListSysUser querySyserList(); }interface SysUserService 改造后 public interface SysUserService {ListUserInfoVO querySyserList(); }SysUserServiceImpl 改造前 Service public class SysUserServiceImpl implements SysUserService {Resourceprivate SysUserMapper userMapper;Overridepublic ListSysUser querySyserList() {return userMapper.querySyserList();} }SysUserServiceImpl改造后 Service public class SysUserServiceImpl implements SysUserService {Resourceprivate SysUserMapper userMapper;Overridepublic ListUserInfoVO querySyserList() {ListUserInfoVO userInfoVOList new ArrayListUserInfoVO();ListSysUser sysUserList userMapper.querySyserList();for (SysUser sysUser : sysUserList) {UserInfoVO userInfoVO new UserInfoVO();BeanUtils.copyProperties(sysUser,userInfoVO);userInfoVOList.add(userInfoVO);}return userInfoVOList;} }service 返回由原来的SysUser --变成UserInfoVO 5.3 接口测试 浏览器地址栏输入http://localhost:8080/sysUser/querySysUser 这时返回前端的json数据中已经没有密码了 六、日期时间处理 认真看文章的小伙伴可能已经发现了前面返回的json数据中日期是 “birthday”: “1999-09-18T16:00:00.00000:00” 这样的 这样的日期可读性非常差有没有什么方法可以格式化下日期呢 其实呢日期格式化非常简单我们只需要在之前定义好的UserInfoVO 的日期属性上加上一个注解即可 import com.fasterxml.jackson.annotation.JsonFormat;JsonFormat(pattern yyyy-MM-dd) private Date birthday;我们来测试一下 通过格式化的日期就是我们习惯的日期格式了 七、统一异常处理 日常开发中我们处理异常一般都会用到try-catch 、throw和throws 的方式抛出异常。 这种方式不仅仅程序员处理麻烦对用户来说也不太友好 我们都希望不用写过多的重复代码处理异常又能提升用户体验。 这时候全局异常处理就显得很便捷很重要了 小伙伴们如果对异常还不熟悉的可以看看这篇文章 https://blog.csdn.net/rong09_13/article/details/128090748 Springboot对于异常的处理也做了不错的支持它提供两个注解供我们使用 ControllerAdvice注解 用来开启全局的异常捕获ExceptionHandler注解说明捕获哪些异常对那些异常进行处理 ControllerAdvice public class MyExceptionHandler {ExceptionHandler(value Exception.class)public String exceptionHandler(Exception e){System.out.println(发生了一个异常e);return e.getMessage();} }7.1 添加自定义异常与其他异常返回结果 我们在Result 类中添加如下两个方法来处理自定义异常和其他异常返回结果 //自定义异常返回的结果 public static T ResultT bussinessErr(BusinessException e) {ResultT result new Result();result.setCode(e.getErrorCode());result.setMsg(e.getErrorMsg());result.setData(null);return result; } //其他异常处理方法返回的结果 public static T ResultT otherErr(ResultCode resultCode) {ResultT result new Result();result.setCode(resultCode.getCode());result.setMsg(resultCode.getMsg());result.setData(null);return result; }7.2 自定义异常 新建com.xiezhr.exception包并自定义异常类 public class BusinessException extends RuntimeException{private String errorCode;private String errorMsg;public BusinessException() {}public BusinessException(String errorCode, String errorMsg) {this.errorCode errorCode;this.errorMsg errorMsg;}public String getErrorCode() {return errorCode;}public void setErrorCode(String errorCode) {this.errorCode errorCode;}public String getErrorMsg() {return errorMsg;}public void setErrorMsg(String errorMsg) {this.errorMsg errorMsg;}}7.3 全局异常处理 我们自定义一个全局异常处理类来处理各种异常,包括自己定义的异常和内部异常 。 这样可以简化不少代码不用自己对每个异常都使用trycatch的方式来实现 我们在com.xiezhr.exception 包下面添加全局异常处理类GlobalExceptionHandler RestControllerAdvice public class GlobalExceptionHandler {/*** 处理自定义异常**/ExceptionHandler(value BusinessException.class)ResponseBodypublicT ResultT bizExceptionHandler(BusinessException e) {return Result.bussinessErr(e);}/*** 处理其他异常**/ExceptionHandler(value Exception.class)ResponseBodypublic Result exceptionHandler(Exception e) {return Result.otherErr(ResultCode.INTERNAL_SERVER_ERROR);}}7.4 测试异常处理 我们在SysUserController 中添加如下代码来测试下异常,看看能不能捕获到 RequestMapping(/getBusinessException) public Result DeException(){throw new BusinessException(400,我出错了); } RequestMapping(/getException) public Result Exception(){Result result new Result();int a1/0;return result; }八、添加系统日志 日志记录应用程序的运行状态通过日志开发者可以更好的了解应用程序的运行情况 当系统出现bug时也能通过日志快速定位问题和解决问题 8.1 常用日志框架 ① 常用日志框架 JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j… ② 日志框架之间的关系 日志框架的设计类似于JDBC-数据库驱动的设计提供了统一的接口抽象层然后再由各个数据库厂商去实现它 从而实现连接不同数据库Oracle、MySQL、PostgreSQL、MongoD… 日志门面日志抽象层日志实现JCLSLF4jjboss-loggingLog4jJUL(java.util.logging)Log4j2Logback 我们需要需要选择一个日志门面 和日志实现 springboot 默认选用SLF4j 和Logback 8.2 日志常用配置 ① 日志输出分析 日期时间精确到毫秒日志级别TRACE|DEBUG|INFO|WARN|ERR进程ID60236分隔符默认以—进行分割线程名由中括号括起来如[ main]Logger名: 一般使用类名日志内容 ② 日志级别 日志级别由低到高如下 TRACE DEBUG INFO WARN ERROR如果设置为 WARN 则低于 WARN 的信息都不会输出 Spring Boot中默认配置ERROR、WARN和INFO级别的日志输出到控制台 怎么调整日志级别呢 在application.properties或application.yml配置文件中 调整 logging.level.rootDEBUG在运行Spring Boot应用程序时通过命令行参数来设置日志级别 java -jar your-application.jar --logging.level.rootDEBUG③ 日志写到文件中 需在application.properties或application.yml配置文件中设置logging.file或logging.path属性 logging.file设置文件可以是绝对路径也可以是相对路径。如logging.filemy.loglogging.path设置目录会在该目录下创建spring.log文件并写入日志内容如logging.path/var/log 如果只配置 logging.file会在项目的当前路径下生成一个 xxx.log 日志文件。 如果只配置 logging.path在 /var/log文件夹生成一个日志文件为 spring.log 注二者不能同时使用如若同时使用则只有logging.file生效 默认情况下日志文件的大小达到10MB时会切分一次产生新的日志文件默认级别为ERROR、WARN、INFO 8.3 日志基本使用 ①第一种方法 我们参照官网https://www.slf4j.org/manual.html 的例子即可 import org.slf4j.Logger; import org.slf4j.LoggerFactory;public class HelloWorld {public static void main(String[] args) {Logger logger LoggerFactory.getLogger(HelloWorld.class);logger.info(Hello World);} }②第二种方法 第一种方法中每次使用都要创建了一个名为 logger 的Logger对象使用起来有点繁琐。这里我们引入注解方式实现 使用注解Slf4j 需要安装lombok插件 可以用{} 占位符来拼接字符串而不需要使用来连接字符串。 SpringBootTest Slf4j class SpringbootdemoApplicationTests {Testvoid testLog() {String name xiezhr;int age 20;log.info(name:{},age:{}, name, age);}}日志输出如下 2023-09-16T12:27:57.01408:00 INFO 53792 --- [ main] c.x.s.SpringbootdemoApplicationTests : name:xiezhr,age:208.4 日志高级配置 前面几节说的都是springboot基本日志配置如果这些都不能满足我们的需求我们就需要添加logback-spring.xml 官方推荐的配置文件进行配置 logback-spring.xml 中 配置了两个 分别是①输出到控制台②将日志写到文件中 并且使用 指定开发/生产环境配置 大家可以参考下面配置 ?xml version1.0 encodingUTF-8? !-- 日志级别从低到高分为TRACE DEBUG INFO WARN ERROR FATAL如果设置为WARN则低于WARN的信息都不会输出 -- configuration!-- SpringBoot默认logback的配置 --include resourceorg/springframework/boot/logging/logback/defaults.xml/springProperty scopecontext nameAPP_NAME sourcespring.application.name/property nameLOG_HOME value/logs/${APP_NAME}/!--1. 输出到控制台--appender nameCONSOLE classch.qos.logback.core.ConsoleAppender!-- withJansitrue/withJansi--!--此日志appender是为开发使用只配置最低级别控制台输出的日志级别是大于或等于此级别的日志信息--filter classch.qos.logback.classic.filter.ThresholdFilterlevelDEBUG/level/filterencoderPattern${CONSOLE_LOG_PATTERN}/PatterncharsetUTF-8/charset/encoder/appender!-- 2. 输出到文件 --appender nameFILE classch.qos.logback.core.rolling.RollingFileAppender!-- 当前记录的日志文档完整路径 --file${LOG_HOME}/log.log/file!--日志文档输出格式--encoderpattern%d{yyyy-MM-dd HH:mm:ss.SSS} -%5level ---[%15.15thread] %-40.40logger{39} : %msg%n%n/patterncharsetUTF-8/charset !-- 此处设置字符集 --/encoder!-- 日志记录器的滚动策略按日期按大小记录 --rollingPolicy classch.qos.logback.core.rolling.TimeBasedRollingPolicyfileNamePattern${LOG_HOME}/%d{yyyy-MM-dd}.%i.log/fileNamePatterntimeBasedFileNamingAndTriggeringPolicy classch.qos.logback.core.rolling.SizeAndTimeBasedFNATPmaxFileSize10MB/maxFileSize/timeBasedFileNamingAndTriggeringPolicy!--日志文档保留天数--maxHistory15/maxHistory/rollingPolicy!-- 临界值过滤器输出大于INFO级别日志 --filter classch.qos.logback.classic.filter.ThresholdFilterlevelINFO/level/filter/appender!-- 开发环境输出至控制台 --springProfile namedevroot levelINFOappender-ref refCONSOLE/appender-ref refFILE//root/springProfile!-- 生产环境输出至文件 --springProfile nameprodroot levelINFOappender-ref refCONSOLE/appender-ref refFILE//root/springProfile /configuration看到这大家如果对日志还不太清楚的可以看看下面雷神讲的视频 https://www.bilibili.com/video/BV1sb411H7Po 最终完整项目结构如下 九、小结 本篇文章我们手把手创建了一个SpringBoot项目并整合Mybatis实现了将数据库中数据通过json返回前端。 对返回json结果进行统一封装异常的统一处理日期时间的处理、开发/生产环境配置以及系统日志配置。 以上都是基于日常工作开发中的实际案例希望对你有所帮助。 本期内容到此九结束了希望对你有所帮助。我们下期再见~ (●’◡’●)
http://www.pierceye.com/news/209107/

相关文章:

  • 做我女朋友程序网站邵东做网站
  • 建设网站如何挂到网上wordpress首页添加幻灯
  • 汕头正规网站建设模板总部城乡建设网站 资料员
  • vs 2017c 怎么建设网站网站建设的数字化和互联网化
  • 南昌网站设计公司海南营销网站建设
  • 购物网站素材个人搭建网站教程
  • 青岛网站建设哪里好模板建站服务公司
  • 青色网站欣赏wordpress中文购物
  • 建站培训全国住房与城乡建设部网站
  • 唐山网站建设方案策划沧州网站建设联系电话
  • 网页制作和网站开发实验报告logo设计品牌
  • 摄影后期教程网站百度指数1000搜索量有多少
  • wp网站建设模板什么是网站的原型
  • 园林绿化网站建设上海著名室内设计公司
  • 大连市住房与城乡建设部网站公司要制作网站
  • 郑州做网站七彩科技企业网站做的漂亮
  • 如何用ps做网站页面设计企业网站备案价格
  • 禅城网站建设价格青岛企业自助建站系统
  • 平阳住房和城乡建设厅网站建设银行龙卡信用卡在境外网站支付
  • 关于网站开发的论文软件开发合同模板免费
  • 军队房地产与建设工程法律实务在哪个网站可以购买深圳市盐田区住房建设局网站
  • 网站虚拟主机空间喊别人做的网站不肯给代码
  • 导游是什么商丘seo公司
  • 25个网站网页怎么截图
  • 中国贸易网是什么网站wordpress导航横着
  • 淄博桓台网站建设方案怎么样做网站代
  • 有做网站网站的么网站内容管理规范
  • 大学网站开发的流程企业服务专区
  • 苏州seo网站推广哪家好上海做网站的知名企业
  • 哪个网可以网站备案苍南做网站哪里找