综合( 右侧选择分类 )
android

Glide加载大量的图片导致的OOM解决总结

Glide果然好用,调用方便,提供多种图片加载框架,一直用的是Glide,这里我也没有改,项目上线一个月了,突然测试发现一个问题,就是图片是概率黑屏,我一致以为是图片未下载成功,就没在意,因为老化房有一台设备,一致在运行,没有出现这个问题,后来我自己下载了4K的高清出片,来测试,果然OOM,很好奇,Glide应该有缓存处理的工作,但是我无论怎么优化,还是OOM,从studio监控的内存状态,目前系
7121 人浏览
hangge

SpringBoot - 使用Spring Data JPA操作数据库1(安装配置,基本用法)

一、基本介绍1,什么是 JPAJPA 是 Java Persistence API 的简称,中文名 Java 持久层 API。我们都知道 Hibernate 框架是一个 ORM 框架,而 JPA 则是一种 ORM 规范。JPA 和 Hibernate 的关系就像是 JDBC 与 JDBC 驱动的关系,即 JPA 制定了 ORM 规范,而 Hibernate 是这些规范的实现。因此从功能来说,JPA
3084 人浏览
hangge

Linux - 使用tar命令打包指定目录下的所有文件(但不包含该目录)

1,问题描述 (1)无论是 Linux 系统,还是 macOS 系统,我们都可以使用 tar 命令进行文件的压缩打包。命令格式如下:tar cvf xxxx.tar 要压缩的文件或目录名称(2)但如果要压缩的目录层级比较多时,比如:tar cvf dist.tar /Volumes/BOOTCAMP/Vue/achievement/dist(3)解压后会发现整个路径也都一起打包进去了:2,打包时不
5096 人浏览
hangge

Linux - 常用命令汇总(内存cpu使用率、目录大小、文件复制、压缩、防火墙...)

一、系统监控1,内存占用情况使用 free 命令可以显示闲置内存、总内存和交换内等方面的信息,单位是字节。 2,CPU 占用情况使用 top 命令能够实时显示系统中各个进程的资源占用状况。按“q”即可退出 top 屏幕。注意:kill -9 PID 可以强制中断一个进程3,磁盘占用情况(1)执行如下命令可以列出文件系统的整体磁盘使用量:df -hl (2)执行如下命令可以查看当前目录下各个文件
2461 人浏览
hangge

SpringBoot - 使用MyBatis操作数据库2(多数据源的配置与使用)

所谓多数据源,就是一个 Java EE 项目中采用了不同数据库实例中的多个库,或者同一个数据库实例中多个不同的库。MyBatis 也可以配置多数据源,下面通过样例进行演示。三、多数据源的配置与使用1,添加依赖首先编辑 pom.xml 文件,添加相关依赖:注意:跟前文相比,这里的数据库连接池依赖改用 druid-spring-boot-starter。druid-spring-boot-starte
2064 人浏览
hangge

SpringBoot - 使用MyBatis操作数据库1(安装配置,基本用法)

一、基本介绍1,什么是 MyBatisMyBatis 是一款优秀的持久化框架,原名叫做 iBatis,2010 年改名为 MyBatis。MyBatis 支持定制化 SQL、存储过程以及高级映射。MyBatis 几乎避免了所有的 JDBC 代码手动设置参数以及获取结果集。在传统的 SSM 框架整合中,使用 MyBatis 需要大量的 XML 配置。而在 Spring Boot 中,MyBatis
1920 人浏览
hangge

SpringBoot - 使用JdbcTemplate操作数据库2(多数据源的配置与使用)

所谓多数据源,就是一个 Java EE 项目中采用了不同数据库实例中的多个库,或者同一个数据库实例中多个不同的库。而 JdbcTemplate 多数据源的配置是比较简单的,因为一个 JdbcTemplate 对应一个 DataSource,开发者只需要手动提供多个 DataSource,再手动配置 JdbcTemplate 即可。下面通过样例进行演示。三、多数据源的配置与使用1,添加依赖首先编辑
2475 人浏览
hangge

SpringBoot - 使用JdbcTemplate操作数据库1(安装配置,基本用法)

一、基本介绍1,什么是 JdbcTemplateJdbcTemplate 是 Spring 提供的一套 JDBC 模版框架,利用 AOP 技术来解决直接使用 JDBC 时大量重复代码的问题。JdbcTemplate 虽然没有 MyBatis 那么灵活,但是比直接使用 JDBC 要方便很多。2,安装配置(1)首先编辑 pom.xml 文件,添加相关依赖:spring-boot-starter-jdb
1942 人浏览
hangge

SpringBoot - 设置项目默认的首页(欢迎页)

