spring boot 搭建 和 全局异常处理
spring boot 搭建:
java -jar -Dserver.port=10000 -Dlogging.path=/var/logs xxx.jar & -- 默认在/var/logs/生成spring.log文件 java -jar -Dserver.port=10001 -Dlogging.file=/var/logs/yyy.log yyy.jar & -- 指定虚拟机内存、日志文件、配置文件,启动SpringBoot项目 java -Xms256m -Xmx512m -jar -Dlogging.file=/var/logs/ebag-school.log LK-school-1.0.jar --spring.config.location=school-prod.yml &
基本配置:
server: port: 8090 //配置端口
context-path: /test session-timeout: 30 tomcat.max-threads: 0 tomcat.uri-encoding: UTF-8 spring:
profiles: active: prod datasource: //数据库配置 url : jdbc:mysql://localhost:3306/newbirds username : root password : mymysql driverClassName : com.mysql.jdbc.Driver
spring:
profiles:
active: inner
jpa:
hibernate:
ddl-auto: validate
show-sql: true
properties:
hibernate:
enable_lazy_load_no_trans: true //开启jpa hibenate lazy
current_session_context_class: org.springframework.orm.hibernate4.SpringSessionContext
database: mysql
热部署:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional> <!-- 这个需要为 true 热部署才有效 -->
</dependency>
注解GetSet方法:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.6</version>
<scope>provided</scope>
</dependency>
全局异常处理:
拦截捕捉自定义异常 MyException.class
我的异常类:
/**
* @Auther: cookie
* @Date: 2018/7/26 15:22
* @Description:
*/
public class MyException extends RuntimeException{
private String code; //异常状态码
private String message; //异常信息
private String method; //发生的方法,位置等
private String descinfo; //描述
public MyException(String code, String message, String method, String descinfo) {
this.code=code;
this.message=message;
this.method=method;
this.descinfo=descinfo;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getMethod() {
return method;
}
public void setMethod(String method) {
this.method = method;
}
public String getDescinfo() {
return descinfo;
}
public void setDescinfo(String descinfo) {
this.descinfo = descinfo;
}
}
/**
* @Auther: cookie
* @Date: 2018/7/26 15:09
* @Description: 全局捕获异常和自定义全局捕获异常
*/
@ControllerAdvice //不指定包默认加了@Controller和@RestController都能控制
//@ControllerAdvice(basePackages ="com.example.demo.controller")
public class MyControllerAdvice {
/**
* 拦截捕捉自定义异常 MyException.class
* @param myex
* @return
*/
@ResponseBody
@ExceptionHandler(value = MyException.class)
public Map<String,Object> myExceptionHandler(MyException myex){
Map<String,Object> map = new HashMap<String,Object>();
map.put("code",myex.getCode());
map.put("message",myex.getMessage());
map.put("method",myex.getMethod());
map.put("descinfo",myex.getDescinfo());
//发生异常进行日志记录,写入数据库或者其他处理,此处省略
return map;
}
spring boot 搭建 和 全局异常处理相关推荐
- springboot怎么返回404_Spring Boot2 系列教程(十三)Spring Boot 中的全局异常处理
在 Spring Boot 项目中 ,异常统一处理,可以使用 Spring 中 @ControllerAdvice 来统一处理,也可以自己来定义异常处理方案.Spring Boot 中,对异常的处理有 ...
- move_uploaded_file返回false但实际成功_023 Spring Boot 搭建实际项目开发框架
前面的课程中,我主要给大家讲解了 Spring Boot 中常用的一些技术点,这些技术点在实际项目中可能不会全部用得到,因为不同的项目可能使用的技术不同,但是希望大家都能掌握如何使用,并能自己根据实际 ...
- Spring Boot 工程集成全局唯一ID生成器 Vesta
2019独角兽企业重金招聘Python工程师标准>>> 本文内容脑图如下: 文章共 760字,阅读大约需要 2分钟 ! 概 述 在前一篇文章 <Spring Boot工程集成全 ...
- maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目
项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...
- Spring Boot 搭建应用实现登陆实例,页面使用bootstrap
2019独角兽企业重金招聘Python工程师标准>>> Spring boot 搭建web应用集成了thymeleaf模板实现登陆 下面是pom.xml的配置 <?xml v ...
- spring boot 搭建的一个企业级快速开发脚手架
源码地址 https://github.com/javanan/slife slife spring boot 搭建的一个企业级快速开发脚手架. 技术栈 Spring Boot MySQL Freem ...
- Spring Boot搭建简易spring clound框架 (一)
Spring Boot搭建简易spring clound框架 (一) 1.搭建之前先了解微服务 微服务架构介绍 微服务架构(Microservice Architecture)是一种架构概念,旨在通过 ...
- Spring boot 搭建个人博客系统(二)——登录注册功能
Spring boot 搭建个人博客系统(二)--登录注册功能 一直想用Spring boot 搭建一个属于自己的博客系统,刚好前段时间学习了叶神的牛客项目课受益匪浅,乘热打铁也主要是学习,好让自己熟 ...
- spring boot 四:全局异常捕捉
spring boot 四:全局异常捕捉 1 前言 希望定制错误,比如一般springboot的500错误展示如下(trace等可以通过配置application.yml来决定隐藏还是具有): app ...
最新文章
- .NET 4.0 Interop新特性ICustomQueryInterface (转载)
- 二十个CSS经典技巧
- mysql datediff多一天_MySQL DATEDIFF函数获取两个日期的时间间隔的方法
- jupyter notebook 删除指定kernel
- ngrx中的memoized函数
- java 可逆的加密算法_java实现AES可逆加密算法
- Mobile Lua 6.5 发布,MoSync 的 Lua 移植版本
- iOS 归档 解档使用总结
- 2020年12月国产数据库排行:榜首TiDB 2.7亿融资再破纪录;openGauss晋级十强!
- 对警报线程池的警报线程_检测和警报SQL Server代理丢失的作业
- CCIE Security考试升级了
- android 从媒体库去数据
- 超详细的Java面试题总结(二)之Java基础知识篇
- 【PRML 学习笔记】第一章 - 介绍 (Introduction)
- pymc3学生成绩分析和预测(补充+翻译)
- java工具类_16 个超级实用的 Java 工具类
- pycharm激活码永久有效2019年5月28日
- tk.mybatis.mapper.MapperException: 无法获取实体类com.对应的表名
- 项目需求的重要性和开发步骤
- 学校介绍静态HTML网页设计作品 DIV布局学校官网模板代码 DW大学网站制作成品下载 HTML5期末大作业
热门文章
- 王璋等揭示慢性阻塞性肺疾病炎症内型与呼吸道微生物组的关系(IF 21)
- 23日晚西湖大学鞠峰报告:环境微生物宏基因组学
- 基础006 宏基因组入门理论以及分析环境的部署
- eclipse取消不了多行注释_Eclipse常用快捷键
- matplotlib可视化基本散点图、在图像多个指定区域绘制方框、进行自定义色彩填充(Draw Multiple Rectangles)
- R语言dplyr包mutate_if函数修改所有满足条件的数据列的内容实战
- Error in install.packages : cannot remove prior installation of package
- R语言grafify包简单、快速绘制19个漂亮的统计图实战
- pandas read_csv ‘utf-8‘ codec can‘t decode bytes in position 1198-1199: invalid continuation byte解决
- python计算两个字典的相同点(从key、value、item角度)