title: How to use Layered architecture of spring and still follow object oriented structure?
body: <p>I learned spring and its layered structure(controller,service and dao)</p>
  
  <pre><code>@Controller("userController")
  
  @service("userService")
  @Transactional(     propagation = Propagation.REQUIRED,     isolation = Isolation.DEFAULT,      readOnly = true)
  
  @Repository("userDAO")
  </code></pre>
  
  <p>Now I am confused how do I make use of <strong>good OOPS practices</strong> (like <a href="http://www.math-cs.gordon.edu/courses/cs211/ATMExample/" rel="noreferrer">this</a>) with these layered structure to make a big project( real world have more complex business logic then sample applications usually provided). I also want to use these spring transaction and other features provided by framework. 
  Can some please help me out with it or refer to open source project which clarifies my doubt.</p>