diff --git a/freemarker-tutorial/pom.xml b/freemarker-tutorial/pom.xml
index 22b1f09..ec997f8 100644
--- a/freemarker-tutorial/pom.xml
+++ b/freemarker-tutorial/pom.xml
@@ -1,76 +1,79 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>com.supwisdom.tutorial</groupId>
-	<artifactId>freemarker-tutorial</artifactId>
-	<packaging>war</packaging>
-	<version>1.0-SNAPSHOT</version>
-	<name>Freemarker Tutorial Webapp</name>
-	<url>http://maven.apache.org</url>
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>com.supwisdom.tutorial</groupId>
+  <artifactId>freemarker-tutorial</artifactId>
+  <packaging>war</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>Freemarker Tutorial Webapp</name>
+  <url>http://maven.apache.org</url>
 
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-	</properties>
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <downloadJavadocs>true</downloadJavadocs>
+    <downloadSources>true</downloadSources>
+  </properties>
 
-	<distributionManagement>
-		<repository>
-			<id>ekingstar-releases</id>
-			<name>internal release</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
-		</repository>
-		<snapshotRepository>
-			<id>ekingstar-snapshots</id>
-			<name>internal Snapshots</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
-		</snapshotRepository>
-		<downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
-	</distributionManagement>
+  <distributionManagement>
+    <repository>
+      <id>ekingstar-releases</id>
+      <name>internal release</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
+    </repository>
+    <snapshotRepository>
+      <id>ekingstar-snapshots</id>
+      <name>internal Snapshots</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
+    </snapshotRepository>
+    <downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
+  </distributionManagement>
 
 
-	<dependencies>
-		<dependency>
-			<groupId>com.jfinal</groupId>
-			<artifactId>jfinal</artifactId>
-			<version>1.6</version>
-		</dependency>
-		<dependency>
-			<groupId>org.freemarker</groupId>
-			<artifactId>freemarker</artifactId>
-			<version>2.3.20</version>
-		</dependency>
-		<dependency>
-			<groupId>com.jfinal</groupId>
-			<artifactId>jetty-server</artifactId>
-			<version>8.1.8</version>
-		</dependency>
-		<dependency>
-			<groupId>log4j</groupId>
-			<artifactId>log4j</artifactId>
-			<version>1.2.16</version>
-		</dependency>
-	</dependencies>
-	<build>
-		<finalName>freemarker_demo</finalName>
-		<plugins>
-			<plugin>
-				<groupId>org.mortbay.jetty</groupId>
-				<artifactId>jetty-maven-plugin</artifactId>
-				<version>8.1.8.v20121106</version>
-				<configuration>
-					<stopKey>stop</stopKey>
-					<stopPort>5599</stopPort>
-					<webAppConfig>
-						<contextPath>/</contextPath>
-					</webAppConfig>
-					<scanIntervalSeconds>5</scanIntervalSeconds>
-					<connectors>
-						<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
-							<port>8080</port>
-							<maxIdleTime>60000</maxIdleTime>
-						</connector>
-					</connectors>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
+  <dependencies>
+    <dependency>
+      <groupId>com.jfinal</groupId>
+      <artifactId>jfinal</artifactId>
+      <version>1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>org.freemarker</groupId>
+      <artifactId>freemarker</artifactId>
+      <version>2.3.20</version>
+    </dependency>
+    <dependency>
+      <groupId>com.jfinal</groupId>
+      <artifactId>jetty-server</artifactId>
+      <version>8.1.8</version>
+    </dependency>
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.16</version>
+    </dependency>
+  </dependencies>
+  <build>
+    <finalName>freemarker_demo</finalName>
+    <plugins>
+      <plugin>
+        <groupId>org.mortbay.jetty</groupId>
+        <artifactId>jetty-maven-plugin</artifactId>
+        <version>8.1.8.v20121106</version>
+        <configuration>
+          <stopKey>stop</stopKey>
+          <stopPort>5599</stopPort>
+          <webAppConfig>
+            <contextPath>/</contextPath>
+          </webAppConfig>
+          <scanIntervalSeconds>5</scanIntervalSeconds>
+          <connectors>
+            <connector
+              implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
+              <port>8080</port>
+              <maxIdleTime>60000</maxIdleTime>
+            </connector>
+          </connectors>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/hibernate-tutorial/pom.xml b/hibernate-tutorial/pom.xml
index 8d74564..dff95ba 100644
--- a/hibernate-tutorial/pom.xml
+++ b/hibernate-tutorial/pom.xml
@@ -1,90 +1,92 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
 
