解决SpringSecurity 一直登录失败的问题

springsecurity 是spring提供的关于登录授权的框架,他提供了controller层的服务,只需要我们自己实现service层和dao层,以及一些相关的配置错误结果以及调试信息笔者初次使用spr...

2021-06-09

springboot实现执行sql语句打印到控制台

springboot 执行sql语句打印到控制台1.简介每当写完持久化语句时肯定免不了要查漏补缺一波。这里就可以将执行的sql打印到控制台来检查sql语句哪里出了问题。2.配置配置非常...

2021-06-09

聊聊@RequestBody和Json之间的关系

在使用springmvc的时候,后台@RequestBody接受的是一个json格式的字符串,一定是一个字符串。我们可以通过@RequestBody Map @RequestMapping(value="/queryAccountList.do",...

2021-06-09

Jersey Restful接口如何获取参数的问题

缘起工作时使用java开发服务器后台,用Jersey写Restful接口,发现有一个Post方法始终获取不到参数,查了半天,发现时获取参数的注释不太对,将@formparam写成了@queryparam,发现了这个...

2021-06-09

request如何获取body的json数据

在request中可以获取到来自Http请求的body数据比如获取json格式数据代码:import com.alibaba.dubbo.common.utils.IOUtils;BufferedReader reader = new BufferedReader(new...

2021-06-09

Mybatis CURD及模糊查询功能的实现

命名空间namespace:配置文件中namespace中的名称为对应Mapper接口或者Dao接口的完整包名,必须一致!1.查询(select)select:接口中的方法名与映射文件中的SQL语句ID 一一对应 id...

2021-06-09

Java 定时器的多种实现方式

一、前言
定时器有三种表现形式: 按固定周期定时执行 延迟一定时间后执行 指定某个时刻执行
JDK 提供了三种常用的定时器实现方式,分别为: Timer DelayedQu...

2021-06-07

Java 实现分布式服务的调用链跟踪

为什么要实现调用链跟踪?
随着业务的发展,所有的系统最终都会走向服务化体系,微服务的目的一是提高系统的稳定性,二是提高持续交付的效率,为什么能提高这两项不是今天讨论的内容...

2021-06-07

分析Java中为什么String不可变

常量池Java中我们创建String对象有两种基本方法。String str1 = "zxhtom";String str2 = new String("zxhtom");上面两种方式我们创建了两个String变量 。 但是第一种通过...

2021-06-07

详解Java Socket通信封装MIna框架

核心类IoService :Mina中将服务端和客户端都看成是服务,这里提供统一接口IoService,这个接口的作用就是用来处理套接字机制。也正是IoService来监听消息返回消息这些步骤,可...

2021-06-07

解析Spring Mvc Long类型精度丢失问题

背景在使用Spring Boot Mvc的项目中,使用Long类型作为id的类型,但是当前端使用Number类型接收Long类型数据时,由于前端精度问题,会导致Long类型数据转换为Number类型时的后两位...

2021-06-07

Java 动态代理的多种实现方式

一、动态代理简介优势:在不修改源码的情况下,对目标方法进行相应的增强。作用:完成程序功能之间的松耦合。二、动态代理的多种实现
JDK代理:基于接口的动态代理技术(缺点,目标...

2021-06-07

Java 内存安全问题的注意事项

前言
Java在内存管理方面是要比C/C++更方便的,不需要为每一个对象编写释放内存的代码,JVM虚拟机将为我们选择合适的时间释放内存空间,使得程序不容易出现内存泄漏和溢出的问题...

2021-06-07

Java实现连连看算法

连连看是个经典的小游戏,规则是:两图案相同的方块在2折以内的线连接下可以消除。里面的算法还是非常有趣,今天来研究一下。初始化棋盘假设有一个8*8的棋盘,我们要将其扩充至10*1...

2021-06-06

再也不用怕! 让你彻底搞明白Java内存分布

一、堆内内存堆内内存分为三大部分,年轻代 , 老年代 和 元空间,所以 堆内内存 = 年轻代 + 老年代 + 元空间,下面细聊下三部分1.1 年轻代-Young Generation存放的是new 生成的对...

2021-06-06

springboot实现发送QQ邮箱

springboot发送电子邮箱,供大家参考,具体内容如下1.开启qq邮箱开启IMAP/SMTP服务*首先进入qq邮箱点击设置点击账户,然后往下拉开启IMAP/SMTP服务开启成功得到授权密码,这个要记...

2021-06-06

SpringMVC数据输出相关知识总结

一、数据输出SpringMVC将数据携带给页面的储存工具,有三种,map,ModelMap,model,它们在底层实质还是使用到了BindingAwareModelMap,对数据进行存储:此外,也可以使用ModelAndView携...

2021-06-06

Java并发容器相关知识总结

一、并发容器1.1 JDK 提供的并发容器总结JDK 提供的这些容器大部分在java.util.concurrent包中。ConcurrentHashMap: 线程安全的 HashMapCopyOnWriteArrayList: 线程安全的...

2021-06-06

Java设计模式之桥接模式的实现

桥接模式桥接模式是将抽象部分与它的实现部分分离,使他们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。上图一个类被三...

2021-06-06

java设计模式之浅谈适配器模式

一、结构型模式结构型模式有什么好处?
从程序的结构上实现松耦合,从而可以扩大整体的类结构,用来解决更大的问题二、适配器模式USB网线转换器三、什么是适配器模式?将一个类的接...

2021-06-06

SpringBoot+MyBatisPlus+MySQL8实现树形结构查询

本文实例为大家分享了SpringBoot+MyBatisPlus+MySQL8实现树形结构查询,供大家参考,具体内容如下场景:今天在实现权限功能模块时,需要将查询的权限数据,以树形结构的方式返回给前...

2021-06-06

详解怎么用Java的super关键字

Java的super关键字当子类重写父类的方法后,子类对象将无法直接访问父类被重写的方法。为了解决这个问题,在Java中专门提供了一个super关键字来访问父类的成员,例如访问父类的成...

2021-06-06

详解SpringBoot自动配置源码

一、引导加载自动配置类@SpringBootApplication注解相当于@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan这三个注解的整合@SpringBootConfiguration...

2021-06-06

SpringBoot整合log4j2日志的实现

关于日志级别
共有8个级别,按照从低到高为:All < Trace < Debug < Info < Warn < Error < Fatal < OFF. All: 最低等级的,用于打开所有日志记录. Trace: 是追踪,就是程序推...

2021-06-05

Spring aop+反射实现电话号加密

加密算法
为什么需要加密呢?就好比战争时期特工在进行传输情报的时候,如果将情报明文直接通过某种媒介传输给同盟人员,那么一旦情报被地方截取,就会酿成大祸。如果将明文通过某...

2021-06-05

Java泛型最全知识总结

一、泛型简介1.1 泛型的概念 所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返 回值及参数类型。这个类型参数将在使用时(例如,继...

2021-06-05

详解记录Java Log的几种方式

在Java中记录日志的方式有如下几种:一、System.out.println(最简单)
1、输出到控制台:System.out.println("XXX");
2、输出到指定文件:import java.io.PrintStream; PrintStream...

2021-06-05

Java常见的阻塞队列总结

Java阻塞队列阻塞队列和普通队列主要区别在阻塞二字: 阻塞添加:队列已满时,添加元素线程会阻塞,直到队列不满时才唤醒线程执行添加操作 阻塞删除:队列元素为空时,删除元素线...

2021-06-05

Spring拦截器和过滤器的区别在哪?

一、概述拦截器和过滤器filter和拦截器的功能都是拦截,filter拦截的目标是servlet的执行,而拦截器拦截的是Spring MVC定义的概念,叫handler(常见的就是我们用RequestMapping定...

2021-06-05

手把手教你怎么创建spring项目

创建Spring项目通过spring.io生成初始代码,配置如下下载好会得到一个.zip文件,解压导入IDEA就可以开始了,这是基础的项目结构让我们打开src/main/java/geektime/spring/hello/h...

2021-06-05

解决Java中的java.io.IOException: Broken pipe问题

Java 中java.io.IOException: Broken pipe认识broken pipepipe是管道的意思,管道里面是数据流,通常是从文件或网络套接字读取的数据。当该管道从另一端突然关闭时,会发生数据突...

2021-06-05

一文彻底搞懂Java和JDK的版本命名问题

Java是面向对象的编程语言,在我们开发Java应用的程序员的专业术语里,Java这个单词其实指的是Java开发工具,也就是JDK(Java Development Kit)。所以我们常常在CSDN等各大程序员...

2021-06-05

详解如何实现SpringBoot的底层注解

一、@Configuration注解1、基本使用自定义配置类/** * 1、@Configuration 告诉SpringBoot这是一个配置类,相当于一个xml配置文件 * * 2、配置类里面使用 @Bean 标注在方法上...

2021-06-05

Java多线程之FutureTask的介绍及使用

一、FutureTask的理解FutureTask属于java.util.concurrent 包;FutureTask表示可取消的异步计算。FutureTask类提供了一个Future的基本实现 ,具有启动和取消计算的方法,查询计算...

2021-06-05

SpringBoot中的main方法注入service

一、SpringBoot中的main方法注入service在springboot中使用main方法常规无法注入service,因为以后也可能会有这种情况,所以采取工具类的方式进行,该工具类为固定写法,直接复制就...

2021-06-05

详解Java对象创建的过程及内存布局

一、对象的内存布局对象头对象头主要保存对象自身的运行时数据和用于指定该对象属于哪个类的类型指针。实例数据保存对象的有效数据,例如对象的字段信息,其中包括从父类继承下...

2021-06-05

java boolean占用内存大小说明

答案:4B或1B详细1、如果boolean是单独使用:boolean占4个字节。2、如果boolean是以boolean数组形式使用:boolean占1个字节解释1、JVM没有提供boolean类型专用的字节指令,而是使用...

2021-06-04

又又叕出BUG啦!理智分析Java NIO的ByteBuffer到底有多难用

一、前言ByteBuf是Netty当中的最重要的工具类,它与JDK的ByteBuffer原理基本上相同,也分为堆内与堆外俩种类型,但是ByteBuf做了极大的优化,具有更简单的API,更多的工具方法和优秀...

2021-06-04

Java 程序员掌握 Spring Boot非常有必要

Spring Boot从天而降Spring Boot是企业级开发的整体整合解决方案,在现在企业项目开发中使用非常普遍,Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热潮,给企业开发带...

2021-06-03

Java正则表达式里隐藏的陷阱

前几天线上一个项目监控信息突然报告异常,上到机器上后查看相关资源的使用情况,发现 CPU 利用率将近 100%。通过 Java 自带的线程 Dump 工具,我们导出了出问题的堆栈信息。我们...

2021-06-03

JVM知识总结之垃圾收集算法

一、什么是垃圾本文要讲的是垃圾收集算法,那么首先要确定的问题就是什么是垃圾,也就是哪些对象是要被回收的,对此有两种判断方式:1.1 引用计数算法什么样的对象是要被回收的,很明...

2021-06-03

java如何用递归方法求阶乘

java 用递归方法求阶乘一个正整数的阶乘,是所有不大于该数的正整数的积,并且0的阶乘为1,n的阶乘写作n!,由1808年基斯顿·卡曼(Christian Kramp,1760~1826)引进这个表示法。java代码://...

2021-06-03

Spring中注解方式的异步请求

一、Servlet3.0异步请求@WebServlet(value = "/async", asyncSupported = true)public class HelloAsyncServlet extends HttpServlet { @Override protected void do...

2021-06-03

关于Spring Bean实例过程中使用反射和递归处理的Bean属性填充问题

一、前言超卖、掉单、幂等,你的程序总是不抗揍!想想,运营已经对外宣传了七八天的活动,满心欢喜的等着最后一天页面上线对外了,突然出现了一堆异常、资损、闪退,而用户流量稍纵即逝...

2021-06-03

Java中InputSteam怎么转String

InputSteam与String相互转化字符串被广泛应用于 Java 编程中,是程序经常处理的对象。以对象的方式处理字符串,使字符串更加方便灵活。Java 提供了 String 类创建和操作字符串,...

2021-06-03

java并发编程工具类JUC之LinkedBlockingQueue链表队列

java.util.concurrent.LinkedBlockingQueue 是一个基于单向链表的、范围任意的(其实是有界的)、FIFO阻塞队列。访问与移除操作是在队头进行,添加操作是在队尾进行,并分别使用不...

2021-06-03

浅谈JVM系列之从汇编角度分析NullCheck

一个普通的virtual call我们来分析一下在方法中调用list.add方法的例子:public class TestNull { public static void main(String[] args) throws InterruptedException...

2021-06-03

IDEA导入geoserver项目的详细步骤及注意事项

GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用...

2021-06-03

浅谈JDK7和JDK8的区别在哪

一、接口中的default方法一般来说接口中的方法都是不实现的,基本通过实现类来实现方法。但是jdk8中提供了一种被default修饰的方法,可以直接在接口中进行实现。二、lambda表达...

2021-06-03

浅谈JVM之使用JFR解决内存泄露

简介虽然java有自动化的GC,但是还会有内存泄露的情况。当然java中的内存泄露跟C++中的泄露不同。在C++中所有被分配的内存对象都需要要程序员手动释放。但是在java中并不需要...

2021-06-03
返回顶部
顶部