Ant风格资源地址支持的3种匹配符
- 符号?:匹配文件中的一个字符
- 符号*:匹配文件中的任意字符
- 符号**:匹配多层路径
@RequestMapping支持Ant风格的URL
- /demo/*/new 可以匹配/demo/abc/new、/demo/aaa/new等URL
- /demo/**/new 可以匹配/demo/new、/demo/abc/abc/new等URL
- /demo/new?? 可以匹配/demo/newab等URL
在Android中,一个应用可能包含了多个Activity,这些Activity是可以层叠的,当启动一个新的活动,这个新活动会覆盖在原活动之上,然后我们点击Back键或者调用finish()
方法会摧毁最上面的活动,下面的一个活动就会重新显示出来。
可以看出这和栈很相似,没错这就是栈。栈是一种后进先出的数据结构,在安卓中我们称之为返回栈(Back Stack),在默认情况下,当我们启动一个新的活动,它会在返回栈中入栈,并出去栈顶的位置。当我们点击Back键或者调用用finish()
方法会摧毁一个Activity时,栈顶的活动就会出栈,此时前一个入栈的活动就会处于栈顶的位置,再次呈现给了用户。
onCreate()
: 在活动第一次被创建的时候调用,完成活动的初始化。onStart()
: 这个方法在活动由不可见变为可见的时候调用。onResume()
: 这个方法在活动准备好喝用户进行交互的时候调用。此时活动一定处于栈顶。onPause()
: 这个方法在系统准备去启动或者恢复另一个活动的时候多用,通常会在改方法中释放掉一些消耗CPU的资源,以及保存一些关键数据。onStop()
: 这个方法在活动完全不可见的时候调用。onDestroy()
: 这个方法在活动被销毁之前调用。onRestart()
: 这个活动由停止状态变为运行状态之前调用。下面是一张完整的活动生命周期示意图:
onCreate()
->onDestroy()
方法之间所经历的,就是整个完整生存期。在onCreate()
中完成各种初始化操作,onDestroy()
方法中完成释放内存的操作。onStart()
->onStop()
方法之间所经历的,就是可见生存期。onStart()
方法中对资源进行加载,而在onStop()
中对资源进行释放。onResume()
->onPause()
方法之间所经历的,就是前台生存期。此时活动总是处于运行状态,。1 | package com.example.lifecycledemo; |
1 | <?xml version="1.0" encoding="utf-8"?> |
以上是我对安卓生命周期的理解,因为第一次写blog,如有错误的地方欢迎大家指出,在下方评论!
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
1 | $ hexo new "My New Post" |
More info: Writing
1 | $ hexo server |
More info: Server
1 | $ hexo generate |
More info: Generating
1 | $ hexo deploy |
More info: Deployment