Advice is the implementation of the cross-cutting functionality. An Adivce provides the code for implementation of the service.
There are four types of Advice:
- Before Advice
- After Advice
- Around Advice
- Throws Advice
Advice is the implementation of the cross-cutting functionality. An Adivce provides the code for implementation of the service.
There are four types of Advice:
As we know the Aspect is just the name of the cross-cutting functionality, not the implementation. So what’s the implementation of the cross-cutting functionality? It’s called Advice. An Advice provides the code for implementation of the service. It is like Logging service, Logging is a Aspect and Advice denotes the implementation of Log4j.
An Aspect represent the name of a cross-cutting functionality, it’s only name not implementation.
Let us see the example.
1 | public class MyLogicClass |
What is AOP?, AOP stand for Aspect Oriented Programming. It’s very important module for Spring framework. In the enterprise level application programming we used to add different types of services to our application at runtime automatically, like logging, email, transaction, authentication services. These actions we called cross-cutting functionalities. AOP do this job.
From last blog, maybe you already love the Cobalt2 theme, like me. We usually use the terminal to do something we need. So can changed the theme for our terminal?
The answer is yes, we can. Let me show you screenshots firstly.
There is a sublime text theme I want to introduce to you guys. It’s called Cobalt2, it not only colour scheme for editor window, but also it includes all sublime theme(e.g. sidebar, search, tabs, etc…). You can get it from github cobalt2.
The call() function is a fantastic method in javascript. It makes some people confusion some times, like me. Here let us to make it clear.
call([thisObj[,arg1[, arg2[, [,.argN]]]]])
this object. The call method can be used to instead of another object to invoke a method. It can change the object context of a function to a new object which thisObj referenced.
Ha, Confusion? Don’t, it’s true. Let me introduce to you how to destroy the website you want.
Click the below button:
Use the Arrow key to move the rocket, and press the Space key to fire. And also Press and hold B to find targets which can be destroy.
| Keypress | Command |
|---|---|
| ⌘ + X | Cut line |
| ⌘ + ↩ | Insert line after |
| ⌘ + ⇧ + ↩ | Insert line before |
| ⌘ + ⌃ + ↑ | Move line/selection up |
| ⌘ + ⌃ + ↓ | Move line/selection down |
| ⌘ + L | Select line - Repeat to select next lines |
| ⌘ + D | Select word - Repeat to select next occurrence |
| ⌃ + ⌘ + G | Select all occurrences of current selection |
| ⌃ + ⇧ + ↑ | Extra cursor on the line above |
| ⌃ + ⇧ + ↓ | Extra cursor on the line below |
| ⌃ + M | Jump to closing parentheses Repeat to jump to opening parentheses |
| ⌃ + ⇧ + M | Select all contents of the current parentheses |
| ⌃ + A | Move to beginning of line |
| ⌃ + E | Move to end of line |
| ⌘ + K, ⌘ + K | Delete from cursor to end of line |
| ⌘ + K + ⌫ | Delete from cursor to start of line |
| ⌘ + ] | Indent current line(s) |
| ⌘ + [ | Un-indent current line(s) |
| ⌘ + ⇧ + D | Duplicate line(s) |
| ⌘ + J | Join line below to the end of the current line |
| ⌘ + / | Comment/un-comment current line |
| ⌘ + ⌥ + / | Block comment current selection |
| ⌘ + Y | Redo, or repeat last keyboard shortcut command |
| ⌘ + ⇧ + V | Paste and indent correctly |
| ⌃ + Space | Select next auto-complete suggestion |
| ⌃ + U | Soft undo; jumps to your last change before undoing change when repeated |
| ⌃ + ⇧ + Up | Column selection up |
| ⌃ + ⇧ + Down | Column selection down |
| ⌃ + ⇧ + W | Wrap Selection in html tag |
| ⌃ + ⇧ + K | Delete current line of cursor |