Search This Blog

Thursday, 13 April 2017

Spring Framework

Spring Framework

The Spring Framework is an open source application framework for the Java platform which aims to make J2EE development easier. Spring framework offers a lot of freedom to Java developers yet provides well-documented and easy to use solutions for common practices in the industry.

Spring is a glue framework that gives an easy way of configuring and resolving dependencies throughout the J2EE stack. The core features of the Spring Framework can be used in developing any Java application, but there are extensions for building web applications on top of the Java EE platform. Spring framework targets to make J2EE development easier to use and promote good programming practice by enabling a POJO-based programming model.

Goals of Spring Framework
          Reduce glue code/plumbing work
        Spring Framework takes lot of load off the programmer by providing dependencies when required and by using AOP.
          Externalize dependencies
        Dependencies are described in a separate file (xml) rather than mixing it with the business logic code itself. This gives a better control over the application.
          Manage dependencies at a single place
        Dependencies can be managed better due to this.
          Improve testability
        Actual code can easily be replaced by a stub for testing purposes.
          Foster good application design
        Since the actual implementation sits behind the interfaces, it fosters good application design.
          Flexibility
        Spring offers integration points with several other frameworks. So, you do not have to write them yourself.
        Programmers are free to choose the modules that suit their application. Spring has a well layered architecture of 7 modules:
          Spring Core
          Spring Context
          Spring AOP
          Spring DAO
          Spring ORM
          Spring WebFlow
          Spring Web MVC

Spring Framework


Features of Spring Framework

          Lightweight
        Objects in a Spring-enabled application often have no dependencies on Spring specific classes. It’s jar file is just over 2.5 MB.
        Provides support to not only J2EE applications but also to stand alone applications
          Inversion of Control (IoC) and Dependency Injection
        The core of the Spring Framework is based on the principle of IoC. Applications that follow the IoC principle use configuration that describes the dependencies between its components.
        Ioc or to be more descriptive, Dependency Injection aims to offer a simpler mechanism for providing components dependencies.
          AOP
        Aspect Oriented Programming can be used to separate cross-cutting concerns from business logic. These concerns, then can be applied to many parts of the application. Logging and security are typical examples of such concerns.
          Pojo based programming
        Spring based applications need not extend/implement any spring specific classes. It leads to a simpler yet extensible programming model.


7 comments:

  1. Testing an application is become essential for any product to get an effective result. Your post help you to gain more info on Selenium Testing
    Selenium training institute in Chennai | Selenium Training Chennai

    ReplyDelete
  2. Thank you for posting an excellent content, this is the best content I have never seen which is related to current technology. Refer me for IT studies and language courses.
    Regards:
    Hadoop Training Chennai | Hadoop Training in Chennai

    ReplyDelete
  3. Thanks for sharing this. It is really helpful, keep up the good work and share more.
    Regards,
    Spring Training in Chennai | Hibernate Training in Chennai | Struts Training in Chennai

    ReplyDelete
  4. Much obliged to you for sharing this magnificent blog. It will enhance my insight about JAVA systems. This blog will find out about JAVA ideas. Likewise, it will enhance my programming ability.
    Core Spring Training | Spring and Hibernate Training | Spring source Training

    ReplyDelete
  5. Happy to found this blog. Good Post!. It was so good to read and useful to improve my knowledge as updated one, keep blogging. Hibernate Training in Electronic City
    Java Training in Electronic City

    ReplyDelete