java
文章平均质量分 54
li_jiazhi
好记性不如烂笔头,以前从不写博客,现在写的目的也是记录一下,为了以后用到的时候不用到处找,同时也方便需要这些资料的人,很多博客也是从网上扒下来的,并非是自己原创,有问题可以提出,看到了我会回复的
展开
-
IDEA import导入的类明明存在,却飘红
一、点击ideal左上角的File 选择 Invalidate Caches。原创 2022-10-12 10:00:53 · 491 阅读 · 1 评论 -
解决gitLab上新建分支,idea中找不到对应分支问题
新公司用的是gitlab,然后我的同事在服务器上新建了分支给予我来开发,可是我没有检测到新建的分支:1.同事给我在服务器上新建了一个名为'51'的分支,可是博主的idea工具中没有发现此分支,如下图:只发现有50的分支:2.解决方法:1)右键项目(这里是maven),然后操作如下图:2)在控制台输入git pull的命令(注意通过右键项目的git-pul选项只能够拉取项目的代码,并不可以更新分支,控制台输入命令和工具选项操作不同,这点要注意)...原创 2021-12-28 15:11:02 · 4631 阅读 · 0 评论 -
解决Intellij IDEA运行报Command line is too long的问题
报错信息大概如下:Error running 'xxx':Command line is too long. Shorten command line for xxx or also for Application default configuration.解决方案(1):找到项目下的.idea/workspace.xml,在标签<component name="PropertiesComponent">里添加一行属性:<property name="dynamic.c原创 2021-12-28 15:00:25 · 465 阅读 · 0 评论 -
Java线程池理解附常问面试题
1、什么是线程池java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。一个线程池包括以下四个基本组成部分原创 2021-05-18 23:44:32 · 398 阅读 · 0 评论 -
springboot2.0集成RestTemplate
四、POST 请求1:postForObject() 方法的使用1,方法介绍 postForObject()用于发送一个HTTP POST请求。它和postForEntity()用法几乎相同。区别在于postForObject()返回值返回的是响应体,省略了很多response的信息。2,发送一个 JSON 格式数据(1)下面代码使用post方式发...原创 2020-04-15 15:58:54 · 1047 阅读 · 0 评论 -
SpringBoot2.x整合OpenOffice4
1.导入依赖<!-- openOffice 和 jobconverter--><dependency> <groupId>org.jodconverter</groupId> <artifactId>jodconverter-core</artifactId> <version>4.2.2...原创 2020-04-08 14:31:54 · 1827 阅读 · 4 评论 -
ApplicationListener<ContextRefreshedEvent>接口,Spring启动后获取所有拥有特定注解的Bean
最近项目中遇到一个业务场景,就是在Spring容器启动后获取所有的Bean中实现了一个特定接口的对象,第一个想到的是ApplicationContextAware,在setApplicationContext中去通过ctx获取所有的bean,后来发现好像逻辑不对,这个方法不是在所有bean初始化完成后实现的,后来试了一下看看有没有什么Listener之类的,发现了好东西ApplicationLis...原创 2020-01-30 18:28:57 · 2903 阅读 · 1 评论 -
mybatis用注解实现 一对一,一对多,多对多
先给大家看一下我的项目 整个的一个 构造:好,然后 开始我的mybatis关系,用的是mysql1.首先,先导入依赖:<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</vers...原创 2020-01-09 13:47:33 · 1802 阅读 · 0 评论 -
SpringBoot2多模块项目集成mybatis-plus
本人使用的springboot版本为2.1.7,先引入依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope></de...原创 2020-01-07 16:12:24 · 2048 阅读 · 2 评论 -
SpringBoot中事务配置,springmvc项目升级spingboot踩坑
写这篇文章的原因就在于公司原来的springmvc项目升级成springboot项目,历经坎坷,眼看着准备上线了,发现事务配置没迁移过来。大家都知道sptingboot事务配置非常简单,就在启动类上加上@EnableTransactionManagement注解,然后在service层加上@Transactional注解就行了,但是这样有一个缺点就是,每一个service那里都要写这个。但...原创 2019-12-26 20:25:12 · 1935 阅读 · 1 评论 -
SpringBoot系列: 单元测试
SpringBoot 项目单元测试也很方便, Web项目中单元测试应该覆盖:1. Service 层2. Controller 层本文前半部分讲解是一些测试基础配置. 对于Service和Controller测试的讲解,摘自一个博客(嘟嘟独立博客的博客, Spring Boot干货系列:(十二)Spring Boot使用单元测试, 链接: http://tengj.top/2017/12/...原创 2019-12-24 10:10:37 · 278 阅读 · 0 评论 -
JDK1.8,Java8常用新特性
A.Lamdba表达式1.Java8概述Java8,也就是jdk1.8,是意义深远的一个新版本是Java5之后一个大的版本升级,让Java语言和库仿佛获得了新生新特性包含:a.随着大数据的兴起,函数式编程在处理大数据上的优势开始体现,引入了Lambada函数式编程b.使用Stream彻底改变了集合使用方式:只关注结果,不关心过程c.新的客户端图形化工具界面库:JavaF...原创 2019-11-18 15:44:00 · 994 阅读 · 0 评论 -
Spring Boot整合Dubbo&Zookeeper
Spring Boot整合Dubbo&ZookeeperDubbo是一款由阿里巴巴开发的远程服务调用框架(RPC),其可以透明化的调用远程服务,就像调用本地服务一样简单。截至目前,Dubbo发布了基于Spring Boot构建的版本,版本号为0.2.0,这使得其与Spring Boot项目整合变得更为简单方便。而Zookeeper在这里充当的是服务注册中心的角色,我们将各个微服务提供的...原创 2019-11-14 11:05:14 · 224 阅读 · 0 评论 -
使用Jsoup防御XSS攻击
使用Jsoup防御XSS攻击跨站脚本攻击(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。使用Jsoup可以有效的过滤不安全的代码。J...原创 2019-11-13 11:40:10 · 1870 阅读 · 0 评论 -
自定义注解详细介绍
参考:https://blog.csdn.net/xsp_happyboy/article/details/80987484转载 2019-11-12 16:34:54 · 211 阅读 · 0 评论 -
mybatis if test 判断字符串的坑
今天调试一个非常简单的test判断字符串查询语句,怎么调试都是不好用,后来百度才发现,是我写的test标签写错了,我写成:<if test="record.current != null and record.current=='1'" > 注意:1旁边是单引号正确写法:<if test="record.current != null and reco...原创 2019-07-30 14:35:58 · 7529 阅读 · 0 评论 -
java保留两位小数
一、BigDecimal保留两位小数及格式化成百分比在项目中经常会用到小数的一些计算,而float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确。所以有时候必须要采用BigDecimal。pu...原创 2019-10-11 18:22:27 · 2791 阅读 · 2 评论 -
springboot aop的execution 表达式详解
Aspectj切入点语法定义在使用spring框架配置AOP的时候,不管是通过XML配置文件还是注解的方式都需要定义pointcut"切入点"例如定义切入点表达式 execution (* com.sample.service.impl..*.*(..))execution()是最常用的切点函数,其语法如下所示:整个表达式可以分为五个部分:1、execution()...原创 2019-05-07 16:12:04 · 1056 阅读 · 0 评论 -
mybatis动态sql中的两个内置参数(_parameter和_databaseId)
mybatis动态sql中的两个内置参数(_parameter和_databaseId)<!--mybatis动态sql的两个内置参数 不只是方法传递过来的参数可以被用来判断,取值 mybatis默认还有两个内置参数 _parameter:代表整个参数 ...原创 2019-04-15 18:53:14 · 538 阅读 · 0 评论 -
Maven中的依赖范围scope详解
在Maven中依赖的域有这几个:import、provided、runtime、compile、system、test1compile 的范围当依赖的scope为compile的时候,那么当前这个依赖的包,会在编译的时候将这个依赖加入进来,并且在打包(mvn package)的时候也会将这个依赖加入进去意思就是:编译范围有效,在编译与打包时都会存储进去2provided的范围...原创 2019-07-19 15:48:30 · 1164 阅读 · 0 评论 -
解决无法将java目录下的mapper.xml打进war包的问题
只需在build目录下加上如下代码:<resources><resource><directory>src/main/resources</directory><includes><include>**/*.properties</include><include>**/*.xm...原创 2019-05-16 15:45:32 · 415 阅读 · 0 评论 -
spring boot 热部署devtools实现
spring boot 热部署devtools实现1.devtools spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。2.项目搭建 本文是采用IDEA搭建的Spring Boot应用,通过spring-boot-devtools配置,可以支持...原创 2019-04-15 16:00:37 · 234 阅读 · 0 评论 -
win10系统安装 jdk1.7、jdk1.8共存环境配置
一、oracle官网下载jdk1.8进行安装下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 二、oracle官网下载jdk1.7进行安装下载地址:http://www.oracle.com/technetwork/java/javase/downl...原创 2019-04-21 23:24:54 · 1062 阅读 · 0 评论 -
Spring Boot集成Swagger2并替换默认的UI
描述:Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。原生UI界面:Swagger原理:在项目启动的时候,spring会根据swagg...原创 2019-04-09 15:15:34 · 1333 阅读 · 0 评论 -
mysql时间和本地时间相差13个小时
mysql时间和本地时间相差13个小时修改linux的时间 执行tzselect 命令date命令查看时区什么都是对的但是mysql的时间就是不对折腾了一个多小时set global time_zone = '+08:00'; set time_zone = '+08:00'; 这些命令都测试了还是不行后台打印本地new Date()没有问题是北京时间,肯定问题出在my...原创 2019-04-09 14:58:39 · 3824 阅读 · 0 评论 -
SpringMVC统一转换null值为空字符串的方法,处理date类型参数
1、在Java Web中,如果数据库中的值为null,而不做任何转换的话,传到前端页面会显示为null,影响美观。比如,智联招聘网站上的这个样子:在SpringMVC中,可以通过在<mvc:annotation-driven>中配置<mvc:message-converters>,把null值统一转换为空字符串,解决这个问题。下面以JSon交互的方式为例说明如...原创 2019-04-11 16:20:26 · 2593 阅读 · 0 评论 -
springboot配置文件yml和properties配置文件问题
springBoot配置文件yml字符串换行问题yaml源代码:multiLineString1: | line1 hello world line2 yaml demo line3 welcomemultiLineString2: > line1 hello world line2 yaml demo line3 welcomemultiLin...原创 2019-03-22 13:28:01 · 1399 阅读 · 0 评论 -
JAVA 非对称加密算法RSA
非对称加密算法 RSA过程 : 以甲乙双方为例 1、初始化密钥 构建密钥对,生成公钥、私钥保存到keymap中 KeyPairGenerator ---> KeyPair --> RSAPublicKey、RSAPrivateKey 2、甲方使用私钥加密, 加密后在用私钥对加密数据进行数据签名,然后发送给乙方 RSACoder.encryptByPriva...原创 2019-03-07 18:01:59 · 2031 阅读 · 0 评论 -
JAVA图片处理工具类, 生成缩略图,给图片添加图片、文字水印,可设置大小、位置、透明度
/******************************************************************************** Description: 图片水印工具类** @author xcwc1995* @version 1.0*/public class ImageRemarkUtil { // 水印透明度 p...原创 2019-02-27 19:43:27 · 1507 阅读 · 0 评论 -
springboot对date类型参数处理以及如何处理json里面的null
1、针对json格式:在配置文件中加以下配置spring.jackson.date-format=yyyy-MM-dd HH:mm:ssspring.jackson.time-zone=GMT+82、针对form表单格式,加下面这句配置就可以spring.mvc.dateFormat = yyyy-MM-dd HH:mm:ss3、也可以在pojo中对特定的dat...原创 2019-04-29 11:13:11 · 3293 阅读 · 0 评论 -
Quartz应用与集群原理分析
为什么选择QuartzQuartz是Java领域最著名的开源任务调度工具。Quartz提供了极为广泛的特性如持久化任务,集群和分布式任务等,其特点如下:完全由Java写成,方便集成(Spring) 伸缩性 负载均衡 高可用性任务调度其他方案1.Crontab+SQL每天晚上运行定时任务,通过SQL脚本+crontab方式执行,例如,0 2 * * * /x...原创 2019-04-25 17:04:41 · 303 阅读 · 0 评论 -
linux下nginx安装、启动、停止,设置开机启动
安装、启动、停止:http://note.youdao.com/noteshare?id=122fb0fe2ff421d949baa066e157a2b9&sub=E10E967EF37246339B3B85050803388E开始前,请确认gcc g++开发类库是否装好,默认已经安装。 ububtu平台编译环境可以使用以下指令apt-get install build-...原创 2019-05-16 15:39:50 · 2757 阅读 · 0 评论 -
Linux安装jdk1.8和配置环境变量
每次感觉配这个都很简单,但每次都要查一下,毕竟配错一点 后面都比较麻烦,记录一下,方便以后查看。 linux 下安装jdk和windows下的安装是一样的,之前在windows安装的时候是先下载压缩包,然后再配置环境变量。其实在linux下也是一样的。 第一步:创建jdk安装目录(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容易区分) 命令:mkd...原创 2019-05-16 15:37:42 · 2080 阅读 · 0 评论 -
Spring boot集成 MyBatis 通用Mapper
Spring boot集成 MyBatis 通用Mapper配置POM文件<parent><groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version&g...原创 2019-05-16 15:23:23 · 323 阅读 · 0 评论 -
mybatis的 choose -- when test -- otherwise 标签和 if test 标签
1.choose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 otherwise 中的sql。类似于Java 的 switch 语句,choose 为 switch,when 为 case,otherwise 则为 default。例如下面例子,同样把所有可以限制的条件都写上,...原创 2019-05-21 16:47:42 · 7125 阅读 · 0 评论 -
IDEA修改git账号及密码的方法(win10系统)
idea中git工具的用户名修改1.在Terminal中输入git config user.name获取当前的用户名2.修改用户名输入git config --global user.name "用户名"完成修改以上方式不行下面再提供两种:1、file->settings->passwords2、重启IDEA3、执行一次提交或更新当执行...原创 2019-05-07 10:44:46 · 19524 阅读 · 1 评论 -
springboot打成war包部署到外部tomcat
1、<packaging>jar</packaging> 改为 <packaging>war</packaging>2、在maven里排除自带tomcat插件,有两种方法 1)、<dependency> <groupId>org.springframework.boot</gr...原创 2019-05-07 10:33:24 · 1628 阅读 · 6 评论 -
springboot集成redis,并提供redis操作工具类
1、首先贴上配置信息(本人使用的是springboot2.0以上版本):spring: datasource: url: jdbc:mysql://127.0.0.1:3306/pcms?useUnicode=true&charaterEncoding=utf-8&allowMultiQueries=true&serverTimezone=GMT ...原创 2019-05-07 10:00:21 · 749 阅读 · 0 评论 -
Base64编码原理
在互联网中的每一刻,你可能都在享受着Base64带来的便捷,但对于Base64的基础原理又了解多少?今天这篇博文带领大家了解一下Base64的底层实现。Base64的由来目前Base64已经成为网络上常见的传输8Bit字节代码的编码方式之一。在做支付系统时,系统之间的报文交互都需要使用Base64对明文进行转码,然后再进行签名或加密,之后再进行(或再次Base64)传输。那么,Base...原创 2019-01-11 15:13:11 · 238 阅读 · 0 评论