java个人笔记
java个人笔记
zhopq
一键三连加关注
展开
-
解决ClassLoader.getSystemResourceAsStream(fileName)无法读取文件,报空问题
使用ClassPathResource。原创 2022-12-31 16:56:16 · 1184 阅读 · 1 评论 -
Java 支持跨域
WebMvcConfig是自定义的类名,主要是实现WebMvcConfigurer接口,项目中那个类实现了WebMvcConfigurer接口就在那个类里写。原创 2022-12-23 00:57:41 · 788 阅读 · 0 评论 -
idea 方法注释模板
【代码】idea 方法注释模板。原创 2022-12-10 14:00:02 · 247 阅读 · 0 评论 -
win&linux下gradel安装
win&linux下gradel安装1. 下载地址下载认准bin结尾2. 解压3. 设置环境变量(1) win安装path:(2) linux安装vim /etc/profile#gradleexport GRADLE_HOME=/mnt/d/gradle-4.7 #gradle 主目录export PATH=$GRADLE_HOME/bin:$PATH #配置path重新加载文件source /etc/profile4. 查看gradle是否配置成功:注原创 2022-11-08 14:16:45 · 292 阅读 · 0 评论 -
SpringBoot+JWT+redis实现拦截器(每次请求更新token过期时间)
【代码】SpringBoot+JWT+redis实现拦截器(每次请求更新token过期时间)SpringBoot+JWT+redis实现拦截器(每次请求更新token过期时间)1. redis(用来存储token以及登录有效期,如果没有不用redis,token可以存在session或者cookie里)2. 每次请求延长过期时间.生成的token有效期设置长一些,存到redis里面,每次请求查看redis是否有token,如果有请求成功redis延长,如果没有就代表在规定时间内没有请求过则登录失效,重原创 2022-10-28 08:33:03 · 2217 阅读 · 3 评论 -
java 实体类转成Map
java 实体类转成Map原创 2022-10-12 15:28:31 · 327 阅读 · 0 评论 -
mybatis-plus反向生成代码
mybatis-plus反向生成代码原创 2022-09-23 14:10:24 · 186 阅读 · 0 评论 -
pom.xml下自己规定source folders(java代码)&resource folder(配置文件)&webapp目录路径(视图层)
pom.xml下自己规定source folders(java代码)&resource folder(配置文件)&webapp目录路径(视图层)原创 2022-09-16 09:43:00 · 724 阅读 · 0 评论 -
Idea通过remote调试tomcat代码
idea调试tomcat代码原创 2022-09-01 09:31:44 · 236 阅读 · 0 评论 -
java spring解决循环依赖
报错:org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'xxxServerImpl': Bean with name 'xxxServerImpl' has been injected into other beans [userSiteServiceImpl] in its raw version as part of a circular referenc原创 2021-06-23 14:50:05 · 243 阅读 · 0 评论 -
maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:te.............
maven报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (default-test) on project mp: There are test failures.Please refer to /Users/zpq/work/code/mp/target/surefire-reports for the individual test results.解决方法:pom.x原创 2021-05-13 10:30:20 · 1054 阅读 · 0 评论 -
通过java程序判断本机是否已连接至网络
boolean network = false; try { network = InetAddress.getByName("www.baidu.com").isReachable(3000); } catch (IOException e) { e.printStackTrace(); } if (network) { log.info("网络不可达!"); ...原创 2021-03-24 17:10:27 · 943 阅读 · 0 评论 -
mybatis-plus修改空值,把字段修改成空
@TableField(updateStrategy = FieldStrategy.IGNORED)原创 2021-03-16 11:22:45 · 4933 阅读 · 2 评论 -
maven:分别给每个项目配置不同的中央库
直接在项目的pom.xml中修改中央库的地址。如下: <repositories> <repository> <id>maven</id> <name>maven</name> <url>http://maven.net.cn/content/groups/public/</url> </repository> </repositories>...原创 2021-03-05 09:41:53 · 724 阅读 · 1 评论 -
Mybatis-plus条件构造器QueryWrapper方法集合
mybatis-plus原创 2021-02-27 15:14:52 · 1034 阅读 · 0 评论 -
Java传给前端的Long类型字段要转为String类型
@JSONField(serializeUsing = ToStringSerializer.class)private Long id;原创 2020-12-17 15:25:37 · 1575 阅读 · 0 评论 -
mybatis-plus高级功能 实现自定义通用方法详解
前言MP在一开始就给大家提供了很多通用的方法,在DefaultSqlInjector这个类中,在MethodList这个集合当中包含的都是通用方法类,如果想要使用自定义通用方法,也需要添加到这个集合当中。/** * SQL 默认注入器 * * @author hubin * @since 2018-04-10 */public class DefaultSqlInjector extends AbstractSqlInjector { @Override public L原创 2020-11-10 16:06:28 · 6365 阅读 · 2 评论 -
java 利用反射给一个实体类指定字段赋值
上代码package com.xxx.xxx.util;import java.lang.reflect.Field;/** * @auther: zpq * @date: 2020/11/9 14:43 * @description: 设置用户信息 */public class ReflectionUtil { /** * @Description: 通过反射设置字段值 * * @auther: zpq * @date: 2020/11/9 3:53 下午原创 2020-11-09 16:35:12 · 5490 阅读 · 2 评论 -
解决:required a bean of type ‘org.springframework.web.client.RestTemplate‘ that could not be found.与扩展
错误描述:Description:Field restTemplate in com.tky.bim.basedata.service.impl.RelationV1Update required a bean of type 'org.springframework.web.client.RestTemplate' that could not be found.The injection point has the following annotations: - @org.springfr原创 2020-11-05 17:45:17 · 7156 阅读 · 1 评论 -
Spring RestTemplate 介绍与使用
什么是RestTemplate传统情况下在java代码里访问restful服务,一般使用Apache的HttpClient。不过此种方法使用起来太过繁琐。spring提供了一种简单便捷的模板类来进行操作,这就是RestTemplateRestTemplate用来干什么?RestTemplate能大幅简化了提交表单数据的难度,并且附带了自动转换JSON数据的功能,但只有理解了HttpEntity的组成结构(header与body),且理解了与uriVariables之间的差异,才能原创 2020-11-05 17:44:14 · 907 阅读 · 0 评论 -
mybatis-plus 新增/修改实现自动填充指定字段
需要修改的字段在模型类上添加@TableField(fill = FieldFill.xxx) 注解。FieldFill的选项:哪个字段在什么时候填充需要手动设置注解新建一个MetaObjectHandler的实现类MyMetaObjectHandlerpackage com.demo.mp.config;import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;import org.apache.ibati.原创 2020-11-02 15:06:49 · 4480 阅读 · 4 评论 -
maven编译报错Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile..........
我是引入了mapstruct工具包之后报的错,我们不告诉【maven】我们的代码要使用什么样的jdk版本编译的话,它就会用maven-compiler-plugin默认的jdk版本来进行处理,这样就容易出现版本不匹配的问题,以至于可能导致编译不通过的问题。原创 2020-10-31 09:45:19 · 35987 阅读 · 10 评论 -
mybatis-plus QueryWrapper and or 连用并且分页
Page<EbsGclqdDataRelation> rpage = ebsGclqdDataRelationMapper.selectPage( new Page<>(pageBean.getPageSize(), pageBean.getPageNum()), new QueryWrapper<EbsGclqdDataRelation>() .eq("siteid", s.原创 2020-10-22 09:42:07 · 1440 阅读 · 0 评论 -
java-spring-log 日志打印格式配置
yml中:#logginglogging: config: classpath:logback.xmllogback.xml<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="60 seconds" debug="false"> <contextName>sixsector</contextName> <property原创 2020-10-21 14:49:08 · 737 阅读 · 0 评论 -
linux下安装Jenkins与配置并且搭建maven工程
下载安装wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.249.2-1.1.noarch.rpm && rpm -ivh jenkins-2.249.2-1.1.noarch.rpm默认安装路径自动安装完成之后:/usr/lib/jenkins/jenkins.war WAR包/etc/sysconfig/jenkins 配置文件/var/lib/jenkin原创 2020-10-10 17:04:48 · 1930 阅读 · 1 评论 -
写一个Jenkins启动springboot的脚本
#!/bin/bash -ileproject=gcjgfj-0.0.1-SNAPSHOT.jarpathName=test-gcjgfjecho "拷贝文件"rm -rf /usr/local/src/app/$projectcp /var/lib/jenkins/workspace/$pathName/target/$project /usr/local/src/app/gcjgfj/echo "切换路径"cd /usr/local/src/app/gcjgfj/ pid=`ps -原创 2020-10-10 10:02:56 · 483 阅读 · 2 评论 -
Java 后台运行jar程序
nohup java -jar demo-0.0.1-SNAPSHOT.jar > log.file 2>&1 & --上面的2 和 1 的意思如下: 0 标准输入(一般是键盘) 1 标准输出(一般是显示屏,是用户终端控制台) 2 标准错误(错误信息输出)将运行的jar 错误日志信息输出到log.file文件中,然后(>&1)就是继续输出到标准输出(前面加的&,是为了原创 2020-10-10 09:34:16 · 259 阅读 · 0 评论 -
无法解析com.oracle:ojdbc14:XXXXX问题解决方案
问题:Cannot resolve com.oracle:ojdbc14:10.2.0.2.0在c盘新建oracle文件夹,将下载好的oracle14.jar放到oracle文件夹中(其它地方也成)问题:Cannot resolve com.oracle:ojdbc14:10.2.0.2.01.到链接:链接:https://pan.baidu.com/s/1YGzHA5U8mi9IjbMFjxAM4w 提取码:bslh复制这段内容后打开百度网盘手机App,操作更方便哦下载你所需要的oraclejar原创 2020-09-21 16:49:09 · 4868 阅读 · 2 评论 -
aop主要术语
aop几个主要的术语不是全部的哦->连接点:可以被增强的的方法称为连接点(可以被增强但不一定进行增强)切入点:实际被增强的方法称为切入点通知(增强):被增强的具体功能就是通知而通知分为五种,a、前置通知 b、后置通知 c、环绕通知(前后都执行)d、异常通知(当切入点发生异常时执行)e、最终通知(相当于异常的finally,也就是说无论如何都会执行)切面:见名知意就是把面切开条沸水煮熟放入鸡蛋小油菜以及调料,然后就能吃了 哈哈哈哈当然不是,切面就是通知应用到切入点的整个过程就是切-面完………原创 2020-07-19 16:49:46 · 118 阅读 · 0 评论 -
mybatisPlus逻辑删除
SpringBoot 配置方式:application.yml 加入配置(如果你的默认值和mp默认的一样,该配置可无):yml文件(注意:区别是多了一个路径db-config)mybatis-plus: global-config: db-config: logic-delete-value: 1 # 逻辑已删除值(默认为 1) logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)对于逻辑删除拦截器的bean的注入方式:impor原创 2020-09-14 09:54:43 · 299 阅读 · 1 评论 -
java四种元注解
元注解在java5.0中提供了四种特殊的标准注解(元注解),这四种注解为其它注解提供了注解能力@Retention 注解作用的阶段 接受RetentionPolicy枚举类 SOURCE 源代码阶段 CLASS 字节码阶段 RUNTIME 运行时阶段@Target 注解作用的目标 接受哟个ElementType 的枚举类型数组 TYPE 类,接口 FIELD 字段 METHOD 方法 PARAMETER 形式参数 CONSTRUCTOR 构造器 LOCAL_VAR原创 2020-09-12 19:43:16 · 129 阅读 · 0 评论 -
SpringBoot创建测试类
//@RunWith是JUnit的一个注解, 用来告诉JUnit不要使用内置的方式进行单元测试, 而应该使用指定的类做单元测试 对于Spring单元测试总是要使用 SpringRunner.class@RunWith(SpringRunner.class)//告诉测试类启动类(这里的XXXApplication是自己再main/java包下的启动类) 因为启动类加载类配置文件 还有包扫描 才能使用Spring中的bean对象@SpringBootTest(classes = XXXApplica...原创 2020-09-12 11:18:12 · 4265 阅读 · 0 评论 -
java - ThreadPoolExecutor线程池原理
为什么使用线程池?降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗;提高系统响应速度,当有任务到达时,通过复用已存在的线程,无需等待新线程的创建便能立即执行;方便线程并发数的管控。因为线程若是无限制的创建,可能会导致内存占用过多而产生OOM,并且会造成cpu过度切换(cpu切换线程是有时间成本的(需要保持当前执行线程的现场,并恢复要执行线程的现场))。提供更强大的功能,延时定时线程池。线程池使用的一个例子测试性能package com.demo.mp;impor原创 2020-08-29 20:15:05 · 145 阅读 · 0 评论 -
ElasticSearch&kibana的安装和使用
### ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb接口。ElasticSearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。构建在全文检索开源软件Lucene之上的Elasticsearch,不仅能对海量规模的数据完成分布式索引与检索,还能提供数据聚合分析。据国际权威的数据库产品评测机构DBEngines原创 2020-08-01 03:21:23 · 1077 阅读 · 0 评论 -
kibana后台运行
进入bin目录执行nohub kibana 启动,然后强退shell重进,或者exit然后冲进。原创 2020-07-31 00:05:42 · 2929 阅读 · 2 评论 -
java 实体类 时间格式化
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")pattern:时区timezone:时区@JsonFormat 默认是标准时区的时间,多出现少8小时的情况使用时,按需求加上时区 北京时间 东八区 timezone=”GMT+8”作用:后台的时间 格式化 发送到前台@DateTimeFormat 接受前台的时间格式原创 2020-07-24 15:49:45 · 9166 阅读 · 0 评论 -
事务的脏读,不可重复读,幻读(虚读)以及隔离级别
事物中有一个特性叫做“隔离性”,就是多事务之间,不会产生影响。不考虑隔离性就会产生很多的问题:脏读,不可重复读,幻读(虚读)。脏读:一个未提交的事物读取到了另一个未提交事物的数据举个例子:a员工的工资为1000元,老板开启一个事物修改员工的工资为2000元,但是老板娘此时正在给a员工发工资,因为事物还没有提交是可以回滚的,但是老板娘查看到的工资就是2000元,可是此时老板想再考虑一下把事物给回滚了,尴尬的是工资却已经发出去了,那没有办法,老板这个月零花钱没了,所以说,多么痛的领悟!不可重复读:说不可重原创 2020-07-22 23:11:08 · 710 阅读 · 0 评论 -
spring-JdbcTemplate之旅
spring-JdbcTemplate之旅:两个小时看完jdbc-template(jdbc模版)下面做一个简单的小结,没什么好说的个人感觉正常项目也用不到,但是得对自己负责,不辜负两个小时的努力。那什么是 JdbcTemplate 呢?JdbcTemplate就是Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作,也就是说封装了一些常用的api,包括简单的crud,批量修改,批量插入,批量删除等等,但还是很鸡肋啊!因为sql还会写成一个个字符串。。。如原创 2020-07-21 23:31:27 · 145 阅读 · 1 评论 -
spring-aop通知的五种类型以及结合AspectJ简单用法
通知(增强):被增强的具体功能就是通知通知分为五种:1. 前置通知 @Before2. 后置通知 @AfterReturning3. 环绕通知(前后都执行) @Around4. 异常通知(当切入点发生异常时执行) @AfterThrowing5. 最终通知(相当于异常的finally,也就是说无论如何都会执行) @AfterAspectJ1、Spring 框架一般都是基于 AspectJ 实现 AOP 操作(1)AspectJ 不是 Spring 组成部分,独立 AOP 框架,一般把 As原创 2020-07-20 23:23:39 · 403 阅读 · 0 评论 -
idea https://start.spring.io搭建springboot项目失败问题
简直了!网上不停的搜,99%都是一个解决办法 ,就是将https://start.spring.io 换成http://start.spring.io,但是呢?不好使!可能是网太慢的原因吧。。。如果你苦苦找寻问题的答案而不得其解,请试一下下面的办法——————使用 https://start.aliyun.com 路径创建,如下:如果有帮助可以 点赞 收藏 加关注 ????,你的鼓励是我最大的动力,????谢谢哟亲!...原创 2020-07-03 15:11:15 · 388 阅读 · 0 评论