Term
Name 4 benefits of Spring. |
|
Definition
1. Layered/distributed architecture (non-intrusive) .
2. Loosely coupled.
3. Simplifies creation of business methods.
4. Lightweight. |
|
|
Term
Every class in Spring is treated as a what? |
|
Definition
|
|
Term
Spring is a _____ _____ ______ . |
|
Definition
|
|
Term
What does the Spring Core/IoC Container do? |
|
Definition
Manages all services and the life-cycle of the bean. |
|
|
Term
All instances of the beans are ______ by default. |
|
Definition
|
|
Term
Whats the difference between ApplicationContext and Bean Factory? |
|
Definition
- BeanFactory supports lazy instantiation and provides the configuration framework and basic functionality.
- ApplicationContext supports pre-instantiation and adds more enterprise-specific functionality onto the Bean factory. |
|
|
Term
Explain the Spring module MVC framework. |
|
Definition
A full-featured MVC implementation for building Web applications (Spring's own framework). |
|
|
Term
Explain the Spring module Web. |
|
Definition
Builds on top of the ApplicationContext module, providing contexts for Web-based applications. |
|
|
Term
Explain the Spring module ORM. |
|
Definition
Various ORM frameworks can plugin to Spring's Object Relational tool. |
|
|
Term
Explain the Spring module DAO. |
|
Definition
It offers a meaningful exception hierarchy for managing the exception handling and error messages thrown by different database vendors. |
|
|
Term
Explain the Spring module AOP. |
|
Definition
It integrates Aspect-Oriented Programming functionality directly into the Spring framework, through a configuration management feature. |
|
|
Term
Explain the Spring module Context. |
|
Definition
A configuration file that provides context information to the Spring framework. |
|
|
Term
Explain the Spring module Core Container. |
|
Definition
Provides the essential functionality of the Spring framework. |
|
|
Term
What is Cross Cutting Concern? |
|
Definition
Functionality that is common/cutting across many classes. |
|
|
Term
Explain the AOP concept Advice. |
|
Definition
It states what Cross Cutting Concern needs to be applied and when. |
|
|
Term
Explain the AOP concept JoinPoint. |
|
Definition
It defines where on the method that the advice can be applied to. |
|
|
Term
Explain the AOP concept PointCut. |
|
Definition
The joinpoints that the advice is actually applied to. |
|
|
Term
Explain the difference between JoinPoint and PointCut. |
|
Definition
- JoinPoint is the possible candidates/methods to be selected.
- PointCut is the candidate(s)/method(s) selected. |
|
|
Term
Explain the AOP concept Target Object. |
|
Definition
The object(s)/class(es) that the Advice will be applied to. |
|
|
Term
Explain the AOP concept Proxy Object. |
|
Definition
A new object (at run-time) that is the target object and the advice applied to it. |
|
|
Term
Explain the difference between Target Object and Proxy Object. |
|
Definition
- Target Object is the targeted object to apply the advice to.
- Proxy Object is the object that has had the advice applied to it. |
|
|
Term
Explain the AOP concept Aspect. |
|
Definition
The pointcut with the Advice applied to it. |
|
|
Term
In AOP, what answers the question 'when'? |
|
Definition
|
|
Term
In AOP, what answers the question 'where'? |
|
Definition
|
|
Term
In AOP, what answers the question 'what'? |
|
Definition
|
|
Term
AOP ________ Cross Cutting Concern. |
|
Definition
|
|
Term
Which injections does Spring support? |
|
Definition
Constructor and Setter injections. |
|
|
Term
IoC is used heavily in what frameworks?
(Hint: 3) |
|
Definition
|
|
Term
|
Definition
An external agent (Container) pre-instantiates the object and delivers it ready for use when the calling code requires it. |
|
|
Term
Spring beans are classes ____ ___ in an XML file. |
|
Definition
|
|
Term
What are the Spring beans in a XML file called? |
|
Definition
|
|
Term
What are some pros of Constructor injection?
(Hint: 3) |
|
Definition
- Strong dependency contract; Bean ready to use upon instantiation.
- No setter; therefore less code.
- Bean properties immutable after construction. |
|
|
Term
Give some examples of Cross Cutting Concerns.
(Hint: 4) |
|
Definition
Logging, Security, Transactions, and Caching. |
|
|
Term
What are some advantages of AOP?
(Hint: 2) |
|
Definition
- Aspects are now decoupled from the primary code; they are not scattered throughout it.
- Code is now focused on primary functions alone. |
|
|
Term
Spring allows what kind of JoinPoints?
(Hint: 2) |
|
Definition
|
|
Term
What can IoC be broken into?
(Hint: 2) |
|
Definition
Dependency Injection and Dependency Lookup. |
|
|
Term
What is the difference between Dependency Injection and Lookup? |
|
Definition
- Injection: is non-invasive.
- Lookup: is invasive. |
|
|
Term
What kind of Dependency is the following?
public interface Orange {
}
public class AppleImpl implements Apple {
private Orange orange;
public AppleImpl(Orange orange) {
this .orange = orange;
}
}
|
|
Definition
|
|
Term
What kind of Dependency is the following?
public interface Orange {
}
public class AppleImpl implements Apple {
private Orange orange;
public void setOrange(Orange orange) {
this .orange = orange;
}
}
|
|
Definition
|
|
Term
What kind of Dependency is the follow?
public interface Orange {
}
public class AppleImpl implements Apple, DependencyProvision {
private Orange orange;
public void doDependencyLookup(DependencyProvider dp) throws DependencyLookupExcpetion{
this .orange = (Orange) dp.lookup( "Orange" );
}
}
|
|
Definition
Contextualized Dependency Lookup (Push Approach). |
|
|
Term
|
Definition
When an object must depend on another object. |
|
|
Term
Describe the relationship between IoC and DI. |
|
Definition
IoC is the principle, DI is the way of implementing IoC. |
|
|
Term
Explain the Advice Before. |
|
Definition
Advice that executes before a join point. |
|
|
Term
Explain the Advice After Returning. |
|
Definition
Executes after a join point completes normally (like without an exception). |
|
|
Term
Explain the Advice After Throwing. |
|
Definition
Executed if a method exits by throwing an exception. |
|
|
Term
Explain the Advice After Finally. |
|
Definition
Executed regardless of the means by which a join point exits (normal or exceptional return). |
|
|
Term
Explain the Advice Around. |
|
Definition
Surrounds a join point such as a method invocation. |
|
|
Term
What two things are required in a Bean Definition? |
|
Definition
A id and class attribute. |
|
|
Term
Where do you define the auto wire attribute? |
|
Definition
|
|
Term
|
Definition
It is a way to specify the relationship between various bean definitions in a Spring Xml file. |
|
|
Term
What is Constructor injection? |
|
Definition
Dependencies are provided as constructor parameters. |
|
|
Term
What are Setter injections? |
|
Definition
Dependencies assigned through Java-Bean properties. |
|
|
Term
What are Interface injections? |
|
Definition
Injection is done through an interface. |
|
|
Term
Define the bean scope Singleton. |
|
Definition
The bean definition is limited to one instance. |
|
|
Term
Define the bean scope Prototype. |
|
Definition
The bean definition is is limited to any number of objects instances. |
|
|
Term
Define the bean scope Request. |
|
Definition
The bean definition is limited to a single HTTP request. |
|
|
Term
Define the bean scope Session. |
|
Definition
The bean definition is limited to a HTTP session. |
|
|
Term
Define the bean scope Global Session. |
|
Definition
The bean definition is limited to a global HTTP session. |
|
|
Term
What does the Bean Factory provide? |
|
Definition
It provides the configuration framework and basic functionality. |
|
|
Term
What does the Application Context provide? |
|
Definition
It adds more enterprise-specific functionality onto the Bean factory. |
|
|
Term
|
Definition
An object that is instantiated, assembled, and managed in a Spring Core Container. |
|
|
Term
|
Definition
A means to access objects in a framework-style manner that is similiar to a JNDI registry. |
|
|
Term
A Spring Core Container manages what? |
|
Definition
|
|
Term
The Spring Core Container is also known as what? |
|
Definition
|
|
Term
What is Declarative Transaction Management? |
|
Definition
Made possible with Spring AOP, and is similar to CMT (Container-Managed). |
|
|
Term
What is Programmatic Transaction Management? |
|
Definition
An approach that allows you to manage the transaction with the help of programming in your source code. |
|
|
Term
Which Spring module supports Struts? |
|
Definition
|
|