Spring注解
详细见Java依赖注入标准Spring AOP
AOP (Aspect-oriented programming)是面向侧面的程序设计,是植入横切关注点,对程序做某一点的关注,如关注一个方法的运行时间。
AspectJ采用编译期织入和类加载期织入的方式织入切面,是语言级的AOP实现。AspectJ利用反射的方法拦截方法,对方法调用前后计算时间来实现。
ref:
AspectJ
Mac Keyboard | Win Keyboard(swap ctrl&command) | |
Control + Shift + Power | Control + Alt + Scroll Lock | 锁屏 |
Command+space | Ctrl+Space | 全局搜索Spot Search |
Fn+Down | Page Down | 下一页 |
Fn+Delete | Delete | 删除游标后的字符 |
Ctrl+Space | win+Space | 切换输入法 |
Fn+F11 | F11 | 显示桌面 |
Command+tab | Ctrl+tab | app切换 |
Command+win | ctrl+win | tab切换 |
Command+win+F | ctrl+win+F | 全屏/退出全屏 |
Command+M | ctrl+M | 最小化窗口 |
win+mouse scroll | 放大word | |
Command+Plus | ctrl+Plus | 放大Chrome |
command+shift+4 | ctrl+shift+4 | 截屏 |
command+shift+r/shift reload button |
hard refresh无cache的加载 | |
⌘command | ||
⌥option | ||
⇧shift | ||
⇥tab | ||
⌃control | ||
命令行 | ||
Ctrl+R | win+R | 搜索历史命令 |
Ctrl+A | win+A | 游标回到头 |
Ctrl+b | 上一页 | |
Ctril+f | 下一页 | |
Ctril+d | 删除改行 | |
shift+g | shift+g | 打开的文件跳到末尾 |
shift+z+z | shift+z+z | vim保存且退出(=:wq) |
shift+z+q | shift+z+q | vim不保存且退出(=:q) |
dd | vim删除一行(非插入状态) | |
p | vim复制刚才dd剪切的一行(非插入状态) | |
IntelliJ | ||
command+O | Ctrl+O | 查找文件 |
command+alt+右箭头 | ctrl+alt+右箭头 | 后一步Navigate forward |
command+alt+左箭头 | ctrl+alt+左箭头 | 前一步Navigate backward |
option+回车 | 加入import解决symbol |
进程操作 | |
netstat -tupln | grep 1066 | 得到要终结进程的id |
kill -9 16085 | 删除进程by id |
ps aux | grep 1066 | 查看谁在用1066端口 |
查找操作 | |
grep -color=auto "the" foo.txt | [文件内容]在某一个文件查找某字符串并打印结果行 -i 大小写敏感 -A 打印后几行 -B 前几行 -C 周围几行 -P 匹配正则表达式 "url=.*?;" 问号表示分号不加入匹配结果 -o 只显示匹配string -c 匹配结果行数 或|wc -l -v 不含某字符串 -n 显示行号 grep -r "the" * 递归在所有文件中查找某字符串 grep -A 3 -i "moon" foo.txt 在某一个文件查找一个字符串并打印紧接的3行 | head 查看前10行 | sed "s/my/your/" 替换(用your替my) |
find . -iname "odin-get" | [文件名]搜索文件名通过名字 find ./Test -user kk 搜索文件名通过用户 |
文件操作 | |
less foo.txt | 高效率打开大文件。CTRL+F下一页,CTRL+B上一页. SHIFT+G文件底部 |
cat > foo.txt | 创建文件。CTRL+D保存文件 |
cat foo.txt | 查看文件 |
vim foo.txt | 创建/编辑一个文件 /main 搜索main关键字 i/insert 插入模式,ESC退出插入模式 :q 或者Ctrl+z+q不保存退出 :wq 保存退出 |
rm foo.txt | 删除文件 |
mv -i foo.txt Test/foo.txt | 移动/重命名文件 |
cp -i foo.txt Test/foo.txt | 复制一个文件 |
scp ~/a.txt jiajicen@vtasters.com:~/a.txt | 复制一个文件到另一个host |
scp -r jiajicen@vtasters.com:~/test ~/test | 复制一个文件夹到另一个host. test文件夹不需要预先创建 |
tail -f app.log | 即时打印最新的log,方便同步debug |
目录操作 | |
cd .. | /root/Docements 绝对路径 ./path 当前目录 ../path 父目录 ~/Desktop 根目录/Users/kk/Desktop ~john/bin 用户目录/Users/john/bin |
ls -ltr | -ltr 按时间排序 -lh 显示大小权限 -alh 显示隐藏文件 |
pwd | 显示当前目录 |
mkdir Test | 创建目录 |
rm -r Test | 删除目录 |
环境变量 | |
export PATH="/home/Application/Java/bin:$PATH" | 加入环境变量到内存,然后执行source加入到硬盘再重启命令行。 一次性操作为export PATH=$PATH:/home/Application/Java/bin >> ~/.bash_profile |
source ~/.bash_profile (Mac) | 加入到硬盘。Linux为~/.zshrc |
echo $HOME | 打印某环境变量 |
which java | 得到某个命令如java路径,也是查找在~/.zshrc此命令的路径 |
系统操作 | |
clear | 清屏 |
sudo reboot | 重启 |
sh abc.sh | 执行一个程序,可能需要先提高权限chmod +x abc.sh 有时需要加点如./mvn才能执行,通过加入到.bash_profile可以避免 |
su Java | su=sudo, 用超级用户执行程序。 |
ssh vtasters.com | 远程登录 |
nslookup | 通过IP查找其hostname |
产品 | 简介 | 类别 | 竞争者 | 用例 |
ElastiCache | Cache | Cache | Redis/Memcached | |
DynamoDB | NoSQL database | 数据库 | mongodb | |
Elasticsearch | 多文档全文搜索 | 搜索 | Lucene | Github, StackOverflow, HotelTonight, Wiki |
S3 | File store | 文件存储 | Disk/FTP | |
Lambda | 事件驱动构件,无编程环境只与语言相关的EC2 | serverless | Webtask | Alexa skill,微服务 |
Kinesis | 实时发布者-订阅者系统 | 系统 | Apache Kafka | 股票实时统计 LinkedIn: 用户消息通知 游戏: 交易通知或预警 |
SQS | 非实时处理任务系统,将同步变异步解耦削峰 | 系统 | ActiveMQ | 订单放入队列中 |
RDS | 关系型数据库包括MySQL, MSSQL, Oracle等 | 数据库 | 各类数据库供应商 | |
CloudWatch | server运维数据和警报 | 运维 | Nagios | |
CloudTrail | AWS资源的变化和API数据 | 运维 | ||
CloudFormation | 用json来描述AWS资源及其重要设置 | 运维 | ||
Pipeline | 代码部署 | 运维 | ||
CloudFront | CDN service | 系统 | ||
EMR | 基于Hadoop来做数据计算的平台 | 系统 | ||
SES | 电子邮件平台 | 邮件 | ||
AppSync | 用于手机,网站的实时data sync服务 | 系统 | ||
Mobile Analytics | 收集手机用量 | 系统 | ||
Athena | SQL分析服务 | 分析 | ||
Amplify | 类似于Google Analytics分析,网站的点击数,时间等 | 系统 |