title: How can I design a Java web application without an ORM and without embedded SQL
body: <p>EDIT:  Original Title:  Question about the benefit of using an ORM.</p>
  
  <p>I want to use an ORM for learning purposes and am try nhibernate.  I am using the tutorial and then I have a real project.  I can go the "old way" or use an ORM.  I'm not sure I totally understand the benefit.  On the one hand I can create my abstractions in code such that I can change my databases and be database independent.  On the other it seems that if I actually change the database columns I have to change all my code.</p>
  
  <p>Why wouldn't I have my application without the ORM, change my database and change my code, instead of changing my database, orm, and code?  Is it that they database structure doesn't change that much?</p>
  
  <p>I believe there are real benefits because ORMs are used by so many.  I'm just not sure I get it yet.</p>
  
  <p>Thank you.</p>
  
  <p>EDIT:  In the tutorial they have many files that are used to make the ORM work  </p>
  
  <p><a href="http://www.hibernate.org/362.html" rel="noreferrer">http://www.hibernate.org/362.html</a></p>
  
  <p>In the event of an application change, it seems like a lot of extra work just to say that I have "proper" abstraction layers.  Because I'm new at it it doesn't look that easy to maintain and again seems like extra work, not less.</p>
  
  <p>EDIT:  This is an old question I keep coming back to.  What I want to see if an example of properly designing an application without an ORM and without using embedded SQL and without using .NET LINQ-to-SQL, no offense.  I'm in the Java world at the moment, and I'm lost on how to proceed.  It is a web application.  No Spring, no other worldly frameworks.  JSP, JSTL, EL, HTML, JavaScript, CSS, Java, Tomcat.  Hope I didn't leave anything out.  And yes, I know it is an old question.  It is still relevant.</p>