Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Building Applications with Spring 5 and Vue.js 2

You're reading from   Building Applications with Spring 5 and Vue.js 2 Build a modern, full-stack web application using Spring Boot and Vuex

Arrow left icon
Product type Paperback
Published in Oct 2018
Publisher Packt
ISBN-13 9781788836968
Length 590 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
James J. Ye James J. Ye
Author Profile Icon James J. Ye
James J. Ye
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

Preface 1. Modern Web Application Development - This Is a New Era FREE CHAPTER 2. Vue.js 2 - It Works in the Way You Expected 3. Spring 5 - The Right Stack for the Job at Hand 4. TaskAgile - A Trello-like Task Management Tool 5. Data Modeling - Designing the Foundation of the Application 6. Code Design - Designing for Stability and Extensibility 7. RESTful API Design - Building Language Between Frontend and Backend 8. Creating the Application Scaffold - Taking off Like a Rocket 9. Forms and Validation - Starting with the Register Page 10. Spring Security - Making Our Application Secure 11. State Management and i18n - Building a Home Page 12. Flexbox Layout and Real-Time Updates with WebSocket - Creating Boards 13. File Processing and Scalability - Playing with Cards 14. Health Checking, System Monitoring - Getting Ready for Production 15. Deploying to the Cloud with Jenkins - Ship It Continuously 16. Other Books You May Enjoy

Introduction

If you're creating a résumé page for your personal website, it will most likely be sufficient to write it in vanilla JavaScript, HTML 5, and some creative CSS style sheets that make it look special and unique. And if you're creating the jobs page of your company's official website, doing it barehanded might work. But if you use a number of frameworks to style the page and to process logic and animations, you will find yourself in a much better position that you can still go home from work earlier than usual and enjoy a cup of coffee with friends at the weekend. And if you're building something like Monster (https://www.monster.com/) I hope that you are not just carrying those favorite frameworks with you to the battlefield, and if you go barehanded, you wouldn't even make it there. With the level of complexity of such an application and the fact that you will need to keep improving or changing features because of the neverending stop-change requirements, you need to bring the tools for modern web application development with you.

Sometimes, people use the term vanilla JavaScript to refer to using plain JavaScript without any additional libraries, such as jQuery, Lodash, and many more. That means that you write your code with only the APIs that the JavaScript language itself provides.

In this book, we will create a modern web application called TaskAgile, which is a Trello-like application for task management. Let's first get an overview of the technologies that we will use to build it.

For the frontend, we will use Vue.js 2 as our frontend application framework, Bootstrap 4 as the UI framework, and we will write our frontend in ES6, also known as ECMAScript 2015, or ES 2015, and then use Babel to compile it into ES5 code. We will use ESLint to check our JS code to make sure it follows all the rules we defined and use Flow (https://flow.org) for static type checking. We will use Jest to write our frontend unit testing's and use Nightwatch.js to run our end-to-end test cases. We will use webpack 4 to bundle all the dependencies and use npm to take care of the package management.

For the backend, we will use Spring Boot 2 to create a Spring 5 application. And we will use Hibernate 5 as our object-relational mapping (ORM) framework, and MySQL as our database. We will use Spring Security for authentication and authorization, and we will implement a real-time-update feature with Spring WebSocket. We will use Spring AMPQ for asynchronously processing background tasks and Spring Session for server-side session management.

Now, before we introduce Vue.js 2 and Spring 5, for readers who are not familiar with JavaScript, let's learn the basics of it, starting with the part that Java developers would easily get confused with. 

You have been reading a chapter from
Building Applications with Spring 5 and Vue.js 2
Published in: Oct 2018
Publisher: Packt
ISBN-13: 9781788836968
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image