Skip to main content

Demystifying Spring Framework: Choosing Between XML and Annotation-based Configuration


 


Spring contain 2 IOC(Inversion of control) containers which are used to store beans(Objects).


1)Bean factory(Lazy loading)

2)Application context(Eager loading)

these both are Interfaces and the implementation classes of ApplicationContext  are 1)ClassPathXmlApplicationContext & 2)AnnotationConfigApplicationContext




ClassPathXmlApplicationContext:

πŸ‘‰This implementation is used to load the Spring beans configuration from XML files located in the classpath.

 πŸ‘‰ It scans the classpath for XML configuration files and initializes the beans defined in those files.

 πŸ‘‰ Example:

ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");



AnnotationConfigApplicationContext:

πŸ‘‰ This implementation is used to load Spring beans configuration from Java-based configuration classes annotated with @Configuration.

πŸ‘‰It scans the packages provided to it for classes annotated with @Configuration, @ComponentScan, @Bean, etc., and initializes the beans based on the configuration provided in these classes.

πŸ‘‰Example:

ApplicationContext context=new AnnotationConfigApplicationContext(AppConfig.class);





Comments

Popular posts from this blog

Understanding SQL in MySQL: From DDL to DCL

  πŸ“¦ MySQL is a widely-used relational database management system (RDBMS) that uses Structured Query Language (SQL) to manage and manipulate data. SQL is divided into several categories, each serving a specific purpose: DDL, DML, DQL, TCL, and DCL. 1. Data Definition Language (DDL) DDL commands are used to define and manage database structures such as tables, indexes, and schemas. The main DDL commands include CREATE, ALTER, DROP, and TRUNCATE. ⭐ CREATE: This command creates a new database object. CREATE TABLE students ( id INT PRIMARY KEY, name VARCHAR(100), age INT ); ⭐ ALTER : This command modifies an existing database object. ALTER TABLE students ADD COLUMN email VARCHAR(100); ⭐ DROP : This command deletes an existing database object. DROP TABLE students; ⭐ TRUNCATE : This command removes all records from a table without deleting the table itself. TRUNCATE TABLE students;

SQL vs NoSQL

  πŸ“¦ SQL vs NoSQL πŸ“‘ 🌟 SQL (Structured Query Language) :Organized and follows strict rules (like books on specific shelves). ▶ Think of it like a well-organized library where every book is placed neatly on a specific shelf. ▶ The shelves are labeled with categories, and each book has a specific spot. ▶ You have a strict rule about how books are organized, and every book follows this rule. 🌟 NoSQL (Not Only SQL) : Flexible and can be organized in different ways (like books on shelves, in piles, or in boxes). ▶ Now, imagine a different kind of library where books are placed in different ways. ▶ Some books are on shelves, some are in piles, and some are in boxes. ▶ There are no strict rules about where to put the books. You can organize them in whatever way makes sense at the time. 🎨 Use Cases: 🎒 SQL: Good for situations where you need to keep things very organized and follow rules, like keeping track of a catalog of books in a library. 🎑 NoSQL: Good for situations where you ne...

Exploring Data Formats: JSON, XML, CSV

  ➡ JSON, XML, and CSV are commonly used for data interchange! in RESTAPI's ok but what is data interchange!?? ⤵ ➡ data interchange format like a language that computers use to talk to each other. Just as people use different languages to communicate, like English, Spanish, or Chinese, computers use specific formats to exchange information. These formats make sure that data is structured in a way that both computers can understand, whether they're sharing data over the internet, saving it to a file, or passing it between different parts of a program. JSON(JavaScript Object Notation) : it used for representing structured data in RESTful APIs, particularly in Spring Web applications. Spring provides excellent support for JSON processing through libraries like Jackson, ➡ It is like writing down information in a way that's easy for both humans and computers to understand. It's a simple and readable format that's often used for transmitting data between a web server ...