Android使用AIDL来实现跨进程通信
[TOC]
概述使用Messenger来进行进程间通信的方法,可以发现,Messenger是以串行的方式处理客户端发来的消息,如果大量的消息同时发送到服务端,服务端仍然只能一个个处理,如果有大量的并发请求,那么用Messenger就不太合适了。
同时,Messenger的作用主要是为了传递消息,很多时候我们可能需要跨进程调用服务端的方法,这种情形用Messenger就无法做到了,但是我们可以使用AIDL来实现跨进程的方法调用。AIDL也是Messenger的底层实现,因此Messenger本质上也是AIDL,只不过系统为我们做了封装从而方便上层的调用而已
所以,下面我们重点学习一下AIDL的基础知识。
什么是AIDLAIDL(Android Interface Definition Language) Android接口定义语言 利用它定义客户端与服务均认可的编程接口,以便二者使用进程间通信 (IPC) 进行相互通信。实际上起作用的并不是AIDL文件,而是根据AIDL生成的实例代码,AIDL是安卓替我们设计好的一个模板,根据模板生成Interface的代码。
ADIL的存在就是为了实 ...
ffmpeg环境搭建
[TOC]
概述Ubuntu环境搭建安装指定版本下载固定版本源码
1234567891011121314151617wget -c http://ffmpeg.org/releases/ffmpeg-3.4.11.tar.xzcd ffmpeg-3.4.11/sudo apt-get update##安装依赖包sudo apt-get -y install autoconf automake build-essential \libass-dev libfreetype6-dev libsdl2-dev libtheora-dev \libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev \libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev##配置(生成动态库和指定安装位置)./configure --enable-shared --prefix=/usr/local/ffmpeg ##编译安装make -j2make install
设置环境变量 ...
MacOS的安装Tomcat10环境
[TOC]
概述文章参考:https://blog.csdn.net/waneto2008/article/details/52486357
下载Tomcat(以tomcat10为例)下载地址:https://tomcat.apache.org/download-10.cgi
直接下载如图选中的即可
下载zip压缩包完成后解压。解压完成之后,随意放入目录。如我就把它放在/Library/目录下。
将Tomcat写入系统的环境变量PATH中1.打开你的终端:然后输入 vim .bash_profile 回车。出现如下图的窗口。
12345678// 进行编辑vim ~/.bash_profile // 在控制台里输入以下语句# >>> Tomcat Home >>>export PATH=$PATH:/Users/frewen/Library/AFrewenLib/apache-tomcat-10.0.20/bin# <<< Tomcat Home <<<
编辑完成之后保存。然后 ...
Spring的电商系统学习
[TOC]
概述mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现,采用Docker容器化部署。前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
学习地址文章参考:https://github.com/macrozheng/mall
学习视频:https://www.macrozheng.com/
Mall后台学习地址:https://github.com/macrozheng/mall
Mall-Admin-Web前端学习
下载node并安装:https://nodejs.org/dist/v12.14.0/node-v12.14.0-x64.msi;
该项目为前后端分离项目,访问本地访问接口需搭建后台环境,搭建请参考后端项目传送门;
访问在线接口无需搭建后台环境,只需将config/dev.env.js文件中的BASE_API改为https://adm ...
Java中各种术语的学习
[TOC]
BO(Business Object)业务对象
主要作用是把业务逻辑封装为一个对象,这个对象可以包括一个或多个其他的对象。比如一份简历,有教育经历、工作经历、社会关系等。可以把教育经历对应一个 PO,工作经历对应一个 PO,社会关系对应一个 PO,然后建立一个对应建立的 BO来处理简历,每个 BO 包含这些 PO,这样就可以针对 BO 去处理业务逻辑。
DAO(Data Access Object)数据访问对象
此对象用于访问数据库,通常与 PO 结合使用,DAO 中包含了各种数据库的操作方法,结合 PO 对数据库进行相关操作,处于业务逻辑与数据库资源中间,通过它可以把 POJO 持久化为 PO,用 PO 组装 VO、DTO。
DO(Domain Object)领域对象
从现实世界中抽象的业务实体。
DTO(Data Transfer Object)数据传输对象
用于远程调用等需要大量传输对象的地方,也可以泛指用于展示层与服务层之间的数据传输对象。
PO(Persistent Object)持久对象
可以看成是与数据库中的表映射的 Java 对象,最简单的 PO 就是对应数 ...
Linux系统中的JDK安装
[TOC]
概述
Linux下的Tomcat安装教程
[TOC]
概述文章参考:https://blog.csdn.net/xyphf/article/details/81158529
安装教程1、进入developer目录,下载tomcat
12# 下载tomcatwget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.20/bin/apache-tomcat-10.0.20.tar.gz
2、解压tomcat
1tar -zxvf apache-tomcat-10.0.20.tar.gz
3、进入tomcat目录
1cd apache-tomcat-10.0.20
启动Tomcat
123456789101112// 进入bin目录cd bin/./startup.sh#输出Using CATALINA_BASE: /home/frewen/DevTools/apache-tomcat-10.0.20Using CATALINA_HOME: /home/frewen/DevTools/apache-tomcat-10.0.20Using CATALINA_TMP ...
SpringBoot框架的启动流程学习
[TOC]
概述文章参考:https://www.jianshu.com/p/dcd958f2e65b
基于SpringBoot的mall的框架的学习
[TOC]
概述
redis环境搭建
[TOC]
概述MacOS安装https://redis.io/docs/getting-started/installation/install-redis-on-mac-os/
测试redis安装
123brew services start redis