- apkbuilder.java 362,发布apk出现问题Failed to build apk,有没有大佬帮忙看一下
weixin_39876145
apkbuilder.java362
该楼层疑似违规已被系统折叠隐藏此楼查看此楼CommandInvokationFailure:Failedtobuildapk.H:/java\bin\java.exe-Xmx2048M-Dcom.android.sdkmanager.toolsdir="H:/andorid-sdk1\tools"-Dfile.encoding=UTF8-jar"G:\unity3d\Editor\Data\Pla
- Android开发之okhttp /java.net.ConnectException: Failed to connect to localhost/127.0.0.1
Abandon-Lv
android
在启用后端后,在andorid设置baseurl为127.0.0.1:8080,结果在运行的时候报了Failedtoconnecttolocalhost/127.0.0.1这个错误一开始以为是什么地方写错了导致127.0.0.1:8080前多了一个/,查阅资料发现android模拟器(simulator)把它自己作为了localhost,也就是说,代码中使用localhost或者127.0.0.1
- android匿名共享内存Ashmem(c库接口)
Lee_5566
AshmemAndroid系统的匿名共享内存Ashmem驱动程序利用了Linux的共享内存子系统导出的接口来实现。在Android系统中,匿名共享内存也是进程间通信方式的一种。相比于malloc和anonymous/namedmmap等传统的内存分配机制,Ashmem的优势是通过内核驱动提供了辅助内核的内存回收算法机制(pin/unpin)。内存回收算法机制就是当你使用Ashmem分配了一块内存,
- 安卓Java面试题 71- 80
️ 邪神
Android面试题安卓面试题androidjava
71.简述Andorid中的Parcel存储机制?Android中的Parcel机制实现了Bundle传递对象使用Bundle传递对象,首先要将其序列化,但是,在Android中要使用这种传递对象的方式需要用到AndroidParcel机制,即,Android实现的轻量级的高效的对象序列化和反序列化机制。JAVA中的Serialize机制,译成串行化、序列化……,其作用是能将数据对象存入字节流当中
- Andorid获取原生GPS定位信息
探索者丶
androidandroid
@SuppressLint("MissingPermission")@TargetApi(Build.VERSION_CODES.M)publicLocationgetLocationInfo(Contextcontext){locationManager=(LocationManager)context.getSystemService(Context.LOCATION_SERVICE);//默
- Andorid分组Item顶部悬停 + 交互同步
tinyvampirepudg
Andorid分组Item顶部悬停+交互同步需求概述项目中某些页面中的分组数据的顶部需要悬停,并且悬停的View要与ItemView中同样布局的View进行操作同步,也就是相互同步。大家都知道,Android中有"Thespecifiedchildalreadyhasaparent.YoumustcallremoveView()onthechild'sparentfirst."这个异常,意味着同一
- Android判断当前应用程序处于前台还是后台的两种方法
我们都很努力着
在很多场景下,都需要判断某个App是否处于前台还是后台。单个activity是否处于前台还是后台。本文来一一说明一下一下截止目前,有6种方案:方法判断原理需要权限可以判断其他应用位于前台特点①RunningTask否Andorid4.0系列可以,5.0以上机器不行Android5.0此方法被废弃②RunningProcess否当App存在后台常驻的Service时失效无③ActivityLifec
- React Native Android打包
Lethe35
离线包:ReactNative和你写的js文件、图片等资源都打包放入App使用react-nativebundle--help来查看打包的具体参数。下面列举一些主要参数:--entry-fileRN入口文件的路径,绝对路径或相对路径--platform[string]ios或andorid--transformer[string]Specifyacustomtransformertobeused-
- andorid app打不开,显示waiting for debugger
Pino
这个问题主要是在手机设置一下即可,在手机设置中,找到开发者选项,找到“选择调试应用”,选择无,并关闭“等待调试器”,这样打开app就不会卡在waitingfordebugger了
- autojs调用zxing实现扫码功能
qq_570333273
androidui
Andorid的demo需要引用xml资源,autojs无法引用,此次主要实现相机界面部份,实现扫一扫功能。加载dex文件runtime.loadDex("core.dex");导入相关的类:importClass(com.google.zxing.PlanarYUVLuminanceSource);importClass(com.google.zxing.common.HybridBinariz
- 原项目迁移到androidx踩坑纪实
C老王
最近特别想写点东西,鼓励自己不停的成长,感觉在大城市混真的需要很大的勇气,也会面临很多现实的问题,只是希望大家拥有的成果都能对得起自己的付出。1.首先,andoridstudio的版本,需要下载至少3.2以上版本的。下载链接:AndroidStudio3.2正式版发布!-OSCHINA2.项目的compileSdkVersion和targetSdkVersion至少为28以上,引androidx的
- Android开发-UI布局的使用
IM不知
前言常用五种布局方式,分别是:FrameLayout(框架布局),LinearLayout(线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局)TableLayout(表格布局)。View和ViewGroup1.View在Andorid应用程序中,UI元素称为View,它们都继承了android.view.View类。View有众多的子类,包括ViewGr
- 谈谈内容提供者——ContentProvider
Eternal_life
概述ContentProvider内容提供者是andorid四大组件之一ContentProvider为不同的软件之间数据共享,提供统一的接口。作用:contentprovider在andorid中的作用就是对外共享数据,使用ContentProvider对外共享的好处就是统一了数据的访问方式也就是说,可以通过ContentProvider把应用中的数据共享给其他应用访问,其他应用可以Conten
- Desired Capabilities详解
日理万机_e6fa
DesiredCapabilities在启动session的时候是必须提供的。DesiredCapabilities本质上是keyvalue的对象,它告诉appiumserver这样一些事情:本次测试是启动浏览器还是启动移动设备?是启动andorid还是启动ios?启动android时,app的package是什么?启动android时,app的activity是什么?Appium的Desired
- Android之如何进行日志分析
LVXIANGAN
Android性能效率1024程序员节
一直以来,我们对日志分析,往往基于AndoridStudio的Logcat日志输出,虽然使用Logcat工具栏是我们最重要的分析手段之一,但它有很大的局限性,那就是必须真机连接电脑,而且Logcat输出是有大小限制的。对于一些离线设备,如果要通过连接Logcat去作日志分析,这往往会非常不现实。以Android系统的车载主机为例,面对市场用户对软件问题投诉,我们需要对离线日志进行分析,通常做法是主
- leanback android,Android TV之谷歌android leanback框架详解
王杰森
leanbackandroid
googleleanback库简介“Leanback”就是靠着看的意思。是指以放松的姿势倒在沙发上.谷歌推出android.support.v17.leanback软件包提供的API支持在电视设备上构建用户界面。它为电视应用提供了一些重要的小部件。这个库只支持到api17以上的版本,也就是andorid4.2,而一些效果也只是在api-21以上支持。Demo介绍这是两个关于比较官方的Demo地址。
- android源码中编译APK
Zzzz青
andorid源码中编译apk,代码中引入新的包编译不过,需要在andorid.mk中添加相对应的包使用过程参考源码中的Android.mk文件的内容例如在使用到importandroid.support.annotation.Nullable;导入对应的包LOCAL_STATIC_JAVA_LIBRARIES:=\android-support-annotationsLOCAL_STATIC_A
- Android与Ios Date格式转换Bug
惊悚的毛毛虫
javascriptDate
日期格式为YYYY-MM-DDhh:mm:ss在Ios上转换为Date对象会为NaNletstr='2022-12-1200:00:00';letdate=newDate(str);andorid正常但ios会为NaN需要使用YYYY/MM/DDhh:mm:ss格式才可在IOS正常转换letstr='2022-12-1200:00:00';str=str.replaceAll('-','/');/
- 01 | 预习篇 · 从0开始搭建Flutter工程环境
Lady_Zhang
俗话说,工欲善其事,必先利其器。任何一门新技术、新语言的学习,都需要从最基础的工程环境搭建开始,学习Flutter也不例外。所以,作为专栏的第一篇文章,我会与你逐一介绍Flutter的开发环境配置,并通过一个Demo为你演示Flutter项目是如何运行在Andorid和iOS的模拟器和真机上的。如果你已经掌握了这部分内容,那可以跳过这篇预习文章,直接开始后面内容的学习。由于是跨平台开发,所以为了方
- so入门分析
sugar椰子皮
零基础爬虫第一天python开发语言
常见找加密点思路:objecitonandoridhookingwatchclass_methodjava.lang.String.getBytes会发现一些堆栈找到地方如下packagecom.sichuanol.cbgc.util;/*loadedfrom:5382408_artMethod_out.dex*/publicclassSignManagerimplementscn.thecove
- Scrcpy远程控制Andorid手机
DYC1
安卓开发androidadb
Scrcpy是免费的开源屏幕镜像应用程序,允许您在Windows、macOS或Linux桌面上控制Android设备。github地址:https://github.com/Genymobile/scrcpy系统要求Android设备必须至少支持API21(Android5.0),确认设备已打开以进行ADB调试,某些设备还需要打开可通过鼠标和键盘控制的其他选项。Linux在debian(目前仅支持
- [Android] Android架构体系(2)
Shujie_L
Androidandroid架构
文章目录Bionic精简对系统调用的支持:不支持SystemVIPC:有限的Pthread功能:有限支持C++:不再支持本地化和/或宽字符:Bionic新增的特性系统属性硬编码写死的UID/GID内置了DNS解析硬编码写死的服务和协议硬件抽象层Linux内核匿名共享内存(ASHMem)BinderLoggerION内存管理内存不足时的进程终止器RAMConsoleSyncdriver定时输出和GP
- 打造更智能的应用 - 机器学习和Andorid
Just_Paranoid
Android机器学习人工智能GeminiGoogle
打造更智能的应用-机器学习和Andorid一、关于机器学习和Andorid二、使用Gemini让您的Android应用如虎添翼2.1GeminiAPI2.2AndroidAICore三、现成可用的还是自定义的机器学习3.1机器学习套件SDK的常见用户流3.2高性能自定义机器学习四、机器学习套件SDK:可立即使用,适用于常见用户流五、Android的自定义机器学习堆栈:高性能机器学习5.1适用于机器
- OKHttp3的使用和详解
大渔歌_
Androidokhttp
一、概述OKHttp是处理网络请求的开源框架,Andorid当前最火热的网络框架,Retrofit的底层也是OKHttp,用于替换HttpUrlConnection和ApacheHttpClient(API236.0已经移除)。概况起来说OKHttp是一款优秀HTTP框架,它支持GET和POST请求,支持Http的文件上传和下载,支持加载图片,支持下载文件透明的GZIP压缩,支持响应缓存避免重复的
- iOS和安卓端个人踩坑史
一朵盆栽
iosiphone
本公司不提供测试机,借手机是开发测试中最麻烦的事iOS可行组1、iOS可以播放视频无声音,Andorid有声音当时做了个远程视频连接项目,使用了jitsi第三方视频服务,iOS没有加dom.play()导致无法接收声音2、iOS可以长按保存图片,Andorid无法长按保存图片场景是绵阳端h5嵌入天府通办APP时,安卓机无法长按出现右键弹框,增加下载图片按钮,调天府通办api进行手动保存图片Ando
- memory泄露分析方法(native篇)
亚瑟-小郎
Android性能优化性能优化memory
#memory泄露主要分为java和native2种,本文主要介绍native泄露分析方法#捕捉泄露:测试每天从monkey中筛选出内存超标的app,从dumpsys_meminfo_pid看nativeheap大,有几种工具可以找到泄露调用栈:Androidstudio:captruenativeheap(抓取时长:600s(抓取方式AndoridStudio分析内存注意:jidu车机不稳定:大
- 一次Binder通信最大可以传输多大的数据?
Jason_Lee155
Android程序frameworkandroid
本系列:Android-Binder进程间通讯机制-多图详解一次Binder通信最大可以传输多大的数据?关于Binder(AIDL)的oneway机制前言在前面的文章中,我通过匿名共享内存的方式解决Binder通信是无法传递大数据的问题,一次Binder通信最大可以传输是1MB-8KB(PS:8k是两个pagesize,一个pagesize是申请物理内存的最小单元)但是这个答案对不对呢,我只能说不
- Andorid Studio无法启动外部Service的解决办法
Procahr
androidandroid-studio
在初学Service时,发现使用外部Service,可以关闭另一个app已启动的Service,但却无法直接启动。一番学习之后,发现在Android8.0(API级别26)对应用在后台运行时可以执行的操作施加了限制。“每当应用在后台运行时,它都会消耗设备的一些有限资源,如RAM。这可能会导致用户体验受损,尤其是在用户使用资源密集型应用(如玩游戏或观看视频)的情况下。”———后台执行限制|安卓开发人
- Python+scrcpy+pyminitouch实现自动化(一)——scrcpy的安装
郑烯烃快去学习
软件测试python自动化android
一、什么是scrpy?是一种通过adb调试的方式来将手机屏幕投到电脑上,并且可以通过电脑控制Andorid设备,也可以通过Wifi连接,相当于隔空投屏,而且也不需要root权限,不需要再手机里面安装任何程序。adb(AndroidDebugBridge),是AndroidSDK中的一个工具,使用adb可以直接操作管理Android模拟器或者真实的Android设备,起到调试桥的作用。adb工具包一
- Coap在Andorid中的简单应用
秦汉春秋
AndroidJavacaliforniumcoap广播
Andlink设备使用了Coap来进行配网和一定的数据交互,因此记录一下。Coap协议Coap可以简单理解为是为了在物联网场景下实现web功能而产生的一种轻量级网络协议;主要特点有使用UDP方式传输以及基于REST等。coap协议的服务地址和http的url类似:coap://192.168.52.101:5683/qlink/request也同样接收POST/GET/PUT/DELETE等请求;
- Enum 枚举
120153216
enum枚举
原文地址:http://www.cnblogs.com/Kavlez/p/4268601.html Enumeration
于Java 1.5增加的enum type...enum type是由一组固定的常量组成的类型,比如四个季节、扑克花色。在出现enum type之前,通常用一组int常量表示枚举类型。比如这样:
public static final int APPLE_FUJI = 0
- Java8简明教程
bijian1013
javajdk1.8
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
一.允许在接口中有默认方法实现
Java 8 允许我们使用default关键字,为接口声明添
- Oracle表维护 快速备份删除数据
cuisuqiang
oracle索引快速备份删除
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。
当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。
为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万,此时就算有索引,对高并发的查询和更新来说,让然有所拖累。
为了解决这个问题,我一般一个月会进行一次数据库维护,主要工作就是备
- java多态内存分析
麦田的设计者
java内存分析多态原理接口和抽象类
“ 时针如果可以回头,熟悉那张脸,重温嬉戏这乐园,墙壁的松脱涂鸦已经褪色才明白存在的价值归于记忆。街角小店尚存在吗?这大时代会不会牵挂,过去现在花开怎么会等待。
但有种意外不管痛不痛都有伤害,光阴远远离开,那笑声徘徊与脑海。但这一秒可笑不再可爱,当天心
- Xshell实现Windows上传文件到Linux主机
被触发
windows
经常有这样的需求,我们在Windows下载的软件包,如何上传到远程Linux主机上?还有如何从Linux主机下载软件包到Windows下;之前我的做法现在看来好笨好繁琐,不过也达到了目的,笨人有本方法嘛;
我是怎么操作的:
1、打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面;(经常第一步都不顺利,无法挂载Windo
- 类的加载ClassLoader
肆无忌惮_
ClassLoader
类加载器ClassLoader是用来将java的类加载到虚拟机中,类加载器负责读取class字节文件到内存中,并将它转为Class的对象(类对象),通过此实例的 newInstance()方法就可以创建出该类的一个对象。
其中重要的方法为findClass(String name)。
如何写一个自己的类加载器呢?
首先写一个便于测试的类Student
- html5写的玫瑰花
知了ing
html5
<html>
<head>
<title>I Love You!</title>
<meta charset="utf-8" />
</head>
<body>
<canvas id="c"></canvas>
- google的ConcurrentLinkedHashmap源代码解析
矮蛋蛋
LRU
原文地址:
http://janeky.iteye.com/blog/1534352
简述
ConcurrentLinkedHashMap 是google团队提供的一个容器。它有什么用呢?其实它本身是对
ConcurrentHashMap的封装,可以用来实现一个基于LRU策略的缓存。详细介绍可以参见
http://code.google.com/p/concurrentlinke
- webservice获取访问服务的ip地址
alleni123
webservice
1. 首先注入javax.xml.ws.WebServiceContext,
@Resource
private WebServiceContext context;
2. 在方法中获取交换请求的对象。
javax.xml.ws.handler.MessageContext mc=context.getMessageContext();
com.sun.net.http
- 菜鸟的java基础提升之道——————>是否值得拥有
百合不是茶
1,c++,java是面向对象编程的语言,将万事万物都看成是对象;java做一件事情关注的是人物,java是c++继承过来的,java没有直接更改地址的权限但是可以通过引用来传值操作地址,java也没有c++中繁琐的操作,java以其优越的可移植型,平台的安全型,高效性赢得了广泛的认同,全世界越来越多的人去学习java,我也是其中的一员
java组成:
- 通过修改Linux服务自动启动指定应用程序
bijian1013
linux
Linux中修改系统服务的命令是chkconfig (check config),命令的详细解释如下: chkconfig
功能说明:检查,设置系统的各种服务。
语 法:chkconfig [ -- add][ -- del][ -- list][系统服务] 或 chkconfig [ -- level <</SPAN>
- spring拦截器的一个简单实例
bijian1013
javaspring拦截器Interceptor
Purview接口
package aop;
public interface Purview {
void checkLogin();
}
Purview接口的实现类PurviesImpl.java
package aop;
public class PurviewImpl implements Purview {
public void check
- [Velocity二]自定义Velocity指令
bit1129
velocity
什么是Velocity指令
在Velocity中,#set,#if, #foreach, #elseif, #parse等,以#开头的称之为指令,Velocity内置的这些指令可以用来做赋值,条件判断,循环控制等脚本语言必备的逻辑控制等语句,Velocity的指令是可扩展的,即用户可以根据实际的需要自定义Velocity指令
自定义指令(Directive)的一般步骤
&nbs
- 【Hive十】Programming Hive学习笔记
bit1129
programming
第二章 Getting Started
1.Hive最大的局限性是什么?一是不支持行级别的增删改(insert, delete, update)二是查询性能非常差(基于Hadoop MapReduce),不适合延迟小的交互式任务三是不支持事务2. Hive MetaStore是干什么的?Hive persists table schemas and other system metadata.
- nginx有选择性进行限制
ronin47
nginx 动静 限制
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;...
server {...
location ~.*\.(gif|png|css|js|icon)$ {
- java-4.-在二元树中找出和为某一值的所有路径 .
bylijinnan
java
/*
* 0.use a TwoWayLinkedList to store the path.when the node can't be path,you should/can delete it.
* 1.curSum==exceptedSum:if the lastNode is TreeNode,printPath();delete the node otherwise
- Netty学习笔记
bylijinnan
javanetty
本文是阅读以下两篇文章时:
http://seeallhearall.blogspot.com/2012/05/netty-tutorial-part-1-introduction-to.html
http://seeallhearall.blogspot.com/2012/06/netty-tutorial-part-15-on-channel.html
我的一些笔记
===
- js获取项目路径
cngolon
js
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.locati
- oracle 的性能优化
cuishikuan
oracleSQL Server
在网上搜索了一些Oracle性能优化的文章,为了更加深层次的巩固[边写边记],也为了可以随时查看,所以发表这篇文章。
1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。(这点本人曾经做过实例验证过,的确如此哦!
- Shell变量和数组使用详解
daizj
linuxshell变量数组
Shell 变量
定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:
your_name="w3cschool.cc"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用ba
- 编程中的一些概念,KISS、DRY、MVC、OOP、REST
dcj3sjt126com
REST
KISS、DRY、MVC、OOP、REST (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。 (2)DRY是指Don't Repeat Yourself(摘自wikipedia),特指在程序设计以及计算中避免重复代码,因为这样会降低灵活性、简洁性,并且可能导致代码之间的矛盾。 (3)OOP 即Object-Orie
- [Android]设置Activity为全屏显示的两种方法
dcj3sjt126com
Activity
1. 方法1:AndroidManifest.xml 里,Activity的 android:theme 指定为" @android:style/Theme.NoTitleBar.Fullscreen" 示例: <application
- solrcloud 部署方式比较
eksliang
solrCloud
solrcloud 的部署其实有两种方式可选,那么我们在实践开发中应该怎样选择呢? 第一种:当启动solr服务器时,内嵌的启动一个Zookeeper服务器,然后将这些内嵌的Zookeeper服务器组成一个集群。 第二种:将Zookeeper服务器独立的配置一个集群,然后将solr交给Zookeeper进行管理
谈谈第一种:每启动一个solr服务器就内嵌的启动一个Zoo
- Java synchronized关键字详解
gqdy365
synchronized
转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。
同步机制可以使用synchronized关键字实现。
当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。
当s
- js实现登录时记住用户名
hw1287789687
记住我记住密码cookie记住用户名记住账号
在页面中如何获取cookie值呢?
如果是JSP的话,可以通过servlet的对象request 获取cookie,可以
参考:http://hw1287789687.iteye.com/blog/2050040
如果要求登录页面是html呢?html页面中如何获取cookie呢?
直接上代码了
页面:loginInput.html
代码:
<!DOCTYPE html PUB
- 开发者必备的 Chrome 扩展
justjavac
chrome
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifench
ChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-pl
- 算法机试题
李亚飞
java算法机试题
在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。
这道题大致意思是:输入一个数,比如4,。这时会输出:
&n
- 正确配置Linux系统ulimit值
字符串
ulimit
在Linux下面部 署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用 其实很容易就达到这个数量。下面说的是,如何通过正解配置来改正这个系统默认值。因为这个问题是我配置Nginx+php5时遇到了,所以我将这篇归纳进
- hibernate调用返回游标的存储过程
Supanccy2013
javaDAOoracleHibernatejdbc
注:原创作品,转载请注明出处。
上篇博文介绍的是hibernate调用返回单值的存储过程,本片博文说的是hibernate调用返回游标的存储过程。
此此扁博文的存储过程的功能相当于是jdbc调用select 的作用。
1,创建oracle中的包,并在该包中创建的游标类型。
---创建oracle的程
- Spring 4.2新特性-更简单的Application Event
wiselyman
application
1.1 Application Event
Spring 4.1的写法请参考10点睛Spring4.1-Application Event
请对比10点睛Spring4.1-Application Event
使用一个@EventListener取代了实现ApplicationListener接口,使耦合度降低;
1.2 示例
包依赖
<p