<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Jasonhso的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Jasonhso</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Jasonhso]]></copyright><item><title><![CDATA[【java面经】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/133847250</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/133847250</guid><author>Jasonhso</author><pubDate>Sun, 15 Oct 2023 20:36:07 +0800</pubDate><description><![CDATA[依赖注入（Dependency Injection，简称DI）是一种设计模式，也是Spring框架的核心概念之一。其主要作用是去除Java类之间的依赖关系，实现松耦合，以便于开发和测试。具体来说，依赖注入就是不通过 new 的方式在类内部创建依赖类的对象，而是将依赖的类对象在外部创建好之后，通过构造函数、函数参数等方式传递（或注入）给类来使用。此外，依赖注入是控制反转（Inversion of Control，简称IoC）思想的具体实现方式。控制反转是一种程序设计思想，而依赖注入则是其最典型的实践方法。]]></description><category></category></item><item><title><![CDATA[spring boot 邮件服务]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/131260042</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/131260042</guid><author>Jasonhso</author><pubDate>Sat, 17 Jun 2023 14:31:35 +0800</pubDate><description><![CDATA[utils包下新建ValidateCodeUtils类用于随机成成验证码。utils包下新建MailService类用于发送邮件。（这里分别提供了qq邮箱和新浪邮箱的配置方法）]]></description><category></category></item><item><title><![CDATA[代码生成器]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/131188112</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/131188112</guid><author>Jasonhso</author><pubDate>Tue, 13 Jun 2023 14:44:56 +0800</pubDate><description><![CDATA[java代码生成器]]></description><category></category></item><item><title><![CDATA[【Redis面试准备】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/130633445</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/130633445</guid><author>Jasonhso</author><pubDate>Fri, 12 May 2023 00:25:51 +0800</pubDate><description><![CDATA[缓存		穿透、击穿、雪崩；双写一致、持久化；数据过期、淘汰策略[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b4JfEjH8-1683822193625)(D:\Desktop\缓存穿透.jpg)]缓存穿透：查询一个不存在的数据，Mysql查询不到数据库也不会直接写入缓存，就会导致每次请求都查询数据库：缓存空数据，查询返回的数据为空时仍把这个空结果进行缓存简单消耗内存，可能会发生不一致问题布隆过滤器内存占用少，没有多余key实现复杂，存在误判Redis的使用场景。]]></description><category></category></item><item><title><![CDATA[Kotlin 编程简介【准备工作】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/127942330</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/127942330</guid><author>Jasonhso</author><pubDate>Sat, 19 Nov 2022 21:30:21 +0800</pubDate><description><![CDATA[如果您更喜欢直观的学习方式，想要先观看操作步骤，那么可以参考一些 Codelab 随附的视频。在整个课程中，您将会看到学习课程的某部分可能需要的时长。如果您想详细了解 Compose，本课程的前半部分最符合您的需求，因为其中涵盖了界面、Material Design 和导航。每个单元的开头都包含 Codelab，其中含有该单元涉及的所有重要 Kotlin 编程概念，您需要掌握这些概念才能顺利构建应用。如果您自信已熟谙这些与 Kotlin 语言相关的主题，则可以跳过这些部分，转而学习有关构建应用的内容。]]></description><category></category></item><item><title><![CDATA[【更改应用图标】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/127061583</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/127061583</guid><author>Jasonhso</author><pubDate>Tue, 04 Oct 2022 17:40:43 +0800</pubDate><description><![CDATA[将应用图标文件放到mipmap资源目录中。针对各个密度级别（mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi）提供不同版本的应用图标位图图片，以便向后兼容旧版 Android。向资源目录添加资源限定符，以指定应在具有特定配置的设备上使用的资源（例如v26）。矢量可绘制对象是 Android 平台的矢量图形实现。它们使用 XML 以一组点、线条和曲线以及相关颜色信息的形式进行定义。矢量可绘制对象可针对任何密度进行缩放，而不会降低图片质量。]]></description><category></category></item><item><title><![CDATA[【更改应用主题】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/127000197</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/127000197</guid><author>Jasonhso</author><pubDate>Sun, 25 Sep 2022 21:15:01 +0800</pubDate><description><![CDATA[使用 MaterialColor Tool选择应用主题的颜色。您也可以使用Material palette 生成器来帮助选择调色板。在colors.xml文件中声明颜色资源，以便更轻松地重复使用它们。深色主题可减少耗电量，并使您的应用在弱光环境下更易于阅读。]]></description><category></category></item><item><title><![CDATA[【计算小费】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/126923147</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/126923147</guid><author>Jasonhso</author><pubDate>Wed, 21 Sep 2022 21:44:31 +0800</pubDate><description><![CDATA[视图绑定可让您更轻松地编写可与应用中的界面元素交互的代码。Kotlin 中的 Double 数据类型可存储十进制数字。使用RadioGroup的属性查找选中了哪个。使用获取用于将数字格式设置为货币的格式设置工具。您可以使用%s等字符串参数来创建动态字符串，这些字符串仍可以轻松地翻译成其他语言。测试非常重要！您可以使用 Android Studio 中的Logcat排查应用崩溃等问题。堆栈轨迹显示了调用的方法列表。如果代码生成异常，这会很有用。异常表示代码没有预料到的问题。]]></description><category></category></item><item><title><![CDATA[【为Android 应用创建 XML 布局】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/126181572</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/126181572</guid><author>Jasonhso</author><pubDate>Tue, 09 Aug 2022 17:29:15 +0800</pubDate><description><![CDATA[XML（可扩展标记语言）是一种整理文本的方式，由标记、元素和属性组成。使用 XML 可定义 Android 应用的布局。使用EditText可支持用户输入或修改文本。EditText会生成一条提示，告知用户应在相应字段内输入什么内容。指定属性可限制用户在EditText字段输入哪种类型的文本。使用可创建一个互斥选项列表，并使用RadioGroup进行分组。RadioGroup可以垂直排列，也可以水平排列，并且您可以指定最初选中的应该是哪个。使用Switch可让用户在两个选项之间切换。...]]></description><category></category></item><item><title><![CDATA[【Kotlin 中的类和继承】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/126001793</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/126001793</guid><author>Jasonhso</author><pubDate>Fri, 29 Jul 2022 20:45:28 +0800</pubDate><description><![CDATA[人们很自然地会将具有相似属性和行为的事物划分为组，甚至会在这些组之间建立某种类型的层次结构。例如，您可以有一个比较宽泛的类别（例如蔬菜），在该类别内，您可以设置更具体的类型（例如豆类）。在豆类中，您可以划分更加具体的类型，例如豌豆、黄豆、扁豆、鹰嘴豆和大豆。这可以表示为层次结构，因为豆类包含或继承了蔬菜的所有属性（例如，它们属于植物，且可以食用）。同样地，豌豆、黄豆和扁豆均具有豆类的属性，同时也具有自己独特的属性。我们来看看，如何用编程术语表示这种关系。如果您将VegetableLegume作为既是和。..]]></description><category></category></item><item><title><![CDATA[【向 Dice Roller 应用添加图片】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125994017</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125994017</guid><author>Jasonhso</author><pubDate>Wed, 27 Jul 2022 12:00:00 +0800</pubDate><description><![CDATA[使用setImageResource()更改ImageView中显示的图片使用if/else表达式或when表达式等控制流语句来处理应用中的不同情况，例如，在不同情况下显示不同的图片。]]></description><category></category></item><item><title><![CDATA[【在 Kotlin 中添加条件行为】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125983159</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125983159</guid><author>Jasonhso</author><pubDate>Tue, 26 Jul 2022 11:59:53 +0800</pubDate><description><![CDATA[使用if语句设置用于执行某些指令的条件。例如，如果用户掷出幸运数字，就输出获胜消息。Boolean数据类型的值为true和false，可用于做出决策。使用大于(>)、小于(]]></description><category></category></item><item><title><![CDATA[【创建交互式 Dice Roller 应用】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125964001</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125964001</guid><author>Jasonhso</author><pubDate>Mon, 25 Jul 2022 16:56:02 +0800</pubDate><description><![CDATA[Activity提供窗口供应用在其中绘制界面。通常，Activity会占用正在运行的应用的整个屏幕。每个应用都有一个或多个Activity。顶级Activity或第一个Activity通常称为，由项目模板提供。例如，当用户滚动浏览设备上的应用列表并点按“DiceRoller”应用图标时，Android系统会启动该应用的。在代码中，您需要提供Activity布局以及用户应如何与其交互的详细信息。在BirthdayCard应用中，有一个Activity用于显示生日消息和图片。和布局。......]]></description><category></category></item><item><title><![CDATA[【 Kotlin 中的类和对象实例】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125960320</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125960320</guid><author>Jasonhso</author><pubDate>Sun, 24 Jul 2022 17:22:07 +0800</pubDate><description><![CDATA[类的概念是代表一个事物，通常是现实世界中的事物。在本例中，Dice类代表实际的骰子。在现实世界中，骰子的面数是不会变的。如果您需要不同的面数，就需要使用不同的骰子。在编程上，这意味着您应该创建一个具有所需面数的新骰子对象实例，而不是更改现有Dice对象实例的面数属性。在此任务中，您将修改Dice类，以便在创建新实例时指定面数。您将更改Dice类定义，以便可以提供面数。这类似于函数接受输入参数的方式。修改Dice类定义，以接受名为numSides的整数。类中的代码不变。Int){在Dice类中，删除。....]]></description><category></category></item><item><title><![CDATA[【为您的 Android 应用添加图片】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125948298</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125948298</guid><author>Jasonhso</author><pubDate>Sat, 23 Jul 2022 17:28:50 +0800</pubDate><description><![CDATA[在本文章中，您将学习如何使用ImageView向应用添加图片。前提条件了解如何在AndroidStudio中创建和运行新应用。了解如何使用布局编辑器在TextViews上添加、移除和设置属性。学习内容如何向Android应用添加图片或照片。如何使用ImageView在应用中显示图片。如何将文本提取到字符串资源中，从而更轻松地翻译应用和重复使用字符串。如何让应用可供尽可能多的用户使用。您将构建的内容扩展HappyBirthday应用，以添加图片。所需条件。.........]]></description><category></category></item><item><title><![CDATA[【创建 Birthday Card 应用】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125927341</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125927341</guid><author>Jasonhso</author><pubDate>Sat, 23 Jul 2022 15:23:17 +0800</pubDate><description><![CDATA[在本文章中，您将构建一个显示文本的简单Android应用。详细了解Android中的各个界面(UI)组件将有助于您在屏幕上恰当放置文本。前提条件了解如何在AndroidStudio中创建新的应用。了解如何在模拟器中或在Android设备上运行应用。学习内容什么是界面元素，例如Views和ViewGroups。如何在应用的TextView中显示文本。如何在TextView上设置文本、字体和外边距等属性。构建内容一个以文本格式显示生日祝福的Android应用。。.........]]></description><category></category></item><item><title><![CDATA[【 了解 Android 测试的基础知识】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125919697</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125919697</guid><author>Jasonhso</author><pubDate>Thu, 21 Jul 2022 21:09:12 +0800</pubDate><description><![CDATA[就软件而言，测试是一种结构化方法，用于检查软件以确保其运行正常。自动化测试实际是一段代码，用于检查您所编写的另一段代码，确保其能够正常运行。进行软件测试非常有好处，因为通过此测试，您可以在公开发布代码之前消除其中的bug，这是确保良好的用户体验的关键。虽然手动测试几乎总是有它的一席之地，但Android中的测试通常可以自动执行。在整个《使用Kotlin进行Android开发的基础知识》课程中，您将重点学习使用自动化测试来测试应用代码和应用本身的功能要求。main目录的一个子文件夹中。在和。......]]></description><category></category></item><item><title><![CDATA[【 可选：在移动设备上运行您的应用】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125914527</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125914527</guid><author>Jasonhso</author><pubDate>Thu, 21 Jul 2022 16:38:51 +0800</pubDate><description><![CDATA[如果您的AndroidStudio是安装在Windows计算机上，则必须先安装USB设备驱动程序，然后才能在实体设备上运行您的应用。注意如果您的设备运行的Android平台未在AndroidStudio中安装，系统可能会显示一条消息，询问您是否要安装所需的平台。如果您的计算机运行的是Linux或Windows，您可能需要执行额外的步骤，才能在实体Android设备上运行您的应用。现在，您应该可以连接设备并从AndroidStudio运行您的应用了。......]]></description><category></category></item><item><title><![CDATA[【创建并运行您的首个 Android 应用】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125901735</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125901735</guid><author>Jasonhso</author><pubDate>Thu, 21 Jul 2022 15:57:35 +0800</pubDate><description><![CDATA[学习内容如何使用模板为Android应用创建AndroidStudio项目构建内容基于模板的基本Android应用所需条件一台安装了AndroidStudio的计算机如要创建新项目，请启动AndroidStudio，点击project，为项目命名，选择模板，然后填写详细信息。如要创建Android虚拟设备（模拟器）来运行应用，请依次选择Manager，然后使用设备管理器选择硬件设备和系统映像。Project窗口，从下拉列表中选择。.........]]></description><category></category></item><item><title><![CDATA[【下载并安装Android Studio】]]></title><link>https://blog.youkuaiyun.com/Jasonhso/article/details/125898573</link><guid>https://blog.youkuaiyun.com/Jasonhso/article/details/125898573</guid><author>Jasonhso</author><pubDate>Wed, 20 Jul 2022 22:02:21 +0800</pubDate><description><![CDATA[根据Android Studio官方文档学习的个人笔记]]></description><category></category></item></channel></rss>