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
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Enterprise Application Development with Ext JS and Spring
Enterprise Application Development with Ext JS and Spring

Enterprise Application Development with Ext JS and Spring: Designed for intermediate developers, this superb tutorial will lead you step by step through the process of developing enterprise web applications combining two leading-edge frameworks. Take a big leap forward in easy stages.

eBook
€22.99 €32.99
Paperback
€41.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Enterprise Application Development with Ext JS and Spring

Chapter 2. The Task Time Tracker Database

This chapter defines the Task Time Tracker (3T) database design and configures NetBeans as a client of MySQL server.

The 3T application will be used to keep track of the time spent on different tasks for different company projects. The main entities are:

  • Company: This is the entity that owns zero or more projects. A company is independent and can exist in its own right (it has no foreign keys).
  • Project: This represents a grouping of tasks. Each project belongs to exactly one company and may contain zero or more tasks.
  • Tasks: These represent activities that may be undertaken for a project. A task belongs to exactly one project.
  • Users: They are participants who undertake tasks. Users can assign time spent to different tasks.
  • Task log: This is a record of the time spent by a user on a task. The time spent is stored in minutes.

These entity definitions result in a very simple database design:

The Task Time Tracker Database

We will prefix all of our 3T tables with ttt_. Large enterprise...

Connecting NetBeans with MySQL

Click on the Services tab in the NetBeans IDE, and navigate to Databases | Drivers. You will see that NetBeans comes with several different database drivers:

Connecting NetBeans with MySQL

Right-click on the Databases node, and click on Register MySQL Server…as shown in the following screenshot:

Connecting NetBeans with MySQL

For Windows users, this will open a dialog box with default settings. Enter the admin password used when installing MySQL server in the previous chapter, and check the Remember Password option:

Connecting NetBeans with MySQL

Mac users will see a different window prior to setting the connection properties. Select the MySQL driver before clicking on the Next button:

Connecting NetBeans with MySQL

This will then allow you to specify the required database connection details:

Connecting NetBeans with MySQL

When finished with these tasks, you will see MySQL Server listed in the Databases node. Right-click on the server, and select Connect to connect to the server (if not already connected):

Connecting NetBeans with MySQL

This will connect NetBeans to MySQL server and list the available databases. Right-click on the server...

The 3T database

The following SQL statements define the MySQL tables used in 3T. It is possible to use any database, and MySQL-specific code is highlighted to identify differences with ANSI SQL.

The company table

A company has projects for which we need to keep track of the time spent on different tasks. The company is, hence, the first table that needs to be defined. It is a very simple structure:

create table ttt_company(
  id_company  int unsigned not null auto_increment,
  company_name varchar(200) not null,
  primary key(id_company)
);

The auto_increment keyword is used by MySQL to identify a number column that should automatically be incremental (the default rate of increment is by one number) based on the current highest value in the column. This is used to generate the id_company primary key values. Let's add some company data:

