解决SpringBoot jar包中的文件读取问题实现

前言
SpringBoot微服务已成为业界主流,从开发到部署都非常省时省力,但是最近小明开发时遇到一个问题:在代码中读取资源文件(比如word文档、导出模版等),本地开发时可以正常读取...

2020-10-14

Java Math.round(),Math.ceil(),Math.floor()的区别详解

Math.round() “四舍五入”,
小数点后第一位<5 正数:Math.round(11.46)=11 负数:Math.round(-11.46)=-11小数点后第一位>5 正数:Math.round(11.68)=12 负数:Math.round(-11.6...

2020-10-14

浅析Java 对象引用和对象本身

示意图应用场景1.赋值2.方法入参3.调用方法和被调用方法代码import com.alibaba.fastjson.JSONObject;import java.util.ArrayList;import java.util.List;import org.slf4j...

2020-10-14

这一次搞懂Spring事务是如何传播的

前言上一篇分析了事务注解的解析过程,本质上是将事务封装为切面加入到AOP的执行链中,因此会调用到MethodInceptor的实现类的invoke方法,而事务切面的Interceptor就是Transactio...

2020-10-14

mybatisplus报Invalid bound statement (not found)错误的解决方法

搭建项目时使用了mybatisplus,项目能够正常启动,但在调用mapper方法查询数据库时报Invalid bound statement (not found)错误。以下为项目配置pom文件<dependency> <groupId>c...

2020-10-14

浅析JDBC的使用方法

1.使用步骤: 导包 加载驱动类class.forName(....) DriverManager获取sql对象 写sql语句 Statement与prepareStatement不一样的执行sql语句,前者是直接sql对象 . 执行语句...

2020-10-14

这一次搞懂Spring事务注解的解析方式

前言事务我们都知道是什么,而Spring事务就是在数据库之上利用AOP提供声明式事务和编程式事务帮助我们简化开发,解耦业务逻辑和系统逻辑。但是Spring事务原理是怎样?事务在方法...

2020-10-14

idea项目文件夹横向显示,纵向显示的解决方法

昨天装了IDEA,版本为IntelliJ IDEA 2020.1.1 x64
打开之后出现了下图中的问题解决步骤很简单1.先关闭IDEA
2.删除项目文件夹下的.idea文件夹
3.再重新打开IDEA,重新打开项目...

2020-10-14

JAVA抽象类及接口使用方法解析

抽象类可以有自己的成员变量,继承抽象类的对象共用成员变量,也可以修改成员变量的值。可以有非抽象的方法。接口只能有static final的成员变量(一般不使用),只能有抽象的方法。pu...

2020-10-14

这一次搞懂Spring代理创建及AOP链式调用过程操作

前言AOP,也就是面向切面编程,它可以将公共的代码抽离出来,动态的织入到目标类、目标方法中,大大提高我们编程的效率,也使程序变得更加优雅。如事务、操作日志等都可以使用AOP实现...

2020-10-14

Spring bean为什么默认是单例

熟悉Spring开发的朋友都知道Spring提供了5种scope分别是singleton、prototype、request、session、global session。如下图是官方文档上的截图,感兴趣的朋友可以进去看看这五...

2020-10-14

Spring IOC原理补充说明(循环依赖、Bean作用域等)

前言通过之前的几篇文章将Spring基于XML配置的IOC原理分析完成,但其中还有一些比较重要的细节没有分析总结,比如循环依赖的解决、作用域的实现原理、BeanPostProcessor的执行...

2020-10-14

SpringData Repository Bean方法定义规范代码实例

本节主要介绍Repository Bean中方法定义规范。1、方法不是随便声明,需要符合一定的规范。2、按照Spring Data的规范,查询方法以find|read|get开头,涉及条件查询时,条件的属性用...

2020-10-14

解决在Idea 2020.2下使用 Lombok的注解不生效的问题(插件安装了,依赖也写了,自动注解也设置了)

如题必要条件都有但还是不能生效虽然不是灰色,但是还是可以看到上面的导包是灰色的,并且没有任何报错。
而且可以看到上面正常正确的类是有图标的,但是Test这个类没有。在其他...

2020-10-14

解决idea2020.1 用gitee push推送被拒绝的原因(亲测有效)

出现问题截图出现问题的原因原因是仓库里有文件了,我们推送新的项目的时候造成了冲突,仓库已经有主人了;原因一般是因为我们本地的项目一致没有和远程仓库接触过。(通俗理解,我不...

2020-10-14

这一次搞懂Spring自定义标签以及注解解析原理说明

前言在上一篇文章中分析了Spring是如何解析默认标签的,并封装为BeanDefinition注册到缓存中,这一篇就来看看对于像context这种自定义标签是如何解析的。同时我们常用的注解如:@...

2020-10-14

mybatis-plus主键生成策略

MP 支持多种主键策略 默认是推特的“” 雪花算法“” ,也可以设置其他策略下面我演示主键策略使用MP的主键定义在一个一个枚举类中 源码如下public enum IdType { AUTO(0),/...

2020-10-14

Idea配置超详细图文教程(2020.2版本)

Idea配置(2020.2版本)1、Idea 设置字体2、Idea配置Maven3、不区分大小写4、自动导包功能及相关优化功能5、自动编译6、多行显示7、单词拼写检查8、idea中 类中显示成员变量和...

2020-10-14

JAVA线上常见问题排查手段汇总

在平时开发过程中,对于线上问题的排查以及系统的优化,免不了和Linux进行打交道。每逢大促和双十一,对系统的各种压测性能测试,优化都是非常大的一次考验。抽空整理了一下自己在...

2020-10-14

mybatis-plus实体类主键策略有3种(小结)

mybatis plus 实体类主键策略有3种( 注解 > 全局 > 默认 )当IdType的类型为ID_WORKER、ID_WORKER_STR或者UUID时,主键由MyBatis Plus的IdWorker类生成,idWorker中调用了分布式唯...

2020-10-14

这一次搞懂Spring的XML解析原理说明

前言Spring已经是我们Java Web开发必不可少的一个框架,其大大简化了我们的开发,提高了开发者的效率。同时,其源码对于开发者来说也是宝藏,从中我们可以学习到非常优秀的设计思想...

2020-10-14

Mybatis-Plus BaseMapper的用法详解

1、如何使用BaseMapper进行数据库的操作。2、使用BaseMapper进行插入实体时如何让UUID的主键自动生成。Student实体类,其中id属性主键为UUIDpackage com.huixiaoer.ant.api.m...

2020-10-14

SpringData Repository接口用法解析

本节主要介绍Repository接口规范,及其子接口Repository是一个空接口,即标准接口若我们定义的接口继承了Repository,则该接口会被IOC容器识别为一个Repositoty Bean纳入到IOC容...

2020-10-14

Spring Data环境搭建实现过程解析

 本节作为主要讲解Spring Data的环境搭建JPA Spring Data :致力于减少数据访问层(DAO)的开发量。开发者唯一要做的就是声明持久层的接口,其他都交给Spring Data JPA来帮你完...

2020-10-14

这一次搞懂SpringMVC原理说明

前言前面几篇文章,学习了Spring IOC、Bean实例化过程、AOP、事务的源码和设计思想,了解了Spring的整体运行流程,但如果是web开发,那么必不可少的还有Spring MVC,本篇主要分析在请...

2020-10-14

Spring Web零xml配置原理以及父子容器关系详解

前言在使用Spring和SpringMVC的老版本进行开发时,我们需要配置很多的xml文件,非常的繁琐,总是让用户自行选择配置也是非常不好的。基于约定大于配置的规定,Spring提供了很多注解...

2020-10-14

SpringData @Query和@Modifying注解原理解析

@Query注解查询适用于所查询的数据无法通过关键字查询得到结果的查询。这种查询可以摆脱像关键字查询那样的约束,将查询直接在相应的接口方法中声明,结构更为清晰,这是Spring D...

2020-10-14

浅谈Spring与SpringMVC父子容器的关系与初始化

Spring和SpringMVC的容器具有父子关系,Spring容器为父容器,SpringMVC为子容器,子容器可以引用父容器中的Bean,而父容器不可以引用子容器中的Bean。了解了Spring与SpringMVC父子...

2020-10-14

MyBatis SpringMVC整合实现步骤详解

1、添加spring相关jar包2、配置ehcache jar包。3、添加ehcache mybatis 适配器jar包(在mybatis官网)4、添加spring mybatis 适配器jar包(在mybatis)官网5、pom.xml<project xmln...

2020-10-14

基于SpringBoot核心原理(自动配置、事件驱动、Condition)

前言SpringBoot是Spring的包装,通过自动配置使得SpringBoot可以做到开箱即用,上手成本非常低,但是学习其实现原理的成本大大增加,需要先了解熟悉Spring原理。如果还不清楚Spring...

2020-10-14

MyBatis全局映射文件实现原理解析

全局配置文件为mybatis-config.xml1、properties标签<properties resource="dbconfig.properties"></properties>
可以使用properties来引入外部properties配置文件的内容引...

2020-10-14

mybatis-generator自动生成dao、mapping、bean配置操作

我就废话不多说了,大家还是直接看代码吧~<&#63;xml version="1.0" encoding="UTF-8"&#63;><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generato...

2020-10-14

解决IDEA2020.2插件lombok报错问题(亲测有效)

先看看问题是否和我一样由于我的修复好了,所以我的没错误了,我指出我以前的错误看是否匹配当你只写一个注解的时候是好的,有时候写第一个注解的时候就崩了,第二个注解就更不用说...

2020-10-14

MyBatis参数处理实现方法汇总

1、单个参数 mybatis不会做特殊处理。  #{参数名/任意名}:取出参数值。2、多个参数 mybatis会做特殊处理。  多个参数会被封装成 一个map。  key:param1...paramN,或者...

2020-10-14

Java 泛型全解析

泛型简介
什么是泛型? 参化类型,数是JDK1.5的新特性。(定义泛型时使用参数可以简单理解为形参),例如List<E>,Map<K,V> 编译时的一种类型,此类型仅仅在编译阶段有效,运行时无效....

2020-10-14

mybatis查询匹配机制图文详解

第一种查询方式匹配机制如何找到我们想要的sql语句第一步:先匹配sqlsqssion所在的MybatisUtil.java第二步:
去匹配mybatis-config.xml匹配mappers中的所有的xml文件的namespac...

2020-10-14

Lombok插件有望被Intellij IDEA收编以改善兼容性问题(推荐)

1. 前言最近两个版本的Intellij IDEA没有办法使用lombok插件了,这种问题已经出现了多次,导致胖哥依然使用2020.1的旧版本。其实很多人和我一样也回滚到了旧版本。我一直认为是...

2020-10-14

Springboot WebJar打包及使用实现流程解析

前言  WebJar官网:https://www.webjars.org/,对于任何与Servlet 3兼容的容器,WEB-INF/lib目录中的webjar都会自动作为静态资源提供。这是因为WEB-INF/lib中的JAR中的META-INF...

2020-10-14

IDEA导出jar打包成exe应用程序的小结

Java jar打包成exe应用程序,可在无JDK/JRE环境下运行老师让做一个小项目,但是需要打包发布出来,因此在网上查了很多资料之后总结的经验。1. IDEA导出jar包,选择 File -> Project...

2020-10-14

MyBatis SELECT基本查询实现方法详解

1、返回一个LIST<!-- public List<Employee> getEmpsByLastNameLike(String lastName); --> <!--resultType:如果返回的是一个集合,要写集合中元素的类型 --> <select id="g...

2020-10-14

MyBatis缓存实现原理及代码实例解析

一、一级缓存(本地缓存)  sqlSession级别的缓存。一级缓存是一直开启的;SqlSession级别的一个Map与数据库同一次会话期间查询到的数据会放在本地缓存中。以后如果需要获取相...

2020-10-14

mybatis-plus id主键生成的坑

简要说明由于mybatis-plus会自动插入一个id到实体对象, 不管你封装与否, 所以有时候导致一些意外的情况发生默认是生成一个长数字字符串(编码不同可能结尾带有字母)错误
est...

2020-10-14

java中创建、写入文件的5种方式

在java中有很多的方法可以创建文件写文件,你是否真的认真的总结过?下面笔者就帮大家总结一下java中创建文件的五种方法。 Files.newBufferedWriter(Java 8) Files.write(Jav...

2020-10-14

Jenkins如何使用DockerFile自动部署Java项目

Jenkins下用DockerFile自动部署Java(SpringBoot)项目,简单自用,勿喷一、Jenkins构建Java(SpringBoot)项目新建-构建一个Maven项目需要提一下,现在新安装的没有这个选项,需要在插...

2020-10-14

Java 分析并解决内存泄漏的实例

这几天,一直在为Java的“内存泄露”问题纠结。Java应用程序占用的内存在不断的、有规律的上涨,最终超过了监控阈值。福尔摩 斯不得不出手了!分析内存泄露的一般步骤如果发现Jav...

2020-10-14

基于jenkins构建结果企业微信提醒

每当jenkin在构建之后我们想把构建结果SUCCESS/FAILURE或者其他信息通知给其他人,也许有人会说,不是有邮件提醒吗?但是我这里的环境邮件提醒的话所被通知者并不会第一时间去阅...

2020-10-14

Gradle的安装和IDEA集成、项目导入的详细教程

一、Gradle简介 Gradle是专注于灵活性和性能的开源构建自动化工具。Gradle构建脚本是使用Groovy或Kotlin DSL 编写的。 高度可定制 -Gradle以最基本的方式可定制和可扩展...

2020-10-14

基于Jenkins搭建.NET Core持续集成环境过程图解

我们用NuGet还原.NET Core项目会报以下错误:error NETSDK1064: 未找到版本为 1.8.2 的包 BouncyCastle.NetCore。它可能已在 NuGet 还原后删除。否则,NuGet 还原可能只是部分...

2020-10-14

MybatisPlus使用代码生成器遇到的小问题(推荐)

MybatisPlus 给我们提供了更加强大的代码生成器MyBatisPlus 在3.0.3版本之前使用代码生成器因为存在默认依赖,所以不需要其他的依赖,项目中使用的是3.0.1的版本,所以不用添加其...

2020-10-14

使用MyBatisPlus自动生成代码后tomcat运行报错的问题及解决方法

自动生成的代码报错
解决办法:把自动xml文件中自动生成的二级缓存注释掉总结...

2020-10-14
返回顶部
顶部