自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不学习傻了吧

纸上得来终觉浅,绝知此事要躬行。

  • 博客(37)
  • 收藏
  • 关注

原创 使用 Mybatis 的 TypeHandler 存取 PostgreSQL jsonb 类型

使用 Mybatis 的 TypeHandler 存取 Postgresql jsonb 类型

2023-11-28 21:26:29 1719

原创 Spring Boot Using Kotlin

Spring 是最著名的 Web 框架之一,许多开发人员选择 Spring 是因为它功能强大并且支持依赖注入和面向切面编程。而且 Spring Boot 还支持 Kotlin 和 Gradle,这意味着我们不必使用 Java 和编写 XML 文件。

2022-09-01 23:45:00 2171 1

原创 数据库 insert 数据的几种方式

在许多情况下,我们可能希望确保表中存在一条记录而没有冲突的条目。本质上,我们希望查找并修改当前记录(如果存在),或者添加具有所需值的新记录(如果尚未存在)。这通常称为“更新插入”操作(“插入”和“更新”的组合)。...

2022-07-06 21:00:33 9188

原创 AndroidStudio 和 IDEA 的 Favorites 及 Bookmarks 数据找回办法

当我们在查看源码时,由于源码调用链路很长可能涉及到非常多的类文件,查找起来并不容易。有时候可能还需要查找某段代码的入口函数,当类文件的代码量很大时,很难快速定位到代码段。AndroidStudio 和 IDEA 的 Favorites 及 Bookmarks 功能,可以有效解决上述烦恼。当我们使用 Favorites 和 Bookmarks 功能添加了很多数据后,如果出现更换电脑硬盘或者更改了项目源码路径等情况,辛苦积累的 Favorites 和 Bookmarks 数据以及恢复数据的方法。......

2022-06-06 21:25:01 1970 3

原创 Dart 高阶函数与 lambda 表达式

前言在 Kotlin 和 Dart 中函数都是一等公民,这意味着它们可以存储在变量与数据结构中、作为参数传递给其他高阶函数以及从其他高阶函数返回。可以像操作任何其他非函数值一样操作函数。高阶函数高阶函数是将函数用作参数或返回值的函数。下面的内容将比较 Kotlin 和 Dart 语言中 ,将函数作为参数传递给另一个函数。Kotlin 高阶函数下面的示例是 Kotlin 集合的函数式风格的 fold ,它接受一个初始累积值与一个接合函数,并通过将当前累积值与每个集合元素连续接合起来代入累积值来构建

2021-12-07 15:47:17 1868

原创 强烈推荐Flutter必备优秀经典库

视图动画flutter_spinkit :一组带有Flutter动画的加载指示器。flutter_easyloading :一个干净轻巧的 loading/toast 小部件,用于Flutter,易于使用,无需上下文,fluttertoast :Flutter的 Toast 插件,底层是原生实现,只支持Android、iOS、Web 。animate_do :受 Animate.css 启发的美丽动画,每个动画都是一个小部件,其中包含看起来很有吸引力的默认但可自定义的值。animations :可

2021-09-15 20:51:00 3888

原创 TCL雷鸟电视卸载内置应用

TCL雷鸟电视是一款性价比很高的电视,配置高性能好,价格不贵,但是系统中内置了一些垃圾应用,今天就教大家如何卸载这些应用。

2021-05-01 00:00:43 20982 6

原创 Kotlin带有接收者的函数类型(block: T.() -> Unit)

前言Kotlin 标准库的 Standard.kt 文件中有一些常用的扩展函数,比如我们经常使用的 apply 和 also 函数:// public inline fun <T> T.apply(block: T.() -> Unit): T { contract { callsInPlace(block, InvocationKind.EXACTLY_ONCE) } block() return this}public inl

2021-04-21 19:33:26 4853

原创 H5开发学习摘要

