spring boot 枚举使用的坑】的更多相关文章

上一篇说到spring boot 使用jackson在枚举enum序列化和反序列化的问题, 再来说说在JPA中实体entity使用枚举的问题. 还是这个枚举: @Getter @AllArgsConstructor public enum EnumExpenseType implements BaseEnum { 小欢喜(1), 大欢喜(2); private final int value; } 当然,如果value值和枚举的索引ordinal能够对应上,就不用做任务配置了,这里的前提是没有对…
java 枚举的功能挺多,但是坑更多,使用的时候要注意.如下面这个枚举. @Getter @AllArgsConstructor public enum EnumExpenseType implements BaseEnum { 小欢喜(1), 大欢喜(2); private final int value; } 咋一看,没什么问题,但是具体使用过程中,总是会出问题.原因就是这个枚举没有按照从0开始索引,除此之外即使从0开始,中间有断的索引也会有问题.主要出现在以下方面: 1. 在control…
上一篇说到在枚举当在controller的方法做参数时的坑,解决方法是配置了一个converter,后来想想,如果不闲每次都加一个注解麻烦的话,可以在参数前面加一个注解,添加一个解析器应该也可以解决这个问题. 现在来说说枚举的第二个坑,前提条件和上一篇的一样:就是这个枚举: @Getter @AllArgsConstructor public enum EnumExpenseType implements BaseEnum { 小欢喜(1), 大欢喜(2); private final int…
部署spring boot + Vue遇到的坑(权限.刷新404.跨域.内存) 项目背景是采用前后端分离,前端使用vue,后端使用springboot. 工具 工欲善其事必先利其器,我们先找一个操作Linux系统的工具极力推荐FinalShell. 一眼看过去是不是感觉很方便,对内存.CPU的监控也可以实时看到,访问目录更是方便,对于Linux小白来说简直是神兵利器. 好了,我要开始入坑了. 问题一:权限不够 把vue包放到tomcat->webapps->ROOT目录下. 启动tomcat:…
一.搭建spring boot环境 maven工程 pom文件内容 <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 http://maven.apache.org/xsd/maven-…
1.关于springBoot自动扫描规则: SpringBoot项目的Bean装配默认规则是根据Application类所在的包位置从上往下扫描! "Application"类是指SpringBoot项目入口类.这个类的位置很关键: 如果Application类所在的包为:com.boot.app,则只会扫描com.boot.app包及其所有子包,如果service或dao所在包不在com.boot.app及其子包下,则不会被扫描! 所以Application类放到dao.servic…
因为是使用的mybatis逆向工程自动生成的实体类和dao层,然后在读取某一个表的content字段时出现问题. 问题描述:在mysql数据库里可以直接查询到这个字段的内容,但是使用java相关的方法去查询的结果,其字段值始终为null值. 解决方案:经查验,发现是由于content字段的类型为text/blob时,它对应的mapper.xml文件里的map映射有一个扩展. 所以在调用相关的方法时就不能用selectByExample方法,而是需要用selectByExampleWithBLOB…
一:唠嗑 鼓捣了两天的Spring Security,踩了不少坑.如果你在学Spring Security,恰好又是使用的Spring Boot,那么给我点个赞吧!这篇博客将会让你了解Spring Security的各种坑! 阅读前说一下,这篇博客是我一字一字打出来的,转载务必注明出处哦! 另外,本文已授权微信公众号“后端技术精选”独家发布 二:开始 1.准备 Spring boot 1.5 Mysql 5.7 导入依赖 <!-- Web工程 --> <dependency> &l…
升级到spring boot 2.x后,发现了好多坑,现记录下来. 1.pom文件依赖的变化 1.x中,依赖是这样的: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> 2.x,依赖是这样的: <dependency> <…
spring boot2.x已经出来好一阵了,而且spring cloud 的最新Release版本Finchley.RELEASE,默认集成的就是spring boot 2.x,这几天将一个旧项目尝试着从低版本升级到 2.x,踩坑无数,记录一下: 一.gradle的问题 spring boot 2.x 要求gradle版本不能太旧,先把gradle升级到4.6版本,然后编译,各种问题,到gradle官网上查了下,build.gradle有几个小地方要调整 1.1 java-libary 的项目…
在spring boot中,支持多种定时执行模式(cron, fixRate, fixDelay),在Application或者其他Autoconfig上增加@EnableScheduling注解开启. 然后在指定方法增加@Scheduled注解,如下: @Scheduled(cron="0 0 0/1 * * ?") public void updateTime() { current_log_time_appendix = sdf.format(new Date()); logge…
概述: 今天在使用spring boot框架的时候,踩了一个坑,是关于control层request body依赖注入的问题的,内容如下: 进过: 由于目前公司采用的系统架构,要求把springboot的control层,以接口的形式单独暴露出入,而具体control层的代码,则放在另一个包里实现.这种把control层以接口方式实现的方式,导致了我今天在使用spring boot的@RequestBody的注解的时候,出了问题. 根据我之前的经验,我是把control层的相关注解,都放在了接口…
前言 在 Spring Boot 中使用 Mybatis 中遇到了字段为枚举类型,数据库存储的是枚举的值,发现它不能自动装载. 解决 内置枚举转换器 MyBatis内置了两个枚举转换器分别是:org.apache.ibatis.type.EnumTypeHandler 和 org.apache.ibatis.type.EnumOrdinalTypeHandler. EnumTypeHandler mybatis 中默认的枚举转换器,是获取枚举中的 name 属性. EnumOrdinalType…
Spring boot应用踩坑集锦 spring boot是spring的一种开发套件,是spring cloud的基础框架,要学习spring cloud微服务是绕不开的,遇到一些踩坑问题在这里记录下,以后有问题都会不定期更新. 1.maven项目角标始终有个红叹号 红色叹号一般表示包引入有问题,具体可以查看myeclipse下方的"Problems"窗口,这里会显示完整的报错信息. 我在新建spring boot应用时maven里加了几个javaEE包的配置,最简单的办法是删除所有…
这是学习spring boot 的第二周,公司号称这玩意是啥都不会的新手就可以填空开发,于是决定上手一把,怎么说我也是搞了快七八年的.NET和.NETcore,没想到无情打脸,快被这个能填空开的IDE搞疯了,下面是记下一些自己踩坑开发中遇到的一系列无穷无尽的问题. 一 .集成MyBatis a)首先如何理解这个  MyBatis 的东西,我的理解是 :MyBatis 有点类似ORM的感觉,跟 JPA很类似,就是一个orm,需要一个类似 dbcontext的东西,这个东西,在MyBatis 里面叫…
真是郁闷,不过这事又一次提醒我解决问题还是要根治,不能囫囵吞枣,否则相同的问题可能会以不同的形式出现,每次都得花时间去搞.刨根问底,一步到位,再遇到类似问题就可以分分钟解决了. 如果大家没看过松哥之前写的 Spring Boot 整合 Spring Session,可以先回顾下: Spring Boot 一个依赖搞定 session 共享,没有比这更简单的方案了! 第一次踩坑 事情是这样的,大概在今年 6 月初的时候,我在项目中使用到了 Session 共享,当时采用的方案就是 Redis+Sp…
上一篇:Spring Boot 2.2.0 正式发布,支持 JDK 13! Spring Boot 2.2.0 没发布多久,Spring Boot 2.2.1 又发布了,这是一个很有意思,又有点 "坑" 的一个版本. 除了日常的 bug 修复.优化提升.依赖升级,这个版本又颠覆了一个 Spring Boot 2.2.0 配置. 如果你已经升级到了 Spring Boot 2.2.0,@ConfigurationProperties 注解是可以不需要定义 Bean 直接使用的. @Con…
计划任务功能在应用程序及其常见,使用Spring Boot的@Scheduled 注解可以很方便的定义一个计划任务.然而在实际开发过程当中还应该注意它的计划任务默认是放在容量为1个线程的线程池中执行,即任务与任务之间是串行执行的.如果没有注意这个问题,开发的应用可能出现不按照设定计划执行的情况.本文将介绍几种增加定时任务线程池的方式. 验证Spring Boot计划任务中的"坑" 其实是验证Spring Boot 中执行任务的线程只有1个.先定义两个任务,输出任务执行时的线程ID,如果…
网上很多的spring boot国际化的文章都是正常情况下的使用方法 如果你像我一样用了Spring Security 那么在多语言的时候可能就会遇到一个深渊 Spring Security里面的异常本身已经是做了多语言的,但是只支持通过Accept-Language来切换错误信息的语言 而我们需要自定义异常信息,以及用url参数lang=en_US或者lang=cn_ZH来控制语言的话网上的这种方法是不行的 @Configuration public class I18nConfig impl…
今天初次搭建spring boot +duboo的demo.记录一下踩坑记录. 首先搭建3个小demo,一个maven项目,两个spring boot (服务提供者和服务消费者)项目. 两 spring boot 引入jar: <!--引入dubbo的依赖--><dependency> <groupId>com.alibaba.spring.boot</groupId> <artifactId>dubbo-spring-boot-starter&…
背景 :在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Apache的Http Client.Netty的异步HTTP Client, Spring的RestTemplate.但是,用起来最方便.最优雅的还是要属Feign了.Feign是一种声明式.模板化的HTTP客户端. Contronller层通过feignClient调用微服务 获取所有任务…
Takes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as possible. 旨在简化创建产品级的 Spring应用和服务.Spring Boot 引导优先于配置,它可以让你避免繁杂的配置,尽可能…
Spring Boot 整合 Jsp 步骤: 1.新建一个spring boot项目 2.修改pom文件 <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>        <depend…
2019年2月19日19:25:42 版本 2.1.3.RELEASE 1,本地开发需要加依赖库,保存实时热更新 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> </dependency> 配置是否开启 spr…
IDEA环境 win10 跑得刚刚,到xp系统就戈壁 报错 Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String; 原因:tomcat版本引起 解决加入 <properties> <tomcat.version>7.0.69</tomcat.version></properties> 又报错 Ca…
业务需求 首页 实现缓存分页 spring boot 整合redis   (我的是2.0.3版本的) 在pom 文件写上依赖包即可 <dependency><!--依赖包--> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency> <depende…
1. 出现spring boot Configuration Annotation Proessor not found in classpath的提示是在用了@ConfigurationProperties这个注解时,所以问题出现在ConfigurationProperties注解.2. 根据提示的not found in classpath,查询此注解的使用关于怎么指定classpath,进而查询location,spring boot1.5以上版本@ConfigurationPropert…
近段期间,公司 接手一个订单号生成服务,规则的话已经由项目经理他们规定好了,主要是后面的四位数代表的关于当前订单号已经执行第几个了.而这里面有一个要求就是支持分布式.为了实现这个东西,刚开始我使用了redis的incr来解决这个问题,因为我们后端开发用的是Spring boot,所以我网上找了一个代码如下: /** * * @param key * @param liveTime * @return */ public Long incr(String key, long liveTime) {…
Resolved exception caused by handler execution: org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class cn.argonavis.labeltool.bean.ResponseBean 将return的类添加getter/setter: 前端报错:POST http:/…
1:说明 网上这类文章 太多, 一搜一大把 ,但是要不是知识太过于老旧,就是配置没有说名清楚,你的项目按照他的配置却不能正常运行: 所以本文的目的: 配置swagger 2  那swagger 1 不说一下吗,我觉得没有必要了,确实需要以jar包方式构建 或者 维护老项目,那么参考下面的连接 https://github.com/swagger-api/swagger-ui/tree/2.x/dist  下载这个路径内容,导入相关依赖即可,不建议使用 2: swagger2 部署方式1 2.1:…