
java
文章平均质量分 76
新垣不结衣
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Runtime.class有什么用
Every Java application has a single instance of class Runtime that allows the application to interface with the environment in which the application is running.原创 2022-07-12 20:28:54 · 499 阅读 · 0 评论 -
解决Error running IandunCustservApplication. Command line is too long. Shorten the command line
常见异常原创 2022-07-08 11:25:51 · 3720 阅读 · 0 评论 -
gRPC-Java
gRPC-Java原创 2022-07-04 22:06:33 · 313 阅读 · 0 评论 -
mysql 保存emoji表情报错:java.sql.SQLException: Incorrect string value:‘\xF0\x9
MySQL存储表情时报错:java.sql.SQLException: Incorrect string value:‘\xF0\x9F\x92\xA9\x0D\x0A…’的解决方法前情提要我的项目架构:springboot+mybatis+druid+mysql如果在网上搜了半天按照网上大神的做法依然发现在自己的项目中不管用,那么我认为应该从以下几点来排查问题了需要注意的地方:1.数据库的版本以及数据库的编码是否按照utf8mb4修改,首先你要保证你的mysql数据库能够存原创 2021-09-26 21:08:37 · 509 阅读 · 0 评论 -
加密算法(对称加密与非对称加密)
加密算法思维导图对称加密概念对称加密也叫私钥加密,指加解密使用相同秘钥的加密算法。数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。因此对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,原创 2021-03-18 20:59:17 · 1883 阅读 · 0 评论 -
Git基本理论以及常用命令
Git基本理论工作区Git本地有三个工作区,再加上远程的git仓库共四个工作区:工作目录(Working Directory)工作区,就是你平时存放项目代码的地方暂存区(Stage/Index)暂存区,用于临时存放你的改动资源库(Repository)仓库区,就是安全存放数据的位置git仓库(Remote Directory)远程仓库,托管代码的服务器工作流程在工作目录中添加或修改文件将需要进行版本管理的文件放入暂存区–add操作将暂存区的文件提交到仓库–commit将修原创 2021-03-10 21:49:36 · 359 阅读 · 0 评论 -
mybatisGenerator自动生成代码
首先需要添加依赖 <!-- MyBatis 生成器 --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.7</version>原创 2021-03-03 14:25:46 · 184 阅读 · 0 评论 -
.net调用java的Jar包(多种情况解决方案)
一.下载IKVM需要注意版本的问题,JDK版本为1.7的话使用ikvmbin-7.2.4版本,如果JDK版本为1.8的话使用ikvmbin-8.1版本,这个不向低版本兼容哦,如果找不到这个版本的ikvm可以私聊我。下载地址:http://www.ikvm.net/download.html8.1版本下载地址 http://weblog.ikvm.net/2015/08/26/IKVMNET81ReleaseCandidate0.aspx二.配置环境变量解压后,需要配置环境变量,在"Path"中添加原创 2021-02-02 18:36:27 · 3311 阅读 · 2 评论 -
JVM专栏-2.垃圾回收(如何判定对象为垃圾对象)
概述垃圾回收(Garbage Collection,GC),顾名思义就是释放垃圾占用的空间,防止内存泄露。有效的使用可以使用的内存,对内存堆中已经死亡的或者长时间没有使用的对象进行清除和回收。如何判定对象为垃圾对象1.引用计数算法在对象中添加一个引用计数器,当有地方引用这个对象的时候,引用计数器的值就加1,当引用失效的时候(变量记为null),计数器的值就减1。但Java虚拟机中没有使用这种算法,这是由于如果堆内的对象之间相互引用,就始终不会发生计数器-1,那么就不会回收。2.可达性分析法此算法原创 2020-09-27 17:41:03 · 293 阅读 · 0 评论 -
Failed to load driver class com.mysql.cj.jdbc.Driver from-----(springBoot连接mysql出现的各种问题)
背景自己在写点代码的时候之前pom文件的内容都是从前一个项目中复制的,并没有认真分析一下各种依赖的关系,有时候重复的问题会出现好多次,比如说连接数据库报错,有时候配置没有问题,可能是依赖的jar包的问题,有时候jar包依赖的正确可能是配置的问题。明确项目环境以及我们的需求首先我们需要明确的知道我们使用的mysql数据库的版本,是mysql5系列版本还是比较新的mysql8系列版本这个关系到我们引入的jar包,以及具体的配置其次我们需要知道我们所用的springboot的版本,不同springboo原创 2020-08-05 16:01:36 · 5515 阅读 · 1 评论 -
在RestController中获取各种信息的方法
内容获取方法URL中路径的一部分首先需要在RequestMapping做映射, 之后在方法中可以通过注解使用映射的变量 @GetMapping("/{id}")public Student getStudent(@PathVariable(“id”) int id {}可以写多个)POST方法传递过来的Json给参数前加个@RequestBody注解, Spring会自动把POST的Request Body部分的Json转成方声明的类。如果转化失败会返回4xx错误,表示请求参...转载 2020-08-04 09:53:27 · 1212 阅读 · 0 评论 -
Java并发编程:volatile关键字解析
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解一下与内存模型相关的概念和知识,然后分析了volatile关键字的实现原理,最后给出了几个使用volatile关键原创 2020-07-29 09:00:59 · 158 阅读 · 0 评论 -
解决java.lang.NoClassDefFoundError: org/apache/ibatis/session/SqlSession
控制台报错信息org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.mrx.aop.AopLogSpringBootApplication#MapperScannerRegistrar#0': Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache原创 2020-07-20 10:36:13 · 7123 阅读 · 0 评论 -
解决阿里云服务器采用docker部署web项目遇到的问题以及具体配置文件
所使用到的docker容器jdk1.8nginx1.19redis5.0mysql5.7项目所用到的docker-compose文件jdkversion: "3"services: febsshiro: container_name: febsshiro restart: always image: java:8 volumes: - ./febsshiro.jar:/febsshiro.jar - ./logs:/logs原创 2020-07-16 08:52:36 · 547 阅读 · 0 评论 -
Java虚拟机详解-内存结构和垃圾回收
以下是本系列博客参考的相关文档: 来源链接:https://juejin.im/post/5ef1fd01f265da02ab172c19 ①、JDK1.7虚拟机规范:docs.oracle.com/javase/spec… JDK1.8虚拟机规范:docs.oracle.com/javase/spec… ②、Oracle Java SE 8 产品组件:docs.oracle.com/javase/8/do… ③、周志明老师:《深入理解Java虚拟机:JVM高级特性与转载 2020-06-30 09:57:50 · 398 阅读 · 0 评论 -
nginx是什么?nginx常用方法附带对应的配置文件
nginx 常用用法什么是nginxNginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在高连接并发的情况下,Nginx是Apache服务器不错的替代品。原创 2020-06-28 15:58:28 · 575 阅读 · 0 评论 -
完美解决异常javax.net.ssl.SSLHandshakeException: sun.security.validator.
使用Java访问https请求exception网上搜索了好多,主要说明是证书方面的问题,现在汇总网上的解决办法,总结处理两种笔记简单的方法1.使用浏览器导出证书使用浏览器访问对应的网站例如 百度(www.baidu.com)之后按照图片的步骤将证书导出到自己定义的位置然后把证书复制到%JAVA_HOME%/jre/bin/路径下,即保证证书与keytool.exe文件同目录进入keytool.exe目录 通过cmd控制台执行导入证书命令keytool -import -alias原创 2020-06-18 08:44:50 · 12746 阅读 · 4 评论 -
使用Docker-compose构建项目
docker-compse 构建tomcat新建docker-compse.yml文件编辑 version: '3' service: tomcat: restart: always image: tomcat container_name: tomcat ports: - 8080:8080执行docker-compose upDocker Compose 实战Tomcatvers原创 2020-05-20 21:44:14 · 281 阅读 · 0 评论 -
自动生成sql以及实体类接口-基于mybatis逆向工程
基于mybatis逆向工程生成对应数据库表的sql语句,接口以及实体类首先需要创建一个maven项目pom需要引入三个依赖<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.4</version> </dependency>原创 2020-05-20 21:39:59 · 428 阅读 · 0 评论 -
@Transactional注解失效
一、事务事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种。编程式事务:是指在代码中手动的管理事务的提交、回滚等操作,代码侵入性比较强,如下示例:1try{2//TODOsomething3transactionManager.commit(status);4}catch(Excepti...转载 2020-03-29 17:33:11 · 281 阅读 · 0 评论 -
近期工作中Oracle常用的sql
1.oracle中的exists 和not exists 用法详解exists表示()内子查询语句返回结果不为空说明where条件成立就会执行主sql语句,如果为空就表示where条件不成立,sql语句就不会执行。not exists和exists相反,子查询语句结果为空,则表示where条件成立,执行sql语句。负责不执行。例子:在更新用户信息表的时候,明显提高效率update sy...原创 2020-03-23 21:02:01 · 325 阅读 · 0 评论 -
java配置多个数据源,多个mapper location时, mybatis spring的自动扫描配置
1. MapperScannerConfigurer 里面的basePackage, 多个package用逗号分隔2. SqlSessionFactoryBean里面的mapperLocations, 用<list><value></value>...</list>设置例如:<bean id="propertyConfig" cl...转载 2020-02-25 10:13:49 · 2054 阅读 · 0 评论 -
数据库索引需要了解的知识
MySQL索引类型包括:普通索引这是最基本的索引,它没有任何限制。它有以下几种创建方式:创建索引CREATE INDEX indexName ON mytable(username(length));//如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB和TEXT类型,必须指定 length,下同。修改表结构ALTER mytable ADD ...原创 2020-02-21 18:36:31 · 295 阅读 · 0 评论 -
JVM常见面试问题
1.JVM五大内存结构程序计数器 java栈(虚拟机栈) 本地方法栈 堆 方法区2.JVM里常用的算法判断那些对象已死用到的算法:引用计数法(解决不了对象之间相互循环引用的问题) 可达性分析算法垃圾收集算法:标记-清除算法 标记-复制算法 标记-整理算法3.OutOfMemoryErrorjava堆内存溢出(java heap space) 虚拟机栈和本地...原创 2020-02-19 16:44:48 · 198 阅读 · 0 评论 -
mybatis工作流程
1、加载配置文件。需要加载的配置文件包括全局配置文件(SqlMapConfig.xml)和SQL(Mapper.xml)映射文件,其中全局配置文件配置了Mybatis的运行环境信息(数据源、事务等),SQL映射文件中配置了与SQL执行相关的信息。 2、创建会话工厂。MyBatis通过读取配置文件的信息来构造出会话工厂(SqlSessionFactory)。 3、创建...原创 2020-02-09 13:53:51 · 441 阅读 · 0 评论 -
SpringMVC的工作流程
1、用户发送请求至前端控制器DispatcherServlet。2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。3、处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。4、 DispatcherServlet调用Handl...原创 2020-02-09 13:52:48 · 162 阅读 · 0 评论 -
SpringBoot读取配置文件的5种方式
优先使用applilcation.properties中的数据,其次application.yml。1.@Value注解@Componentpublic class Student { @Value("${student.name}") private String name; @Value("${student.age}") private Inte...转载 2019-12-11 10:43:42 · 238 阅读 · 0 评论 -
Comparator接口实现排序-对Map中的某一个字段进行排序--List排序
//rList为List<Map<String,String>>类型Collections.sort(rList, new Comparator<Map<String, String>>() { @Override public int compare(Map<String, String> o1, Map<St...原创 2019-10-09 14:35:17 · 762 阅读 · 0 评论 -
java开启一个新的线程
Runnable r = new Runnable() { @Override public void run() { try { Thread.sleep(1000);//线程睡眠一秒,根据业务不同可以除去 activitiPushServiceImpl.firstPush(processInfo);//调取对应的接口,获取方法,也可以直接写入业务代码...原创 2019-10-09 14:29:07 · 395 阅读 · 0 评论 -
mysql在字段结尾加指定的数,或者删除指定的位数
需求:因为测试环境和生产环境的问题,现在从生产数据库中导出的数据,导入测试数据库时,需要在表id后面加01,对于几千条数据的表的话,不可能手动进行添加,需要用到mysql的函数concat()解决办法:update 表名 set 字段=concat(字段,'需要拼接的数');update t_pt_sign_lg set sign_prsn_id=concat(sign_prsn_id...原创 2019-09-29 10:34:29 · 890 阅读 · 0 评论 -
activit6.0 根据当前节点信息获取下一步的审批人信息
背景:公司内部oa系统进行审批,需要集成极光推送,这样的话,需要在审批的时候,通过当前节点,查找出下一个需要审批人的信息,在网上查看了很多资料,大多都是activit版本对不上,还有就是提供的代码不完整,思路也不清晰,下面为个人解决这个问题提供的一个办法首先我们要先分析使用的流程图,由于我们公司审批业务比较简单,所以我们用的是自定义的通用模板如下所示:具体思路是:通过获取到当前的节...原创 2019-08-20 18:40:22 · 8128 阅读 · 3 评论 -
springboot环境下工具类中注入对象或者静态方法中工具类中注入对象
众所周知工具类一般为static的,如果我们在工具类中需要操作数据库,那么spring环境下需要注入service或者dao将对象交给spring进行管控,但是静态的的对象是无法被注入的,代码可能会出现各种空指针。需要采用@PostConstruct注解,具体@PostConstruct使用的条件:1.@PostConstruct 用在方法上2.使用这个注解的类必须可以被spring管...原创 2019-06-04 16:20:29 · 2978 阅读 · 1 评论