current position：Home>Understanding of spring
Understanding of spring
2022-01-26 22:54:53 【＃HashMap＃】
One .Spring What is it?
Spring It's a lightweight Java Development framework , Its core is IOC( Inversion of control ) and AOP( Section oriented programming ).
Then I will analyze it one by one “ Lightweight ”“ frame ”“IOC”“AOP” The meaning of .
Lightweight ： about Spring It is lightweight in terms of size and overhead
frame ：Spring Put many components such as Strus and Hibernate combined , Make the development greatly simplified
IOC： Manages the javabean Object configuration and lifecycle , Rely on annotations , Give control of creating objects to IOC Container management
AOP： Put some system services that have nothing to do with business logic ( journal , Business , authentication ) It was packaged , Significantly reduces duplication of code
Two .IOC Containers
IOC Container management javabean Object configuration and what cycle, and some annotations of dependency injection . No, IOC In the case of containers , Objects are created by our programmers , And get your own dependence , At this time, the control is in the hands of programmers . If you don't understand , for instance ： Two objects A,B,A,B Interdependence , When we create A when , because A,B Interdependence , At this time, we have to create B. But with IOC Then we just need to create A,IOC The container will automatically A China needs B Dependency injection of . This is the embodiment “ Inversion of control ”.
3、 ... and .AOP
The system consists of many components , Each component has different functions , But sometimes each component needs to be used with each other , about OOP for , It can only define the relationship between up and down , You can't define the relationship between left and right . Maybe it's not easy to understand here , A simple example , There are two functional modules: order module and commodity module , For the log function , stay OOP Under the circumstances , It is distributed in each module , In other words, it is scattered in the order and commodity modules , In this case, there is a lot of duplicate code , So how to solve it ？ And that's where it comes in AOP Thought , Encapsulate the log , As a cross section , So you can run through all modules .AOP Enhance the function of some or some object , And it greatly simplifies the code . The following diagram is helpful to understand and compare
author[＃HashMap＃],Please bring the original link to reprint, thank you.
The sidebar is recommended
- Spring IOC container loading process
- [thinking] the difference between singleton mode and static method - object-oriented programming
- Hadoop environment setup (MySQL environment configuration)
- 10 minutes, using node JS creates a real-time early warning system for bad weather!
- Git tool
- Force deduction algorithm - 92 Reverse linked list II
- What is the sub problem of dynamic programming?
- C / C + +: static keyword summary
- Idea does not have the artifacts option when configuring Tomcat
- Anaconda can't open it
guess what you like
I don't know how to start this
Matlab simulation of transportation optimization algorithm based on PSO
MySQL slow log optimization
[Vue] as the window is stretched (larger, smaller, wider and higher), the text will not be displayed
Popular Linux distributions for embedded computing
Suzhou computer research
After installing SSL Certificate in Windows + tomcat, the domain name request is not successful. Please answer!!
Implementation time output and greetings of jQuery instance
The 72 year old uncle became popular. Wu Jing and Guo fan made his story into a film, which made countless dreamers blush
How to save computer research
- Springboot implements excel import and export, which is easy to use, and poi can be thrown away
- The final examination subjects of a class are mathematical programming, and the scores are sorted and output from high to low
- Two pronged approach, Tsinghua Professor Pro code JDK and hotspot source code notes, one-time learning to understand
- C + + recursive knapsack problem
- The use of GIT and GitHub and the latest git tutorial are easy to understand -- Video notes of crazy God speaking
- PostgreSQL statement query
- Ignition database test
- Context didn't understand why he got a high salary?, Nginxfair principle
- Bootstrap switch switch control user's guide, springcloud actual combat video
- A list that contains only strings. What other search methods can be used except sequential search
- [matlab path planning] multi ant colony algorithm grid map path planning [including GUI source code 650]
- [matlab path planning] improved genetic algorithm grid map path planning [including source code phase 525]
- Iinternet network path management system
- Appium settings app is not running after 5000ms
- Reactnative foundation - 07 (background image, status bar, statusbar)
- Reactnative foundation - 04 (custom rpx)
- If you want an embedded database (H2, hsql or Derby), please put it on the classpath
- When using stm32g070 Hal library, if you want to write to flash, you must perform an erase. If you don't let it, you can't write continuously.
- Linux checks where the software is installed and what files are installed
- SQL statement fuzzy query and time interval filtering
- 69. Sqrt (x) (c + + problem solving version with vs runnable source program)
- Fresh students are about to graduate. Do you choose Java development or big data?
- Java project: OA management system (java + SSM + bootstrap + MySQL + JSP)
- Titanic passenger survival prediction
- Vectorization of deep learning formula
- Configuration and use of private image warehouse of microservice architect docker
- For someone, delete return 1 and return 0
- How does Java dynamically obtain what type of data is passed? It is used to judge whether the data is the same, dynamic data type
- How does the database cow optimize SQL?
- [data structure] chain structure of binary tree (pre order traversal) (middle order traversal) (post order traversal) (sequence traversal)
- Webpack packaging optimization solution
- 5. Operation element
- Detailed explanation of red and black trees
- redhat7. 9 install database 19C
- Blue Bridge Cup notes: (the given elements are not repeated) complete arrangement (arrangement cannot be repeated, arrangement can be repeated)
- Detailed explanation of springboot default package scanning mechanism and @ componentscan specified scanning path
- How to solve the run-time exception of test times
- Detailed explanation of k8s management tool kubectl
- Android system view memory command