- 博客(23)
- 收藏
- 关注
原创 Java并发学习:进程与线程的区别
一个进程是一个程序的一次启动和执行,是操作系统程序装入内存,给程序分配必要的系统资源,并且开始运行程序的指令。同一个程序可以多次启动,对应多个进程,例如同一个浏览器打开多次。一个进程由程序段、数据段和进程控制块三部份组成:为什么有线程?线程解决了什么问题?随着计算机的发展,CPU的性能越来越高,从早期的20MHz发展到了现在的2GHz以上,从单核CPU发展到了多核CPU,性能提升了成千上万倍。为了充分发挥CPU的计算性能,提升CPU硬件资源的利用率,同时弥补进程调度过于笨重产生的问题,进程内部演进出了并发调
2025-01-27 22:24:36
374
原创 Java集合学习:HashMap的原理
首先,我们先要搞清楚HashMap里的的Hash是啥意思。当我们在编程过程中,往往需要操作。在顺序表中查找时,需要从表头开始,依次遍历比较a[i]与key的值是否相等,直到相等才返回索引i;在有序表中查找时,我们经常使用的是二分查找,通过比较key与a[i]的大小来折半查找,直到相等时才返回索引i。最终通过索引找到我们要找的元素。但是,这两种方法的。那能不能不经过比较,而是一次得到所要的结果呢?这时,就有了。
2025-01-23 23:08:39
831
原创 mybatis-plus把实体某字段设为null后更新到数据库失败
问题描述项目采用spring boot2.0.4 + mybatis-plus3.0.7.1的架构,有个需求是把数据库某行数据某字段设为null,代码实现如下:Entity entity = getById(id);entity .setColumn(null);saveOrUpdate(dfmeaStructureTree);先根据id获取实体,把字段设为null,再调用mybatis-plus自带方法saveOrUpdate更新后来发现并不能成功把数据库里的字段设为null解决方案代码
2020-11-05 19:36:52
1328
2
原创 com.aspose.cells Excel转为Pdf输出,表头过长合并到一页pdf方法
PdfSaveOptions saveOptions = new PdfSaveOptions();//重点,设置所有列放在一页里,会自动适应宽度saveOptions.setAllColumnsInOnePagePerSheet(true);workbook.save(response.getOutputStream(), saveOptions);...
2020-05-07 17:22:18
3598
5
原创 本地测试可以ping通的域名,腾讯云服务器上ping不通
原因:服务器默认的 DNS 无法解析该域名解决方案:vim /etc/resolv.conf参考下图添加nameserver 114.114.114.114
2020-04-07 17:48:00
1633
原创 mysql + mybatis 批量更新的sql报错(放到数据库执行却可以)
需要允许mysql一次可执行多条sqlurl=jdbc:mysql://localhost:3306/demo?characterEncoding=utf-8&allowMultiQueries=true
2020-02-27 10:30:51
619
原创 Spring boot + MyBatis Plus 分页无效
欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体...
2020-02-27 10:28:33
552
原创 IDEA常用快捷键汇总(都是精华)
Ctrl+F 当前文件查找Ctrl+R 当前文件替换Ctrl+D 复制当前行Ctrl+X 删除(剪切)当前行Ctrl+F4 关闭当前文件Ctrl+Alt+T 使用代码模板Ctrl+Alt+L 整理代码格式Ctrl+Alt+V 自动补全变量名Ctrl+Alt+鼠标左键 进入类或实现方法Ctrl+Shift+F (根据范围)查找文件内容Ctrl+Shift+R (根据范围)替换文件...
2019-07-01 15:57:52
245
原创 Spring boot开发时,短时间没操作后数据库连接断开的问题
解决方法:配置time-between-eviction-runs-millis和min-evictable-idle-time-millisspring: datasource: url: xxx username: xxx password: xxx driverClassName: xxx tomcat: time-between-eviction-runs-...
2019-04-23 20:33:18
12178
原创 Spring boot 报错:java.io.IOException: The temporary upload location XXX is not valid
在启动类中注入bean,配置文件上传路径:@Bean MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); factory.setLocation("C:\\xxx"); return factory.creat...
2019-04-23 20:13:38
512
原创 使用spring.profiles.active+环境变量,实现多环境(开发、测试、生产)动态配置
项目背景采用Spring Cloud+Spring boot+Maven+GitLab+Docker等技术,搭建了一个基于微服务框架的项目,实现了从开发到部署到运维的一套工作模式。问题描述开发环境的配置与生产环境的配置不一样(数据库连接、eureka配置等),开发人员需要频繁修改配置环境以适应开发或生产要求,这样效率太低了。解决方案采用spring.profiles.active+环境变...
2019-03-13 21:31:22
9255
1
原创 spring boot不用parent引入,采用dependencyManagement引入后的坑
项目背景采用IDEA+Maven+Spring boot+Spring Cloud搭建了以微服务为框架的系统。问题描述由于各个子项目需要继承自己写的父pom,于是把原本spring boot的parent去掉,改为用dependencyManagement引入,代码如下://去掉原本的parent<!--<parent> <grou
2019-02-14 14:02:39
9034
原创 Spring boot + hibernate 懒加载报错:could not initialize proxy - no Session
项目背景旧项目改造成Spring boot 项目,使用了旧配置的方式引入了hibernate(非jpa)问题描述后台“对象.另一个对象”时报错:could not initialize proxy - no Session,出现了懒加载问题。原因分析出现该错误的原因是Hibernate使用sessionFactory来管理session,我们每进行一次数据库操作时都会新建一个sessio...
2019-01-14 09:23:43
1261
1
原创 Docker容器上Spring Cloud微服务相互调用时报错:java.net.UnknownHostException:主机名
项目背景:采用Spring Cloud+IEDA+Maven搭建了由多个微服务组成的项目,部署上线是用的是Docker容器技术。问题描述:部署上线过程中,各个微服务都正常启动,而且都注册到了eureka注册中心,但是相互调用时报java.net.UnknownHostException:主机名的错误。原因分析:各个微服务是以“主机名:服务名:端口”的形式注册到注册中心。当本地测试时,主机是同一...
2018-10-25 19:08:04
9619
2
原创 IDEA+Spring Cloud+Maven模块化项目打包的坑
背景:采用Spring Cloud框架搭建了一个项目,里面包含多个微服务,其中项目A依赖项目B,项目B里面是公共类。坑一:cmd命令——mvn package打包出错打包项目A的时候,用IDEA里面的maven插件打包没有问题,但是用cmd命令mvn package打包时报错,报错信息说找不到项目B里面的类。于是开始排查问题,私库和本地库上都有B的jar包,A的pom文件也有B的依赖,一切看...
2018-10-24 14:26:15
7010
2
原创 Java生成File文件大小为0问题
java生成的File文件总是0kb,附上源代码: ... FileWriter fw = new FileWriter(f2); BufferedWriter bw = new BufferedWriter(fw); String str = null; while ((str = br.readLine()) != null) ...
2018-10-11 19:57:21
6959
原创 IOS:view切换后导航栏出现多余区域
当创建某一个UIViewController B,并push到ViewController B时,B执行方方法的顺序如下:1>viewDidLoad2>initWithNibName3>init4>viewWillAppear5>viewWillLayoutSubviews6>viewDidLayoutSubviews7>viewDidApp...
2018-10-11 19:42:36
334
原创 shiro权限框架学习——简单概念和使用
shiro权限框架学习目录1.Apache Shiro 简述2.shiro与Spring的整合3.总结1.Apache Shiro 简述1.1概念Apache Shiro是Java的一个安全框架。它不仅功能强大,而且使用简单,为开发人员提供了一个直观全面的认证、授权、加密、会话管理等解决方案。1.2与Spring Security对比shiro配置
2016-12-29 09:31:43
836
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人