-	<groupId>com.supwisdom.tutorial</groupId>
-	<artifactId>hibernate-tutorial</artifactId>
-	<version>1.0-SNAPSHOT</version>
-	<packaging>jar</packaging>
+  <groupId>com.supwisdom.tutorial</groupId>
+  <artifactId>hibernate-tutorial</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
 
-	<name>hibernate-tutorial</name>
-	<url>http://maven.apache.org</url>
+  <name>hibernate-tutorial</name>
+  <url>http://maven.apache.org</url>
 
-	<properties>
-		<slf4j.version>1.6.6</slf4j.version>
-		<logback.version>1.0.13</logback.version>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-	</properties>
+  <properties>
+    <slf4j.version>1.6.6</slf4j.version>
+    <logback.version>1.0.13</logback.version>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <downloadJavadocs>true</downloadJavadocs>
+    <downloadSources>true</downloadSources>
+  </properties>
 
-	<distributionManagement>
-		<repository>
-			<id>ekingstar-releases</id>
-			<name>internal release</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
-		</repository>
-		<snapshotRepository>
-			<id>ekingstar-snapshots</id>
-			<name>internal Snapshots</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
-		</snapshotRepository>
-		<downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
-	</distributionManagement>
+  <distributionManagement>
+    <repository>
+      <id>ekingstar-releases</id>
+      <name>internal release</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
+    </repository>
+    <snapshotRepository>
+      <id>ekingstar-snapshots</id>
+      <name>internal Snapshots</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
+    </snapshotRepository>
+    <downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
+  </distributionManagement>
 
-	<dependencies>
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<version>3.8.1</version>
-			<scope>test</scope>
-		</dependency>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
 
-		<dependency>
-			<groupId>org.hibernate</groupId>
-			<artifactId>hibernate-core</artifactId>
-			<version>4.3.5.Final</version>
-		</dependency>
+    <dependency>
+      <groupId>org.hibernate</groupId>
+      <artifactId>hibernate-core</artifactId>
+      <version>4.3.5.Final</version>
+    </dependency>
 
