<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Universe_Meander的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Universe_Meander</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Universe_Meander]]></copyright><item><title><![CDATA[eclipse rcp学习之UI框架（二）]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/143721198</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/143721198</guid><author>Universe_Meander</author><pubDate>Tue, 12 Nov 2024 20:26:01 +0800</pubDate><description><![CDATA[我们知道，Eclipse RCP是富客户端开发，那么认识其UI框架是绕不开的一步。这里我们先研究学习下其UI框架。由于Eclipse RCP目前市面上用得不多，加之时间有限，那么这里我的学习思路是俯瞰了解整体，后续有用到的地方，再深入研究。还是先看下面两张图：这里我们可以看到，应用程序整个窗口叫做Workbench（工作台）。workbench是由SWT、JFace绘制而成。可以大致理解为：SWT 是Eclipse中的窗口小部件工具箱。（对比Sun的AWT与Swing。]]></description><category></category></item><item><title><![CDATA[eclipse rcp学习之基本认识与Demo创建（一）]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/143414722</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/143414722</guid><author>Universe_Meander</author><pubDate>Thu, 31 Oct 2024 19:46:31 +0800</pubDate><description><![CDATA[嵌入式开发选择第一个，单纯的RCP开发选择第二个。这里我们选择第二个，前期通过RCP的学习，掌握相关技能，从而更有效地开发嵌入式相关。版本可以选择2022-03。最新的版本包含一些新特新，打包似乎有问题。]]></description><category></category></item><item><title><![CDATA[一图了解JVM]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/134022823</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/134022823</guid><author>Universe_Meander</author><pubDate>Tue, 24 Oct 2023 22:28:18 +0800</pubDate><description><![CDATA[本文主要是对一个Java源文件从加载到运行有一个整体的了解，提供一个俯瞰的视角，各个点不会太详细深入。下图是整理的大概路径：大致过程：.java源文件首先会由javac命令进行编译，产生.class字节码文件，然后经过类加载进入jvm。这里列出JVM虚拟机官方文档：https://docs.oracle.com/javase/specs/index.html注意，我们平时用的比较多的JDK1.8，是Oracle实现的HotSpot虚拟机，是JVM的一种。]]></description><category></category></item><item><title><![CDATA[泛型方法的简单应用]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/102626874</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/102626874</guid><author>Universe_Meander</author><pubDate>Fri, 18 Oct 2019 16:20:38 +0800</pubDate><description><![CDATA[1.一个常见场景
有时候 我们的系统需要对接第三方的系统，其返回一般都会有一个比较统一的格式，如下所示：
{
	code : ...,
	message : ...,
	data : ...
}

具体返回的数据，可能是这样的：
{
	code : 0,
	message : success,
	data : {
		userId : "001",
		userName : "nep"
	}
}
...]]></description><category></category></item><item><title><![CDATA[WebView加载本地html、js，以及两者通信]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631704</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631704</guid><author>Universe_Meander</author><pubDate>Sun, 28 Apr 2019 09:35:19 +0800</pubDate><description><![CDATA[有这么一个需求：提高二维码的扫描速度（二维码自产自销）。方向有很多，比如从设备解码能力方面考虑（这是废话貌似）；从二维码的复杂度方面考虑，即在数据量确定的情况下，如何有效地降低二维码复杂度，以提高设备扫码速度；从所使用的SDK方面考虑，zxing、zbar、qrcod，其实现方式不同，比如zxing是c++写的，zbar是c写的，而且，还可以考虑到它们扫描算法的不同。
在android上，似乎go...]]></description><category></category></item><item><title><![CDATA[注解的简单使用]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631381</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631381</guid><author>Universe_Meander</author><pubDate>Sun, 28 Apr 2019 09:19:48 +0800</pubDate><description><![CDATA[一、基本认识
我们知道，注释是给人看的，那么注解，其实就是给“程序”看的。
jdk内部注解（1.5之后）：

@Deprecated 意思是“废弃的，过时的”
@Override 意思是“重写、覆盖”
@SuppressWarnings 意思是“压缩警告”

自定义注解，需要使用元注解，其为“注解的注解”，并在运行时通过反射获取并处理。
元注解：

@Target：注解的作用目标
作用域：
CON...]]></description><category></category></item><item><title><![CDATA[java代理模式浅析]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631345</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631345</guid><author>Universe_Meander</author><pubDate>Sun, 28 Apr 2019 09:17:39 +0800</pubDate><description><![CDATA[一、java中的代理模式
代理（Proxy）模式提供了对目标对象的间接访问模式，可在不修改目标类的情况下，扩展功能。
这里以保存用户数据的方式进行简要说明。
简单图示：

现在我们期望在保存用户数据之前打印一下日志，我们可以有以下两种方式实现
1.1 静态代理
简单图示：

代码示例：
IUserDao.java
/**
 * 目标对象与代理对象共同实现的接口
 */
public interfa...]]></description><category></category></item><item><title><![CDATA[Spring特性之AOP浅析]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631303</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631303</guid><author>Universe_Meander</author><pubDate>Sun, 28 Apr 2019 09:15:33 +0800</pubDate><description><![CDATA[这一节，来探索下AOP的相关概念。
一、AOP概念
OOP（Object Oriented Programming，面向对象编程）引入封装、继承、多态等概念来建立一种对象层次结构，用于模拟公共行为的一个集合，整个是一个纵向关系。
在软件开发中，我们还会用到许多功能，如日志、事务管理，这些功能代码，往往散落于应用对象各处，那么日志等与业务对象之间可以看作是横向的关系。
传统编码方式会带来一个问题：一...]]></description><category></category></item><item><title><![CDATA[Spring特性之IoC容器]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631252</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89631252</guid><author>Universe_Meander</author><pubDate>Sun, 28 Apr 2019 09:13:19 +0800</pubDate><description><![CDATA[Spring是一个轻量级的控制反转（IoC）和面向切面（AOP）的容器框架。这里，我们先探索一下IoC，下一节探索AOP。
一、IoC容器概念简介
几个名词概念：

IoC（Inversion Of Control，控制反转）
在传统的开发中，当我们遇到需要使用一个类时，往往使用 new 关键字来产生一个对象。而“控制反转”的意思是，我们把对象的创建，即new这一步，交给第三方，需要用到时，通过第...]]></description><category></category></item><item><title><![CDATA[注解+AOP的运用（一）之模拟ORM框架（初版）]]></title><link>https://blog.youkuaiyun.com/Universe_Meander/article/details/89151515</link><guid>https://blog.youkuaiyun.com/Universe_Meander/article/details/89151515</guid><author>Universe_Meander</author><pubDate>Tue, 09 Apr 2019 15:49:28 +0800</pubDate><description><![CDATA[了解了注解和AOP相关概念与技术实现之后，我们可以结合两者，做一些事情，如上文所说：
1.自定义简化版orm框架；
2.自定义简化版日志框架；
3.参数校验、过滤等。
这里，模拟orm框架。
整体思路：
自定义注解，在实体类上标注，告诉程序其所对应的表，对应的字段；在接口上标注，告诉程序该做什么操作（增删改查）。接口方法使用动态代理，解析方法上的注解，判断所要做的操作，根据操作不同，解析成对应的s...]]></description><category></category></item></channel></rss>