Spring Boot 项目启动后,默认会去查找 index.html 文件作为首页面。当然我们可以指定其它页面作为首页面,下面通过样例进行演示。 一、使用 index.html 作为首页面1,静态首页Spring Boot 项目在启动后,首先回去静态资源路径(resources/static)下查找 index.html 作为首页文件。 2,动态首页 如果在静态资源路径(resources/
3690 人浏览
android

Android EditText 实现软键盘搜索按钮

记录一下如何把软键盘的回车按键变成搜索按键这个估计大部分人也经常用的到这个直接xml文件设置 EditText 三个属性android:imeOptions="actionSearch" android:singleLine="true" android:maxLines="1"网上有些直接用 android:imeOptions="actionSearch"这样是不够的 而 android:
3453 人浏览
android

Android中实现延迟执行操作的三种方法

今天在敲代码的过程中,有个需求是延迟执行某方法。整理收集了三种方法,自己用的是第三种。第一种线程休眠: new Thread() { @Override public void run() { super.run(); Thread.sleep(3000);//休眠3秒
4811 人浏览
mysql

MySQL数据库总结

文章目录一、数据库简介二、MySQL数据类型(5.5版本)三、Sql语句(1)Sql语句简介(2)数据定义语言DDLcrea
1973 人浏览
java

Java学习的正确打开方式

在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。何谓学习?博主所理解的学习,它是
2777 人浏览
hangge

SpringBoot - 面向切面编程 AOP 的配置和使用(附样例)

一、基本介绍1,什么是 AOP(1)AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。(2)利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。一个 AOP 的使用场景: 假设一个已经上线的系统运行出现问题,有时
2222 人浏览
hgother

IntelliJ IDEA - 常用设置、常用快捷键汇总(附:常用的代码补全语句)

一、常用快捷键作用windows 快捷键macOS 快捷键全局搜索ctrl + shift + Fcommand + shift + F代码格式化ctrl+ alt + Lcommand + option + L去掉无用的包的引用ctrl + alt + Ocontrol + option + O注释ctrl + /command + /多行注释ctrl + shift + /command +
2607 人浏览
hgother

Intellij IDEA - 实现项目的热部署3(使用LiveReload实现静态资源热部署)

之前我写过文章介绍如何通过 spring-boot-devtools 模块实现项目的自动编译重启(点击查看),其实 devtools 默认还嵌入了 LiveReload 服务器,可以解决静态文件(html 页面、图片、css 样式、js 脚本等)的热部署问题。即在资源发生变化时自动触发浏览器更新(不会重启项目)。下面通过样例进行演示。1,项目中安装 devtools首先我们需要在项目中添加 dev
2803 人浏览
hangge

TIOBE - 2019年11月编程语言排行

十一月头条:C现在非常接近Java、Swift挤进了前10、Rust创下了历史新高 本月前20名中有一些有趣的现象。首先,C现在非常接近Java,排在Java后指数仅差0.2%,预计年底之前C会再次冲上第一位。 前10名的位置一直在发生变化,两个月前SQL入围,上个月是Objective-C,本月榜单上则由Swift挤进了前10,同时它与落后一位的Ruby指数差距达到 0.4%,在这样一个位置范围
1954 人浏览
android

Location specified by ndk.dir (D:\android\2_NDK\android-ndk-r16b) did not contain a valid NDK and and couldn't be used

导入别人的项目报这个问题:Location specified by ndk.dir (D:\android\2_NDK\android-ndk-r16b) did not contain a valid NDK and and couldn't be used解决方案: ndk目录 更改成自己的,或者去掉根目录 local.propertyies## This file must *NOT* b
11256 人浏览
hangge

Linux - 使用tar命令打包指定目录下的所有文件(但不包含该目录)

1,问题描述 (1)无论是 Linux 系统,还是 macOS 系统,我们都可以使用 tar 命令进行文件的压缩打包。命令格式如下:tar cvf xxxx.tar 要压缩的文件或目录名称(2)但如果要压缩的目录层级比较多时,比如:tar cvf dist.tar /Volumes/BOOTCAMP/Vue/achievement/dist(3)解压后会发现整个路径也都一起打包进去了:2,打包时不
2481 人浏览
hangge

Linux - 常用命令汇总(内存cpu使用率、目录大小、文件复制、压缩、防火墙...)

一、系统监控1,内存占用情况使用 free 命令可以显示闲置内存、总内存和交换内等方面的信息,单位是字节。 2,CPU 占用情况使用 top 命令能够实时显示系统中各个进程的资源占用状况。按“q”即可退出 top 屏幕。注意:kill -9 PID 可以强制中断一个进程3,磁盘占用情况(1)执行如下命令可以列出文件系统的整体磁盘使用量:df -hl(2)执行如下命令可以查看当前目录下各个文件/目
2117 人浏览