Java
Java 项目中常见问题及解决方法
IT夜幕
临渊羡鱼,不如退而结网
展开
-
Elasticsearch结合spring的使用
spring中使用ES原创 2022-01-23 23:39:31 · 2024 阅读 · 0 评论 -
SpringBoot1.5X + prometheus+Grafana监控项目
SpringBoot1.5X + prometheus+Grafana监控项目由于项目比较老,使用的是springboot1.5x版本,所以以下的都是基于老版本项目监控,当前windows系统上本机运行springboot1.5X 添加prometheus 插件一、在pom.xml 添加jar包依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g原创 2021-11-22 16:55:00 · 1076 阅读 · 1 评论 -
sonar常见bug类型及解决方法
1.Use isEmpty() to check whether the collection is empty or not.解释:建议使用list.isEmpty()方法 替代list.size()==0 或者 !list.isEmpty() 替代 list.size() >0修改前:if(attachedColumns.size() > 0) 修改后:if(attachedColumns.isEmpty()) 2.Remove this expression which原创 2021-11-17 17:03:49 · 19412 阅读 · 0 评论 -
浅析JAVA面试中常见问题之List(二)
浅析JAVA面试中常见问题之List(二)原创 2021-05-18 10:41:05 · 86 阅读 · 0 评论 -
springboot 创建线程池
SpringBoot创建线程池@Configurationpublic class ThreadPoolConfig { private static Logger logger = LoggerFactory.getLogger(ThreadPoolConfig .class); @Bean public ThreadPoolTaskExecutor threadPoolTaskExecutor() { ThreadPoolTaskExecutor executor原创 2021-04-08 14:02:27 · 377 阅读 · 0 评论 -
浅析JDK8的HashMap红黑数与链表相互转化
浅析JDK8的HashMap红黑数与链表相互转化JDK8之后,引入了红黑树存储结构。在面试当中,当问到链表存储什么时候转化为红黑树时,一般回答是当同一个hashcode值下,数据个数超过8个时,数据结构转化为红黑树。那么事实上,HashMap底层实现代码片段,先会去判断同一个hashcode值下,数据个数是否 >=7 ,之后调用treeifyBin方法 for (int binCount = 0; ; ++binCount) { if ((e原创 2021-03-24 12:57:29 · 1181 阅读 · 0 评论 -
浅析CompareAndSet(CAS)底层
浅析CompareAndSet(CAS)底层源码在 java.util.concurrent.atomic 这个包里面提供了一组原子类。其基本的特性就是在多线程环境下,当有多个线程同时执行这些类的实例包含的方法时,具有排他性,即当某个线程进入方法,执行其中的指令时,不会被其他线程打断,而别的线程就像自旋锁一样,一直等到该方法执行完成,才由 JVM从等待队列中选择一个另一个线程进入。包结构图CAS就是Compare and Swap,比较并交换算法,处理同步问题的常见解决思路。需要有4个值:当前原创 2021-03-11 17:14:55 · 690 阅读 · 0 评论 -
浅析红黑树
红黑树的特性:(1)每个节点是黑色或者红色。(2)根节点是黑色。(3)每个叶子节点(NIL)是黑色。(4)如果一个节点是红色的,则它的子节点必须是黑色的。(5)从一个节点到该节点的子孙节点的所有路径上包含相同数目的黑节点。...原创 2021-03-09 18:36:38 · 118 阅读 · 0 评论 -
浅析平衡二叉树的四种旋转
浅析平衡二叉树(AVL树)的四种旋转平衡二叉树中每个节点的左子树和右子树高度之差的绝对值小于等于1在二叉树插入数据后会有四种类型,为了符合平衡二叉树左孩子与右孩子高度只差绝对值小于等于1,那么就会形成四种旋转变形,以达到平衡。一.LL型如图所示,插入数据10,8,5,根据二叉树插入数据规则,因为8小于10,那8就在10的左边,然后插入数据5,5小于10,5又小于8,5就在8的左边,就会形成LL型。此时不符合平衡二叉树定义,为了达到左右孩子平衡,需要进行旋转。10经过一次右旋,结果左右孩子平衡。原创 2021-03-09 17:34:23 · 6613 阅读 · 3 评论 -
浅析HashMap的存储数据无序性原因
浅析HashMap的存储结构及获取数据的顺序在日常中,hashMap的put方法存储是无序的,不能根据自定义存放顺序来,如果需要有序则使用LinkedHashMap,如下面代码,put时的顺序为:12 -> 3 ->5 -> 16 -> 20 -> 21 循环遍历后的结果为: 16 -> 3 -> 20 -> 5 -> 21 -> 12 public class HashMapTest { public static void原创 2021-03-08 11:46:32 · 1308 阅读 · 0 评论 -
浅析JAVA面试题中常见问题
浅析JAVA面试题中常见问题(2021)知识是免费的,但如何掌握这些知识是需要自身努力来获得的。 希望诸君看完后,能不吝赐教,或者留下新的问题一起交流和学习1.Redis 篇1.1 redis有哪些存储结构?1.2 redis有哪些持久化方式?1.3 redis集群有哪几种形式?1.4 讲解一下redis的雪崩,穿透,击穿1.5 如何保证redis缓存中数据与数据库数据一致性?1.6 你所开发项目中redis主要用于哪些?2.Mysql 篇2.1 mysql 的存储引擎有哪些以及它原创 2021-03-03 17:59:16 · 128 阅读 · 4 评论 -
浅析JAVA面试题中常见问题之JVM内存结构
浅析JAVA面试题中常见问题之JVM内存结构JVM 内存思维导图原创 2021-03-01 20:32:23 · 115 阅读 · 0 评论 -
浅析JAVA面试题中常见问题之JVM GC垃圾回收
浅析JAVA面试题中常见问题之JVM GC垃圾回收原创 2021-02-26 09:56:20 · 121 阅读 · 3 评论 -
浅析Tomcat结构以及自定义嵌入式Tomcat
浅析Tomcat结构以及自定义嵌入式TomcatTOMCAT结构 <Server port="8005" shutdown="SHUTDOWN"> <Service name="Catalina"> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEn原创 2021-02-24 16:11:31 · 190 阅读 · 0 评论 -
浅析JAVA面试中常见问题之Map(一)
浅析面试中常见问题之Map(一)先占个位置,想着过年期间写一些面试常见问题,用于学习,借鉴和答疑,同时希望您能留下宝贵的意见和建议,共同进步原创 2021-02-08 08:19:54 · 244 阅读 · 0 评论 -
mybatis 查询报错:SQLException: 无效的列类型: 1111
Mybatis 查询报错java.sql.SQLException: 无效的列类型: 1111出现这个问题不要慌,根据报错日志定位到出错的查询语句,由于粗心,没有将查询条件添加"判空"条件将查询语句添加判空,就好好<if test="type !=null and type !=''"> and type=#{type}</if>...原创 2021-02-07 10:01:01 · 867 阅读 · 0 评论 -
mybatis查询报错ORA-00920: 无效的关系运算符
Mybatis 查询报错java.sql.SQLSyntaxErrorException: ORA-00920: 无效的关系运算符当使用Mybatis-Plus的注解 @Select("select * from temp where creattime >= sysdate ") 查询数据时会报错ORA-00920: 无效的关系运算符原因是:在使用 >= 替代 >= 时,应在查询语句前添加 <script></script>例如原创 2021-02-05 17:13:05 · 5473 阅读 · 0 评论 -
mybatis @SelectProvider注解使用
Mybatis @SelectProvider 注解使用在Mapper 接口中使用@SelectProvider,第1步:新建SelectProviderUtil 类以及selectTableAndColumn 方法/** * @Package: com.ityemu.manage * @ClassName: SelectProviderUtil * @Author: ityemu */public class SelectProviderUtil { public String原创 2021-02-03 10:05:42 · 470 阅读 · 0 评论 -
mybatis查询报错 ORA-00903: 表名无效
Mybatis 查询Cause: java.sql.SQLSyntaxErrorException: ORA-00903: 表名无效起因想通过通用方法加载不同表名查询数据,使用Mybatis查询报错 @Select(" select #{column} as str from #{table} group by #{column} order by count(1) desc ")将 #{table} 修改为 ${table} 查询数据 @Select(" select #{原创 2021-02-02 18:19:12 · 2794 阅读 · 0 评论 -
项目启动报错 SAXParseException: 元素内容必须由格式正确的字符数据或标记组成
项目启动报错:Caused by: org.xml.sax.SAXParseException: 元素内容必须由格式正确的字符数据或标记组成由于使用@Select 注解查询Sql 时查询报错,由于不识别大于(>)或者小于号(<) 导致异常将大于号(>) 修改为 > 将小于号(<) 修改为 < 重新启动加载...原创 2021-02-01 11:32:07 · 527 阅读 · 0 评论 -
解决Spring静态代码块加载@Autowired方法java.lang.NullPointerException问题
解决Spring静态代码块加载@Autowired方法java.lang.NullPointerException问题由于Static 静态代码块加载时,Spring的对象还未产生,导致初始化失败 java.lang.ExceptionInInitializerErrorCaused by: java.lang.NullPointerException: nullat com.ityemu.manage.bi.controller.TestController.(TestController.j原创 2021-02-01 10:46:45 · 1653 阅读 · 0 评论 -
JDBC Connection [oracle.jdbc.driver.T4CConnection@261ae63d] will not be managed by Spring报错分析和解决
Springboot启动报错 JDBC Connection [oracle.jdbc.driver.T4CConnection@261ae63d] will not be managed by Spring项目引用的Oracle.dirver 驱动jar 版本过低,oracle6 支持jdk1.6oracle7 支持 jdk1.7, jdk1.8将Pom.xml 中Oracle 的引用包版本 <dependency> <groupId>com.oracl原创 2021-02-01 09:16:42 · 4371 阅读 · 0 评论 -
SpringBoot 框架结合Mybatis-plus使用oracle和mysql自定义分页查询
SpringBoot 框架结合Mybatis-Plus 连接不同的数据源实现自定义分页展示数据由于Mysql和Oracle 分页查询语句不同,导致自定义时采用不同的方法执行查询 MySql接口:/** * @method: * @description: * @author: ityemu * @param: pageNum 第几页 * @param: pageSize 每页展示数量 * @param: queryWra原创 2021-01-14 18:00:14 · 4206 阅读 · 1 评论 -
mybatis报错BuilderException: Error parsing Mapper XML
Mybatis报错org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML控制台信息:2021-01-14 15:23:20.462 ERROR 71800 --- [ restartedMain] o.m.spring.mapper.MapperFactoryBean : Error while adding the mapper 'interface com.ityemu.dao.email.mapper.S原创 2021-01-14 16:02:31 · 9272 阅读 · 1 评论 -
mybatis查询报错BindingException: Invalid bound statement (not found)
Mybatis报错org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)控制台信息:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ityemu.dao.dict.mapper.SysDictCategoryMapper.selectMyPage at org.apache.ib原创 2021-01-14 16:01:49 · 220 阅读 · 0 评论 -
JAVA自定义排序工具SortUtil
SortUtil工具类,用于级联便签重新排序package com.ityemu.common.utils.string;import com.ityemu.common.entity.SysPermission;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;impor原创 2021-01-14 11:12:01 · 728 阅读 · 0 评论 -
DataTable 后台分页展示PageUtil工具类
适用场景:jdk1.8 版本及以上,使用lombok实现get,set方法HttpUtil 可以参考使用,以下链接https://blog.csdn.net/u013478983/article/details/112560649或者使用ServletRequestAttributes requestAttributes= (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();String star原创 2021-01-13 14:03:43 · 254 阅读 · 0 评论 -
HttpUtil工具类
package com.ityemu.common.utils.http;import com.ityemu.common.utils.string.StringUtil;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.web.context.request.RequestContextHolder;import org.springframework.web.context.re原创 2021-01-13 13:40:43 · 303 阅读 · 0 评论 -
异常org.hibernate.DuplicateMappingException问题解决方案
异常org.hibernate.DuplicateMappingException项目启动控制台报错: org.hibernate.DuplicateMappingException: duplicate import: NewQuotationSchedule refers to both org.hpin.quotation.entity.NewQuotationSchedule and org.hpin.newDecoration.entity.NewQuotationSchedule (t原创 2021-01-13 13:29:41 · 2004 阅读 · 0 评论 -
IDEA 逆向工程创建及报错解决方案
1.打开IDEA,点击View 》》》选择Tool Windows》》》选择Database2.找到右边Database窗体,点击“+”》》》选择Data Source 》》》选择Oracle/MySQL(根据自己要求链接数据库)3.在窗体内,依次输入Name 》》》Host 》》》Port 》》》SID 》》》 User 》》》 Password4.点击Test Connection ,当现实Success 时,点击Apply 确认process=image/watermark,type_原创 2021-01-08 08:59:49 · 813 阅读 · 0 评论 -
自定义Shiro注销后的跳转地址
自定义Shiro注销后的跳转地址1.修改LogoutFilter的重定向地址LogoutFilter logout=new LogoutFilter();logout.setRedirectUrl(Contants.MANAGE_PREFIX+"/login");2.修改ShiroFilterFactoryBean的filtersMap<String,Filter> filters=new HashMap();filters.put("logout",logout);shiroF原创 2021-01-08 09:00:30 · 424 阅读 · 0 评论 -
IDEA搭建SpringCloud 项目
Spring Cloud 项目搭建1、项目父类POM.XML<?xml version="1.0" encoding="UTF-8"?><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原创 2021-01-08 09:00:44 · 995 阅读 · 2 评论 -
mybatis报错Exception getting JDBC Driver的解决方法
Mybatis逆向工程中出现Exception getting JDBC Driver的解决方法解决方法在pom.xml中如下位置添加一个mysql-connector-java依赖即可 <dependencies> <!--此处添加一个mysql-connector-java依赖可以防止找不到jdbc Driver--> <dependency> <groupId>mysql</groupId>原创 2021-01-07 14:28:56 · 3750 阅读 · 0 评论 -
SpringBoot 启动失败 Failed to determine a suitable driver class 问题解决方案
SpringBoot 启动失败 Failed to determine a suitable driver class 问题解决方案Description:Failed to auto-configure a DataSource: 'spring.datasource.url' is not specified and no embedded datasource could be auto-configured.Reason: Failed to determine a suitable dr原创 2021-01-07 14:18:44 · 3052 阅读 · 0 评论