############## Instructions ##############
This simple web application project built using Spring MVC, MyBatis, MySQL, Java, Rest, Bootstrap, Jquery, Handlebar template, Maven, Jetty plugin, Junit
- Lists the avaialble assignee names from the DB in the web page using controller and bootstrap dropdown. http://localhost:9001/assignment/index#
- When the page loads it populate the bootstrap dropdown with the names using spring controller (note: not using rest)
- when a name is selected it makes a rest call using Jquery / Ajax with an assignee id and get the response of ASSIGNMENT model back in JSON format and parse it in a bootstrap List Group using Handlebar js mechanism. (Refer : http://handlebarsjs.com/) a) When the rest service is been called it gets the value based on id, for example , http://localhost:9001/assignment/rest/filterby/id/4
Refer the video : http://screencast.com/t/etOTfZ0L2 This shows how to maven clean, install and demo
- Spring MVC + Java with annotation
- MyBatis with annotation
- Bootstrap Framework
- Handlebar template
- Jquery Ajax call
- Maven
- Jetty integrated
- Rest with spring
- Controller code model&view in response / rest usage ( we can decide which one to use and where)
- Junit with spring
- How to read properties using autowire and properties in json structure can be read by spring
- how to write better service layer on top of DAO and keep DAO / Mapper clean
- Set up the DB, install MySQL and ignore if you already have.
- Run the statements in the resources/dbscript/setupdb.sql script to create DB, user and sample table with some data
- Import the downloaded github project as a maven existing project
- Do maven clean and install
- goto plugin and run jetty
- The port on jetty run is 9001 (configured in pom.xml)
- If you want to create table & data from the above .sql script under an existing user/db, Please configure the properties like, user, password , db in a file under /resources/properties/system.properties
- CoreAdminController - is the controller , home.jsp goes thru this controller to populate dropdown
- AssignmentDAO - Acts as mapper interface
- AssignmentDAOImpl - its a service/data layer to make a call to DAO with its business logic inside
- Assignment - its a valued object or model
- AssignmentService - its a rest service to get Assignment details based on Id
- PropertiesUtil - this is a demo class to read from spring configurations and properties util can be autowired
- SpringUtil - to get bean context
- log4j - Log4j properties
- system - DB properties to be used in mybatis