网页三兄弟:HTML、CSS、JavaScript由上图可以发现 HTML 负责把网页的结构构建出来,所以看起来都方方正正的不是很美观,而 CSS 负责把外貌给显示出来,让网页的外貌看起来美观一些,最后 JavaScript 负责去控制网页里面的内容以及使用者的操作行为。HTMLHTML语法什么是 HTMLHTML 是用来描述网页的一种语言。HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (markup

2020-08-22 14:17:57 526 1

原创 Kotlin版Gradle插件开发

Gradle 插件只不过是我们希望一起执行的任务的组合。

2020-03-06 19:43:09 8046

原创 Flutter 竖线 垂直分割线

主要是利用DecoratedBox的decoration属性:Row( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: <Widget>[ FlatButton( ...

2020-02-26 21:21:07 14280

原创 Flutter AppBar设置渐变色背景

主要是通过AppBar的属性:弹性空间flexibleSpaceclass GradientPage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: const Text('G...

2020-02-22 16:14:38 6434

原创 ViewModel是如何在配置更改后继续留存数据的

ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据,ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存。

2018-09-02 11:58:52 4351

原创 Android架构组件-Lifecycle

生命周期LifecycleOwner实现自定义LifecycleOwner生命周期感知组件的最佳实践生命周期感知组件的用例处理停止事件生命周期感知组件执行操作以响应另一个组件(例如活动和片段)的生命周期状态的更改。这些组件可帮助您生成更易于组织且通常更轻量级的代码,这些代码更易于维护。一种常见的模式是在活动和片段的生命周期方法中实现依赖组件的操作。但是,这种模式导...

2018-07-30 22:09:07 2257

原创 Kotlin版注解处理器Annotation Processor

注解将元数据与其他代码元素相关联,允许我们将更多信息放入代码中。利用注解的一种方法是通过注解处理基于该信息生成新的源文件。

2018-07-24 21:34:23 9538

原创 DataBinding使用指南(五):绑定布局视图到架构组件

DataBinding使用指南(一):布局和binding表达式DataBinding使用指南(二):使用可观察的数据对象DataBinding使用指南(三):生成binding类DataBinding使用指南(四):BindingAdapterDataBinding使用指南(五):将布局视图绑定到架构组件版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: ...

2018-06-04 23:30:30 6348

原创 DataBinding使用指南(四):BindingAdapter

DataBinding使用指南(一):布局和binding表达式DataBinding使用指南(二):使用可观察的数据对象DataBinding使用指南(三):生成binding类版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/80352385,本文出自:【张华洋的博...

2018-06-02 16:57:18 29025 1

原创 Android架构组件-WorkManager

使用WorkManager安排任务WorkManager API可以轻松指定可延迟的异步任务以及何时运行,这些API可让您创建任务并将其交给WorkManager,以便立即或在适当的时间运行。例如,应用程序可能需要不时从网络下载新资源。...

2018-05-21 20:41:52 20167 3

原创 DataBinding使用指南(三):生成的binding类

DataBinding使用指南(一):布局和绑定表达式DataBinding使用指南(二):使用可观察的数据对象版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/80343247,本文出自:【张华洋的博客】 DataBinding库会生成用于访问布局的变量和Vie...

2018-05-20 00:40:36 11040

原创 DataBinding使用指南(二):使用可观察的数据对象

但是

2018-05-17 15:54:52 3919 1

原创 DataBinding使用指南(一):布局和binding表达式

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/80206037,本文出自:【张华洋的博客】 数据绑定库数据绑定库是一个支持库,它允许你在 APP 中使用声明性格式而不是编程方式将数据源绑定到布局的UI组件中。布局通常定义在Activity中,使用UI框架方...

2018-05-05 15:39:35 13954 9

原创 ThreadLocal使用及源码分析

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/79250212 ,本文出自:【张华洋的博客】 ThreadLocal 提供了线程本地变量。这些变量不同于普通变量,每个线程都可以通过 ThreadLocal 的 get 或 set 方法访问这个线程自己的变量,独立初始化...

2018-02-10 21:26:53 1208 1

原创 IntentService和HandlerThread源码分析

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/79301446,本文出自:【张华洋的博客】 在这篇文章中我将介绍 在 Android 中的 IntentService,在分析 IntentService的原理时,将顺便分析 IntentService中使用到的 Han...

2018-02-09 22:22:50 1027

翻译 Android架构组件-App架构指南

与传统的桌面应用程序不同,Android应用程序的结构要复杂得多,在大多数情况下,它们只在桌面快捷启动方式中有一个入口,并且作为单个进程运行。一个典型的Android应用程序是由多个 app组件(Android四大组件) 构成的,包括 **activities**, **fragments**, **services**, **content providers** and **broadcast receivers

2017-11-08 00:55:21 15492 4

原创 JNI和NDK编程-JNI入门

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/78400415,本文出自:【张华洋的博客】 1、原生开发工具包 (NDK) 是一组可让您在 Android 应用中利用 C 和 C++ 代码的工具。 NDK可以让您将 C 和 C++ 源代码构建为可用于Android应

2017-10-31 10:19:59 1601

翻译 Android Studio 3.0 发行说明

Android Studio是Android开发的官方IDE,包含构建Android应用程序所需的一切。要获取最新版本,请单击 **Help > Check for update**(在Mac, **Android Studio > Check for updates**)。或者您可以在 [这里下载Android Studio](https://developer.android.google.cn/stu

2017-10-26 11:53:59 15132 4

原创 Android组件化之终极方案

那么如果解决这些问题呢?我想大多数Android开发者都能想到这个办法。如果你把开源的三方库当做一个功能组件的话,那么很显然,我们在使用这些三方库的时候是通过什么方式呢?难道你会下载它的源代码吗,应该很少有人会这样做吧。那么让我们看看我们是怎么引入三方库的:

2017-09-21 21:27:39 29486 34

原创 JNI和NDK编程-使用AndroidStudio进行NDK开发

注意: 1、本文中的原生源代码(native Code)均指代 C\C++源代码文件; 2、预构建库 指代 已经预先编译的二进制库(自己编译好或者第三方提供); 3、ABI是Application Binary Interface的缩写,指应用程序二进制接口,它定义了二进制文件(Android平台专指 .so 文件)如何运行在相应的系统平台上,包括使用的指令集、内存

2017-07-19 22:00:59 4922 5

原创 使用Retrofit2封装适用于组件化项目的网络库

Android组件化项目HttpClient的封装过程这篇文章主要讲解Android组件化项目中的网络请求工具类HttpClient的封装过程,首先简单介绍了Url和Http请求的概念,接下来讲解了Retrofit的使用方法,最后是HttpClient的封装思想和封装过程。

2017-07-05 14:14:55 11235 4

原创 Android知识体系

----# 数据结构> 1、栈 Stack> 2、队列 Queue> 3、链表 Linked List> 4、数组 Array> 5、哈希表 Hash Table> 6、二叉树 Binary Tree> 7、堆 Heap> 8、并查集 Union Find> 9、字典树 Trie# 算法 > 1、二分搜索 Binary Search> 2、分治 Divide Conquer> 3、

2017-06-19 21:52:25 4493

原创 AndroidStudio本地化配置gradle的buildToolsVersion和gradleBuildTools

gradle.properties有两个非常有用的属性: 1. **在Android项目中的任何一个build.gradle文件中都可以把gradle.properties中的常量读取出来,不管这个build.gradle是组件的还是整个项目工程的build.gradle;** 2. **gradle.properties中的数据类型都是String类型,使用其他数据类型需要自行转换;**

2017-05-22 20:47:35 22711 5

原创 学习大数据的第一步-搭建Scala开发环境,以及使用Intellij IDEA开发Scala程序

# 1、为什么要学习Scala语言?1. 结合Spark处理大数据这是Scala的一个主要应用,而且Spark也是那Scala写的。2. Java的脚本语言版可以直接写Scala的脚本,也可以在.sh直接使用Scala。3. 代替JavaScala的编程风格更简洁,当然也很可能降低可读性,不过Java语言还是有其优势。

2017-04-01 20:38:41 75270 10

原创 Android OkHttp实现HTTPS访问,支持Android 4.X系统HTTPS访问

这是目前最完善的Https证书校验工具类,实现了服务端和客户端之间的基于身份认证的交互,并且真正实现了 TrustManger 的 checkServerTrusted() 方法,对服务器证书域名进行了强校验,另外也真正实现了 HostnameVerifier 的 verify() 方法。

2017-02-21 20:48:25 8537 1

原创 Android组件化方案

随着APP版本不断的迭代,新功能的不断增加,业务也会变的越来越复杂,APP业务模块的数量有可能还会继续增加,而且每个模块的代码也变的越来越多,这样发展下去单一工程下的APP架构势必会影响开发效率,增加项目的维护成本,每个工程师都要熟悉如此之多的代码,将很难进行多人协作开发,而且Android项目在编译代码的时候电脑会非常卡,又因为单一工程下代码耦合严重,每修改一处代码后都要重新编译打包测试,导致非常耗时。

2017-02-15 19:01:52 128376 172

原创 Android Handler源码解析

版权声明:本文为博主原创文章,欢迎大家转载! 转载请标明出处: http://blog.csdn.net/guiying712/article/details/53412281,本文出自:【张华洋的博客】 Handler允许我们发送和处理Message , 还可以将Runnable对象关联到线程的MessageQueue;每个Handler实例都会与一个线程以及线程的消息队列相关...

2016-11-30 19:23:55 5635

原创 Android Studio Terminal 不是内部或外部命令,也不是可运行程序或批处理文件

在Android Studio中自带了命令行终端Terminal,但是我们在输入命令时经常会发现:“XXX”不是内部或外部命令,也不是可运行程序或批处理文件。

2016-11-11 16:25:39 34888 6

原创 Windows环境变量Path、ClassPath、JAVA_HOME的作用

很多人都会有个疑惑:有些博客使用的是PATH、CLASSPATH和JAVA_HOME,但是有些博客又是 path、classpath 和 java_home ,搞得新手是一头雾水,还没学习编程已经就懵了。其实这是因为Windows操作系统不区分大小写,设置Path和PATH并没有区别;而Linux操作系统是区分大小写的,设置Path和PATH是有区别的,因此只需要设置PATH环境变量即可。

2016-03-30 19:12:46 6772 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除