Spring Framework 4 (Java Enterprise JEE) with AngularJS

Learn how to develop commercial web applications using Java Spring MVC Framework 4 wtih AngularJS by Google and HTML5
3.5 (280 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
4,912 students enrolled
40% off
Take This Course
  • Lectures 70
  • Length 13.5 hours
  • Skill Level All Levels
  • Languages English, captions
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 9/2015 English Closed captions available

Course Description

NEW udemy (23 SEP 2015) course related to the latest Java Spring MVC Framework 4 for developing WEB applications with popular and proven technologies such as AngularJS by Google and HTML5. (Lectures are divided in three main sections so you don't have to learn AngularJS Framework until you start the last section. The last section will teach you AngularJS by Google and the integration with Java Spring MVC Framework 4)

Moreover, this course is designed and created with the mindset of teaching you the latest web technologies in a short period of time with low training cost and high-quality content including real production quality code examples.

Therefore after attending this course, you will be ready to design and develop commercial Java Spring MVC applications by learning the main principals, best practices, and most important concepts.

Furthermore, this is a fast track course and covers the most important concepts in AngularJS Framework, HTML5 and the latest Java Spring MVC Framework 4x with code examples and sample applications. You will be able to download source codes/slides/diagrams by attending this course and you can use those samples/codes in your applications as well. Therefore, it will be more than enough for you to develop Java Spring MVC applications if you attend this course.

The benefits of attending this udemy course are listed like as below;

  • You will earn a higher salary hence you will be able to use the latest and productive technologies and this course will also improve the way of your thinking in terms of programming by teaching you dependency injection principle used in Spring MVC and AngularJS
  • You will be more confident about commercial WEB programming for the following years and general programming concepts as well.
  • We will only use FREE Open Source Software tools during the development of components in this course.
  • You will learn the latest Java Spring MVC Framework with hands-on examples
  • You will learn the usage of AngularJS by Google for developing structured rich client side applications
  • You will understand the usage of latest useful basic HTML5 tags with code examples
  • You will gain experience of using CSS(Style Sheets) in web applications
  • Learn how to develop, test, run and debug Java Spring MVC applications
  • Learn how to integrate AngularJS with Java Spring MVC framework.

The contents of Java Spring MVC 4 Lectures;

  • Understand the concept of MVC (Model View Controller) Architecture
  • How to install Spring Tool Suite for debugging, running and testing Spring MVC
  • You will learn how to download and install Java JDK 8
  • Learn how to download and configure Apache Tomcat 8 in order to test some Spring MVC Functionalities
  • Learn how to run Spring MVC on Development tc Server by Pivotal
  • Learn how to build Java Spring Applications with Apache Maven through Spring Tool Suite
  • How to use embedded Maven with pom xml file
  • Learn how to add jar dependencies to Spring projects using Apache Maven build tool and pom xml
  • Understand how to configure logging with logback xml
  • How to use @Test annotations in JUnit tests
  • How to configure JUnit tests using @RunWith(SpringJUnit4ClassRunner class) and @ContextConfiguration
  • Learn how to import Eclipse based projects into Spring Tool Suite workspace
  • How to define Spring beans in application context XML file
  • Understand dependency injection principle and its usage in Java Spring MVC
  • Learn the usage of setter and constructor injections
  • Learn how to use @Autowired annotation in Java Spring MVC Framework
  • Learn how to use <constructor-arg/> and <property/> tags in order to define dependency injection for beans
  • Learn the configuration of Spring MVC applications using Java Configuration with @Configuration and @EnableWebMvc annotations
  • Understand how to define beans in Java Configuration using @Bean annotation
  • How to configure DelegatingFilterProxy in Java Spring MVC
  • How to configure ContextLoaderListener and RequestContextListener
  • Understand the usage of <context-param/> in web xml with contextConfigLocation
  • How to define <servlet/> and <servlet-mapping/> tags in web xml
  • How to define beans in application context XML file
  • How to define MVC controllers using XML configuration
  • How to define MVC controllers using @Controller annotation
  • How to define MVC controllers using BeanNameUrlHandlerMapping
  • How to define MVC controllers using ControllerClassNameHandlerMapping
  • Understand how to configure CookieLocaleResolver
  • Understand the usage of @CookieValue with HTTP Cookies in Spring MVC
  • Understand the usage of LocaleChangeInterceptor
  • Learn how to define InternalResourceViewResolver in configuration files
  • Understand the usage of <mvc:annotation-driven/> and <context:component-scan/> tags in Spring MVC
  • Learn how to edit and configure message properties files for properties and i18n(internationalization)
  • How to configure ReloadableResourceBundleMessageSource in XML
  • Learn how to pretty print JSON documents using MappingJackson2HttpMessageConverter pretty print
  • Define <mvc:interceptors/> inside Spring MVC applications
  • Learning the usage of <mvc:resources/> tags in Spring MVC
  • Understanding the usage of <mvc:view-controller/> mapping tags
  • Learn how to upload any files to servers and define CommonsMultipartResolver in Spring MVC
  • Handle ServletRequestHandledEvent in Spring MVC applications
  • Learning the implementation of ApplicationListener interface
  • How to publish custom events with ApplicationEvent in Spring MVC
  • How to implement ApplicationContextAware interface
  • Produce Excel and PDF documents in Spring MVC by defining XmlViewResolver views
  • How to send emails using Apache Velocity Templates and Java Mail API
  • Learn how to configure VelocityEngineFactoryBean in application context xml
  • How to use @ModelAttribute and @Valid annotations with Spring form tag library
  • How to create custom validators by implementing Validator interface
  • How to use Spring form tag library with <form:input/>, <form:password/>, <form:errors/>, <form:radiobutton/>, <form:select/>, <form:textarea/> and <form:form/>
  • Understand how to configure JavaMailSenderImpl in application context
  • How to configure Quartz Scheduling framework with Spring MVC
  • Configuring Quartz cron triggers with Spring MVC
  • Defining Quartz jobs, tasks and triggers
  • How to configure Quartz CronTriggerFactoryBean in Spring MVC
  • Defining Quartz SimpleTriggerFactoryBean in Spring MVC applications
  • Learning the usage of @Scheduled annotation with fixed delay and cron configuration
  • How to use @RestController in Spring MVC
  • Learn the differences between @Controller and @RestController
  • How to call external services using RestTemplate
  • Learn the usage of @ResponseBody annotation
  • Understand and learn how to return JSON and XML files from Spring MVC controllers
  • Learn how to define a Java POJO object as a XML document using @XMLRootElement and @XmlElement
  • How to define scopes in Spring MVC and the usage of Session scope
  • How to use @ExceptionHandler and @ResponseStatus annotations
  • How to use JSTL(Java Standard Tag Library) in Spring MVC
  • How to handle exceptions by implementing HandlerExceptionResolver
  • How to handle HTTP request with @RequestMapping
  • How to get request parameters with @RequestParam and @PathVariable
  • Learn how to configure AbstractExcelView and AbstractPdfView in Spring MVC
  • How to define DelegatingFilterProxy in Spring MVC
  • How to define users and roles using <jdbc-user-service/>
  • How to define <authentication-manager/> in security configuration file
  • How to use @RolesAllowed, @PreAuthorize and @Secured in Spring MVC applications
  • How to use <security:authorize/> tag in Spring MVC view layer
  • Learn the usage of <security:authentication/> tag in the view layer on Spring MVC
  • How to configure Spring Security forms with <form-login/>
  • How to restrict access to pages using <intercept-url/>
  • Learn how to access data sources using JdbcTemplate in Spring MVC applications
  • Learn the usage of update and query methods in JdbcTemplate
  • Understand how to configure data sources using DriverManagerDataSource
  • Configure embedded HSQLDB using <jdbc:initialize-database/> and <jdbc:script/> tags
  • Understand the configuration of JPA Persistence Context and EntityManager
  • Learn how to configure Hibernate ORM with Spring MVC (JPA implementation)
  • Configuration of JpaTransactionManager in Java Spring MVC
  • Understand the usage of @Entity, @Table, @Id, @GeneratedValue and @Column annotations
  • Learn how to use @Repository and @PersistenceContext annotations
  • Learn how to configure LocalContainerEntityManagerFactoryBean in Spring MVC applications

HTML5 Lectures;

  • Understand the usage of new HTML5 tags for arranging the structure (template) of a HTML page such as using <header/>, <main/>, <nav/>, <section/>, <article/>, <aside/> and <footer/>
  • Learn new <input/> attributes and types such as autofocus, required, placeholder, email, datetime, pattern (Regular Expressions), number, min and max and datalist
  • Integrating audio and video contents to HTML5 pages
  • Learn how to use HTML5 LocalStorage and SessionStorage API in order to store data in browsers
  • Debug and test HTML5 applications using Google Developer Tools.

AngularJS by Google Lectures;

  • Learn the usage and benefits of using AngularJS Framework in web applications
  • Understand the concept of Single Page Applications
  • Learn how to use Dependency Injection pattern in AngularJS framework
  • Understand the concept of two-way data binding in AngularJS
  • Bind data to HTML pages using AngularJS {‌{ expressions }}
  • Learn the usage of AngularJS modules, controllers, factories, services, views, templates, directives and routing
  • Learn the configuration of Spring Tool Suite and Eclipse for AngularJS support
  • Understand the usage of $scope
  • Learn how to use $http and $resource for using external resources with REST calls
  • Validate HTML forms using AngularJS
  • Understand the usages of filters with examples
  • Understand the usage of ng-model, ng-click, ng-class, ng-bind, ng-if, ng-switch, ng-show, ng-hide, ng-repeat and ng-init

HD quality (full screen) recorded course content and you will be able to see the source code clearly (HD format) if you attend this udemy course as a student.

What are the requirements?

  • Basic knowledge of programming and enthusiasm to learn the latest Java Spring MVC Framework 4.x
  • Basic knowledge of HTML and eagerness to learn AngularJS with HTLM5 in an easy way

What am I going to get from this course?

  • Learn how to develop rich client applications using AngularJS and HTML5 with hands on code examples
  • Understand the concept and implementation of dependency injection in AngularJS
  • Learn how to develop interactive and structured user interfaces with AngularJS by Google
  • Understand the usage of most used AngularJS components
  • Learn the usage of AngularJS core concepts such as Data Binding, Directives, Expressions, Filters, Views, Routes and Forms
  • Understand the usage of most used HTML5 tags and improvements
  • Learn the benefits and advantages of using HTML5 tags
  • Learn the differences between HTML and HTML5 specifications
  • Learn how to combine AngularJS with HTML5 in dynamic web pages
  • Develop easily AngularJS based WEB applications
  • Understand the structure of Java Enterprise WEB applications
  • Understand how to configure the latest Java Spring MVC 4.x applications in Java Enterprise Environments
  • Understand how to use dependency injection in Java Spring MVC 4.x using annotations and XML
  • Learn how to define and configure Model, Controller and View layers in Java Spring Framework 4.x
  • Learn how to configure, integrated and develop web applications using AngularJS by Google with Java Spring MVC Framework 4.x
  • Gain the knowledge of MVC (Model View Controller) design pattern in web applications
  • Learn how to develop Java Spring MVC 4.x applications by using latest components
  • Learn how to configure Java Spring MVC applications using annotations and XML
  • Learn how to use @Annotations in Java Spring MVC web applications
  • Understand how to validate request parameters in latest Java Spring MVC 4.x Framework
  • Learn how to develop REST web services in Spring MVC
  • Learn how to use Maven for library management
  • Learn how to return JSON and XML outputs from Spring MVC controllers
  • Understand how to upload any files to servers using Spring MVC components
  • Understand how to handle Exceptions on Spring MVC web applications
  • Learn how to implement Spring Security in Spring MVC
  • Learn how to use JSTL (JSP Standard Tag Library) and taglibs with java Spring MVC
  • Understand how to return PDF and Excel documents with the latest Java Spring MVC 4.x
  • Understand how to configure task schedulers in Java Spring MVC
  • Learn how to send emails using libraries in Java Spring MVC

Who is the target audience?

  • Front-end and Back-end developers interested in learning AngularJS by Google
  • Developers interested in learning useful HTML5 tags
  • Web Developers with the basic knowledge of Java Programming Language
  • Junior, Senior or Expert developers interested in learning the latest Spring MVC framework
  • Web Developers planning to use AngularJS, HTML5 with SpringMVC applications
  • Java Programmers and Developers planning to develop commercial enterprise applications with Java Spring MVC
  • University Students planning to develop projects using Spring MVC technology

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Introduction to Java Spring MVC Framework with AngularJS by Google and HTML5

This lecture will provide more information about this udemy course related;
How to develop enterprise Java Spring MVC WEB applications
How to develop, run and debug AngularJS by Google on browsers
How to integrate AngularJS with the latest Java Spring MVC framework
How to use new HTML5 features within WEB applications

Huge discount coupon for the course Java Spring MVC with Java Configuration
1 page

Java Spring MVC Framework with AngularJS by Google and HTML5 udemy course related files
sample application source codes
Java Spring MVC Course documents

  • Installing the latest Spring Tool Suite
  • Java Development Kit (JDK 8)
  • Apache Tomcat 6.0
  • Installing the latest Chrome Browser

How to import springmvc-angularjs-html5 sample application to Spring Tool Suite

Section 2: Java Spring MVC Framework

Learn the structure of WAR(Web application ARchive) files.


Sample TestProject is created
Java TestProject is developed using Dynamic Project settings in Spring Tool Suite

The details of Java J2EE(JEE) web applications

General information about Java Spring MVC Framework and the sample application springmvc-angularjs-html5

Spring MVC with AngularJS by Google and HTML5 sample application

Learn how to define DispatcherServlet in web xml
How to define ContextLoaderListener with contextConfigLocation in Java Spring MVC Framework


Dependency injection through constructor and setter
<constructor-arg/> and <property/>

Testing Dependency Injection in Spring MVC Framework

The configuration of the following components;

  • <mvc:view-controller/>
  • <mvc:resources/>
  • <mvc:annotation-driven/>
  • <context:component-scan/>

Understand the usage of Maven built automation tool
Learn how to use pom xml file in order to update jar dependencies of the Spring MVC project.
Understand how to configure any Java application to Apache Maven Project


Understand the dependencies defined in pom.xml


Learn how to configure controllers with @Controller annotation on class levels
You will understand how to configure controllers in XML configurations files by using the following approaches;
SimpleUrlHandlerMapping, ControllerClassNameHandlerMapping and with ControllerBeanNameUrlHandlerMapping

  • Understand how to configure CommonsMultipartResolver in Spring MVC
  • Learn how to upload files with MultipartFile (@RequestParam("file") MultipartFile file)
  • Apache POI Java API for Microsoft Documents for generating Excel documents with Java Spring MVC
  • iTextJava API for generating PDF documents

Datasource definition with DriverManagerDataSource (HSQLDB Embedded Database)
The configuration of embeded database with <jdbc:initialize-database/> and <jdbc:script/> tags

  • JdbcTemplate's update and query are explained
  • Learn how to use RowMapper and PreparedStatementCreator
Sample application SQL statements with JdbcTemplate in Spring MVC

You will understand the usage of JavaMailSenderImpl class in order to send emails with Java Mail API
Apache Velocity Templating Framework will be explained in order to send custom emails


@Restcontroller, @ResponseBody and @RequestMapping annotations are explained
You will learn how to use RestTemplate


Learn the configuration and usage of Hibernate ORM
@Entity, @Id, @Table and @Column annotations are explained

Sample application ORM (Hibernate) with Java Spring MVC

You will learn how to handle exceptions using HandlerExceptionResolver and @ExceptionHandler annotation
How to configure logging using LogBack (slf4J implementation) logback.xml


This lectures will explain the following JSTL tags <c:if />, <c:url/>, <c:forEach/>, <c:choose/>, <c:out/>, <c:set/>, <fmt:formatDate/> and <fmt:formatNumber/>

  • Quartz Job Scheduling Library is explained with cron and simple triggers.
  • CronTriggerFactoryBean, MethodInvokingJobDetailFactoryBean, MethodInvokingJobDetailFactoryBean and SimpleTriggerFactoryBean are explained
  • @Scheduled Spring MVC is explained
  • HandlerInterceptor interface will be implemented in order to create an interceptor
  • The usage of <mvc:interceptors/> and LocaleChangeInterceptor will be explained
  • Understand how to use message properties
  • The configuration of Spring MVC with Java Config (WebApplicationInitializer) are explained with an example
  • @Configuration, @EnableWebMvc and @ComponentScan are explained

The usage of redirect will be explained


Learn the usage of HTTP Session object in Spring MVC


Understanding the usage of CookieLocaleResolver and @CookieValue


The configuration of @RunWith(SpringJUnit4ClassRunner.class), @ContextConfiguration and @Test annotations


Learn how to configure the following components in Java Spring MVC Security;

  • <intercept-url/>
  • <jdbc-user-service/>
  • <authentication-manager/> and <authentication-provider/>

The configuration of <form-login/> is explained in Spring MVC framework.
Learn how to configure j_username, j_password, j_spring_security_check and _spring_security_remember_me


@RolesAllowed, @PreAuthorize and @Secured are explained with examples


<security:authorize/> and <security:authentication/> are explained


@XmlRootElement and @XmlElement annotations are explained


The internationalization of Java Spring MVC applications


The usage of @ResponseBody and MappingJackson2HttpMessageConverter


This lecture covers the usage of the following tags with an example

  • <form:form/>
  • <form:input/>
  • <form:radiobutton/>
  • <form:checkbox/>
  • <form:select /> and <form:option/>
  • <form:textarea />
  • <form:errors/>
The validation of form input elements with javax.validation are covered as well.
  • Implementing ApplicationListener interface
  • Defining custom events by extending ApplicationEvent

Spring MVC Quiz
30 questions
Spring MVC Framework 4.x Slides
27 pages
Section 3: HTML5

Learn the new improvements and changes in HTML5


Understanding the usage of new HTML5 structure tags;
<header>, <main>, <nav>, <section>, <article>, <aside> and <footer>


This lecture explains changing the style of HTML5 pages using CSS sheets


Form <input/> tags are explained including email, number, range, tel, date, color and others

Samples regarding HTML5 Form input attributes including validation

Learning <audio/> and <video/> tags


Applying Regular Expressions patterns to <input/> elements


Developer Console in Google Chrome is explained


This lecture will teach you the usage of localStorage and sessionStorage

HTML5 Quiz
10 questions
HTML5 Slides
13 pages
Section 4: AngularJS by Google integrated with Java Spring MVC Framework
What is AngularJS

Learn how to generate JSON output from JavaScript Objects
Understand the usage of JSON.stringfy() and JSON.parse()
Learn how to create arrays with JavaScript
Learn how to create array of objects with JavaScript
Learn how to created nested objects with JavaScript


Binding the data in AngularJS with {‌{expression}}
Understand how to bind data between model and view layers


ng-model, ng-click, ng-class, ng-bind, ng-if, ng-switch, ng-show, ng-hide, ng-repeat and ng-init are explained


Second Part: ng-model, ng-click, ng-class, ng-bind, ng-if, ng-switch, ng-show, ng-hide, ng-repeat and ng-init are explained

AngularJS two way data-binding
AngularJS Modules and Dependency Injection

Understand the usage of controller methods in AngularJS JavaScript Framework

Sample application Controllers in AngularJS

How to use built-in filters such as uppercase, lowercase, json, date, limitTo and orderBy
How to develop custom filters using AngularJS


Learn how to use AngularJS form properties $invalid, $valid, $touched, $pristine and $dirty
Learn how to validate forms using AngularJS


Learn how to configure and use services, factories and providers
Understand how to use constants and values


Learn how to use ngRoute module in order to route single page applications to templates
Learn how to configure $routeProvider


Learn the usage of $http service in order to call REST services
Learn how to call REST services using $resource based on CRUD structure

AngularJS Basics Quiz
15 questions
AngularJS by Google Slides
13 pages

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Tuna Tore, Consultant, Lead Java Developer, Blogger and Instructor

Tuna Tore is an experienced IT Consultant, Lead Java Developer and Instructor. He graduated as a Computer Engineer and got his MSc degree in Information Technology. He is also Certified Core Spring Professional. Tuna has more than 6 years of commercial experience using Spring Framework and other open source frameworks. Until now, he worked mainly in IT and Financial institutions such as ING Bank and IBM. Currently, he works as an IT Consultant in one of the biggest IT consultancy company in Europe. He is also SUN Certified Java Programmer, SUN Certified Web Component Developer and c-sap Certified Secure Application Programmer.

He has the knowledge and experience in the following areas;

Core Java Programming

Open Source Frameworks (Spring, Hibernate and JSF )

Java Enterprise Development

Java Architecture

System Integration

Software Development Life-cycle

Java Component&Module Development

Bug Fixing&Refactoring

Ready to start learning?
Take This Course