-		<dependency>
-			<groupId>org.slf4j</groupId>
-			<artifactId>slf4j-api</artifactId>
-			<version>${slf4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>ch.qos.logback</groupId>
-			<artifactId>logback-core</artifactId>
-			<version>${logback.version}</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>ch.qos.logback</groupId>
-			<artifactId>logback-classic</artifactId>
-			<version>${logback.version}</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>com.h2database</groupId>
-			<artifactId>h2</artifactId>
-			<version>1.4.178</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.commons</groupId>
-			<artifactId>commons-lang3</artifactId>
-			<version>3.1</version>
-		</dependency>
-	</dependencies>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>${slf4j.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-core</artifactId>
+      <version>${logback.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-classic</artifactId>
+      <version>${logback.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.h2database</groupId>
+      <artifactId>h2</artifactId>
+      <version>1.4.178</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-lang3</artifactId>
+      <version>3.1</version>
+    </dependency>
+  </dependencies>
 
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.codehaus.mojo</groupId>
-				<artifactId>exec-maven-plugin</artifactId>
-				<version>1.3</version>
-				<configuration>
-					<includeProjectDependencies>true</includeProjectDependencies>
-					<mainClass>org.h2.tools.Server</mainClass>
-					<commandlineArgs>-baseDir ${basedir}</commandlineArgs>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>exec-maven-plugin</artifactId>
+        <version>1.3</version>
+        <configuration>
+          <includeProjectDependencies>true</includeProjectDependencies>
+          <mainClass>org.h2.tools.Server</mainClass>
+          <commandlineArgs>-baseDir ${basedir}</commandlineArgs>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/jdbc-tutorial/pom.xml b/jdbc-tutorial/pom.xml
index ef9a4df..c325f9a 100644
--- a/jdbc-tutorial/pom.xml
+++ b/jdbc-tutorial/pom.xml
@@ -1,59 +1,61 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
 
-	<groupId>com.supwisdom.tutorial</groupId>
-	<artifactId>jdbc-tutorial</artifactId>
-	<version>1.0-SNAPSHOT</version>
-	<packaging>jar</packaging>
+  <groupId>com.supwisdom.tutorial</groupId>
+  <artifactId>jdbc-tutorial</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
 
-	<name>jdbc-tutorial</name>
-	<url>http://maven.apache.org</url>
+  <name>jdbc-tutorial</name>
+  <url>http://maven.apache.org</url>
 
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-	</properties>
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <downloadJavadocs>true</downloadJavadocs>
+    <downloadSources>true</downloadSources>
+  </properties>
 
-	<distributionManagement>
-		<repository>
-			<id>ekingstar-releases</id>
-			<name>internal release</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
-		</repository>
-		<snapshotRepository>
-			<id>ekingstar-snapshots</id>
-			<name>internal Snapshots</name>
-			<url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
-		</snapshotRepository>
-		<downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
-	</distributionManagement>
+  <distributionManagement>
+    <repository>
+      <id>ekingstar-releases</id>
+      <name>internal release</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-release-local</url>
+    </repository>
+    <snapshotRepository>
+      <id>ekingstar-snapshots</id>
+      <name>internal Snapshots</name>
+      <url>http://app.supwisdom.com:81/artifactory/libs-snapshot-local</url>
+    </snapshotRepository>
+    <downloadUrl>http://app.supwisdom.com:81/artifactory</downloadUrl>
+  </distributionManagement>
 
-	<dependencies>
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<version>3.8.1</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>com.h2database</groupId>
-			<artifactId>h2</artifactId>
-			<version>1.4.178</version>
-		</dependency>
-	</dependencies>
-	
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.codehaus.mojo</groupId>
-				<artifactId>exec-maven-plugin</artifactId>
-				<version>1.3</version>
-				<configuration>
-					<includeProjectDependencies>true</includeProjectDependencies>
-					<mainClass>org.h2.tools.Server</mainClass>
-					<commandlineArgs>-baseDir ${basedir}</commandlineArgs>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.h2database</groupId>
+      <artifactId>h2</artifactId>
+      <version>1.4.178</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>exec-maven-plugin</artifactId>
+        <version>1.3</version>
+        <configuration>
+          <includeProjectDependencies>true</includeProjectDependencies>
+          <mainClass>org.h2.tools.Server</mainClass>
+          <commandlineArgs>-baseDir ${basedir}</commandlineArgs>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/spring-tutorial/pom.xml b/spring-tutorial/pom.xml
new file mode 100644
index 0000000..18a46d0
--- /dev/null
+++ b/spring-tutorial/pom.xml
@@ -0,0 +1,47 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>com.supwisdom.tutorial</groupId>
+  <artifactId>spring-tutorial</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <name>spring-tutorial</name>
+  <url>http://maven.apache.org</url>
+
+  <parent>
+    <groupId>org.springframework.boot</groupId>
+    <artifactId>spring-boot-starter-parent</artifactId>
+    <version>1.0.2.RELEASE</version>
+  </parent>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <downloadJavadocs>true</downloadJavadocs>
+    <downloadSources>true</downloadSources>
+  </properties>
+
+
+  <dependencies>
+    <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-starter-web</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/spring-tutorial/src/main/java/com/supwisdom/tutorial/App.java b/spring-tutorial/src/main/java/com/supwisdom/tutorial/App.java
new file mode 100644
index 0000000..d3bac10
--- /dev/null
+++ b/spring-tutorial/src/main/java/com/supwisdom/tutorial/App.java
@@ -0,0 +1,22 @@
+package com.supwisdom.tutorial;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * Hello world!
+ */
+@RestController
+@EnableAutoConfiguration
+public class App {
+  @RequestMapping("/")
+  String home() {
+    return "Hello World!";
+  }
+
+  public static void main(String[] args) throws Exception {
+    SpringApplication.run(App.class, args);
+  }
+}
diff --git a/spring-tutorial/src/test/java/com/supwisdom/tutorial/AppTest.java b/spring-tutorial/src/test/java/com/supwisdom/tutorial/AppTest.java
new file mode 100644
index 0000000..3fc2500
--- /dev/null
+++ b/spring-tutorial/src/test/java/com/supwisdom/tutorial/AppTest.java
@@ -0,0 +1,38 @@
+package com.supwisdom.tutorial;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+}