insert into ttt_company(company_name) values ('PACKT Publishing');
insert into ttt_company(company_name) values ('Gieman It Solutions&apos...

Enterprise options for the 3T database

The table and column definitions provided previously are the simplest required for our 3T project. There are, however, several potential options that could be added to enhance the structure for enterprise use.

Password encryption

Enterprise applications would require that the password field be encrypted for security purposes using a unidirectional algorithm. Passwords should never be stored in plain text, and it should never be possible to view the password in the database (as we can currently do). It is beyond the scope of this book to cover password security strategies, but a very good explanation of the core principles can be found at http://www.jasypt.org/howtoencryptuserpasswords.html.

MySQL provides a number of password encryption functions that could be used for this purpose. We suggest you browse the documentation at https://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html to understand the different options available.

LDAP integration...

Summary

This chapter has defined a database structure that will be used to build the 3T application. We have connected to the MySQL server and executed a series of SQL statements to create and populate a set of tables. Each table uses autoincrement columns to allow MySQL to automatically manage and generate primary keys. Although the table structures are not complex, we have also identified possible enhancements that could be appropriate for enterprise use.

In Chapter 3, Reverse Engineering the Domain Layer with JPA, we will start our Java journey by reverse engineering our database to create a set of Java Persistence API (JPA) entities. Our JPA domain layer will become the data heart of our 3T application.

Left arrow icon Right arrow icon

Key benefits

  • Embark on the exciting journey through the entire enterprise web application development lifecycle
  • Leverage key Spring Framework concepts to deliver comprehensive and concise Java code
  • Build a real world Ext JS web application that interacts with dynamic database driven data

Description

Spring and Ext JS are cutting edge frameworks that allow us to build high performance web applications for modern devices, that are now consuming data at a faster rate than ever before. It is the appropriate time for you to understand how to best leverage these technologies when architecting, designing, and developing large scale web development projects. This practical guide condenses an approach to web development that was gained from real world projects, and outlines a simple, practical approach to developing high performance, and enterprise grade web applications. Starting with configuring Java, NetBeans, and MySQL to prepare your development environment, you will then learn how to connect your NetBeans IDE to the MySQL database server. We will then explore the Task Time Tracker (3T) project database structure and populate these tables with test data. Following on from this, we will examine core JPA concepts after reverse engineering the domain layer with NetBeans. Leveraging the Data Access Object design pattern, you will learn how to build the Java DAO implementation layer assisted by generics in base classes, followed by a Data Transfer Object enabled service layer to encapsulate the business logic of your 3T application. The final chapters that focus on Java explore how to implement the request handling layer using Spring annotated controllers, and deploy the 3T application to the GlassFish server. We will then configure the Ext JS 4 development environment and introduce key Ext JS 4 concepts, including MVC and practical design conventions. Covering a variety of important Ext JS 4 strategies and concepts, you will be fully-equipped to implement a variety of different user interfaces using the Ext JS MVC design pattern. Your journey ends by exploring the production build and deployment process using Maven, Sencha Cmd and GlassFish.

Who is this book for?

If you are an intermediate developer with a good understanding of Java, JavaScript and web development concepts, this book is ideal for you. Basic Ext JS development experience, including an understanding of the framework APIs is needed by those of you who are interested in this book. Regardless of your experience and background, the practical examples provided in this book are written in a way that thoroughly covers each concept before moving on to the next chapter.

What you will learn

  • Set up the key components of an enterprise development environment
  • Get to grips with practical database design strategies using MySQL
  • Practice JPA concepts and database reverse engineering using NetBeans
  • Access data using the DAO design pattern and Spring
  • Implement practical testing strategies using Maven and JUnit
  • Build a comprehensive service layer to encapsulate business logic
  • Leverage the best of Spring Web controllers for enterprise use
  • Implement a dynamic Ext JS user interface using Sencha MVC
  • Understand and control the Maven build process
  • Configure and deploy to a production GlassFish environment

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Dec 20, 2013
Length: 446 pages
Edition : 1st
Language : English
ISBN-13 : 9781783285464
Vendor :
Pivotal
Category :
Languages :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Dec 20, 2013
Length: 446 pages
Edition : 1st
Language : English
ISBN-13 : 9781783285464
Vendor :
Pivotal
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 112.97
Enterprise Application Development with Ext JS and Spring
€41.99
Spring Security 3.x Cookbook
€41.99
Ext JS Data-driven Application Design
€28.99
Total 112.97 Stars icon

Table of Contents

15 Chapters
1. Preparing Your Development Environment Chevron down icon Chevron up icon
2. The Task Time Tracker Database Chevron down icon Chevron up icon
3. Reverse Engineering the Domain Layer with JPA Chevron down icon Chevron up icon
4. Data Access Made Easy Chevron down icon Chevron up icon
5. Testing the DAO Layer with Spring and JUnit Chevron down icon Chevron up icon
6. Back to Business – The Service Layer Chevron down icon Chevron up icon
7. The Web Request Handling Layer Chevron down icon Chevron up icon
8. Running 3T on GlassFish Chevron down icon Chevron up icon
9. Getting Started with Ext JS 4 Chevron down icon Chevron up icon
10. Logging On and Maintaining Users Chevron down icon Chevron up icon
11. Building the Task Log User Interface Chevron down icon Chevron up icon
12. 3T Administration Made Easy Chevron down icon Chevron up icon
13. Moving Your Application to Production Chevron down icon Chevron up icon
A. Introducing Spring Data JPA Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1
(10 Ratings)
5 star 50%
4 star 30%
3 star 10%
2 star 0%
1 star 10%
Filter icon Filter
Top Reviews

Filter reviews by




Mario Ivan Jiménez Guia Feb 19, 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Buen producto
Amazon Verified review Amazon
milestonebass Feb 26, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I used this book to migrate a legacy ExtJS3 project to use the latest technologies and standards as set out in the book. I had intermediate knowledge of ExtJS3 and a basic knowledge of most of the other technologies and found the book very easy to follow. The thing I like most about this book is how it guides you through the process, start to finish. I found some books take you through development without many check and balances along the way, and as a result when you run into problems it’s hard to figure out where things went wrong. I had no such problems here and when I did run into problems they were easy enough to fix due to the way the book is written.To get your head fully around all the technologies and condense what you would need to develop a web application would mean you wouldn’t have a running application until next year! The book tells you only what you need to know to get a product up and running and gives references if you want to investigate/learn any further.The system I migrated had extensive use of EXT tree components and I was surprised with the depth in which they were covered in the book. I was able to leverage a lot of the structures and standards for use in my own project. It also demystified the whole Sencha Command process for me, which I had trouble with in the past.I would highly recommend this book for any developer looking to get web applications up and running quickly and to the latest standard. It is an excellent tool to learn and also end up with a great finished product!
Amazon Verified review Amazon
Marco Antonio Apr 11, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
It is a excellent book for developers with an intermediate level and/or advanced, whom wish to see the combinaion of Spring and Ext-JS current versions.Describes the development cycle of an application from start to finish in all parts describing the different tools and / or components that each requires (as Maven, JPA, unit test, etc), an easy way to track thanks to the good images that are displayed and the code segment in each chapter.Whether the grounds for Spring framework are known, the book is easy to folllow, as it explains is a timely manner which is performed at each step. It also has the necessary references to access information about technologies used to develop the sample aplicación.Also use features of Java 7 as the JSON API for handling data in the application.I highly recommend it.
Amazon Verified review Amazon
Philip Arad Mar 06, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Developing an up to date online application? If so, you have to make the right choices for the Web frameworks you are going to use, both for your Server and your client. Nowadays, Sencha Ext JS JavaScript framework is the most suitable package for your client, and the Spring Framework is the best choice for your server. Combining these two powerful frameworks together will give you the best results you need to achieve.Sencha Ext JS brings cross-browser high-performance UI widgets and rich data management libraries to the app development, enables developers to use a model-view-controller (MVC) architecture, and delivers the most advanced charting and graphing capabilities of any JavaScript framework.The Spring Framework is an open source application framework and inversion of control container for the Java platform. It helps development teams to build simple, portable, fast and flexible JVM-based systems and applications.For best using these frameworks, I recommend you to read the book from 'Packt Publishing': ' Enterprise Application Development with Ext JS and Spring ' (see:[...]).The book is a very useful hands-on practical guide for both intermediate and expert developers. It condenses an approach to web development that was gained from real world projects, and outlines a simple, practical approach to developing high performance, and enterprise grade web applications.The book starts with configuring Java, NetBeans, and MySQL to prepare a development environment, connect the NetBeans IDE to the MySQL database server, and populate the tables with data.Next, it examines core JPA concepts after reverse engineering the domain layer with NetBeans, teach you how to build the Java DAO implementation layer assisted by generics, build a Data Transfer Object service layer to encapsulate the business logic of the Web application.The final chapters show how to implement the request handling layer using Spring annotated controllers, and deploy the application to the GlassFish server. It elaborates on how to configure the Ext JS 4 development environment and introduce key Ext JS 4 concepts, including MVC and practical design conventions.The book describes in detail each subject with extensive examples that you can use and adapt for your own purposes.By using all the features introduced in this book, you can use these great platforms to build robust applications and to address correctly the problems you encounter when developing your applications and web sites.
Amazon Verified review Amazon
Maheswar Vayugandla Mar 16, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I started looking for a book on Spring framework and Ext JS after we decided to go with that combination for our new project. Much to my surprise, I found only this one book. After reading the book, I felt like this book is enough for having a great start to our project. The content is organized very well and the quality of presentation is very good. It would be a good bookfor any developer. Even if you are new to these technologies, an introduction and useful references to additional resources are provided on all the technologies (Maven, JPA, JUnit, Logback etc.,) used in the sample project and to improve the understanding and follow along well with the content being covered.I found the book and included project example easy to follow. Chapters build on one another throughout the book so that the reader is guided to build fully-fledged basic application using Spring and Ext JS from ground up. No ambiguity and the provided code works perfectly without any errors. Author also mentioned several useful points and recommendations in view of real-world enterprise applications based on his own experience.Overall, it is an excellent book that explains how Spring works and how to apply it in an application. Also, the book explains well how Ext JS 4 takes care of the MVC paradigm on the client side and shows how to use Java API for JSON (new feature of Java EE7). Shows good use of Java generics for implementing common functionality. EclipseLink is used to implement JPA,Maven is used as build tool, JUnit for testing and Logback for logging.This book provides a way to get a feel for what this excellent combination of Spring and Ext JS can do for your project. I would definitely recommend this book to others who want to experience Spring framework, Ext JS and JPA.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.