
In this video, we set the stage for the entire course by looking at what is ahead
In this video, we learn what the definition of Java EE is
In this video, we take a look at what an app server is and how it relates to Java EE
In this video, we take a brief look at different Java EE app servers out there
In this video, we take a look at what the definition of a Java Specification Request is.
In this video, we take a brief tour of the Java Community Process website and take a look at some Java Specification Requests
In this video, we take a brief look at the JAX-RS JSR spec doc
In this video, we take a look at what is meant by Reference Implementation in relation to a JSR
In this video, we take a look at what Jakarta EE is and how it relates to Java EE
In this video, we take a look at Java EE and the Spring Framework
This video summarizes what we've done so far
This video introduces the various software we need to setup to peruse this course
This video takes yout through installing Java 8 on a windows system. Resources are provided for doing same on other platforms
This video takes you through installing NetBeans IDE on Windows with resources provided for installing on other platforms
Alternate between IntelliJ for display and NetBeans for running code in this course, with Eclipse optional, and focus on understanding the code and concepts rather than the IDE.
This video takes you through installing the GIT SCM on Windows with resources on how to install on other platforms
This video takes you through installing the insomnia REST client on Windows
This video shows how to install Apache Maven on Windows with resources on how to install on other platforms
In this video, we download the application server we will be using in this course- Payara Server Micro
In this video, we create the traditional Hello World with Java EE 8
In this video, we set the stage for getting your feet wet with Java EE 8
In this video, we create the project to be used in the getting your feet wet with Java EE 8
In this video, we create a POJO that is our Todo object
In this video, we transform the Todo POJO into a JPA Entity
In this video, we create a lifecycle callback for our Todo Entity
In this video, we create the Persistence Unit for our Todo Entity
In this video, we create a CDI service that will manager our TODO CRUD
In this video, we create the REST endpoints to expose our Todos
In this video, we take an overview of what we've done so far
Let's package and deploy our Todo app on the Payara Micro server
Let's test our Todo REST endpoints
Let's test our Todo REST endpoints cont'd
Let's validate our Todo entity using the Bean Validation APi
Let's create a resource method to mark a Todo object as completed
Let's package and deploy our Todo app on the Payara Micro server
In this video, we test the validations we put on our Todo entity
In this video, we build a Java EE uber jar similar to Spring boot
An overview of what we did in the getting your feet wet section of the course
Explore the context and dependency injection through the CDI API, the glue that connects Java EE components, enabling decoupled, maintainable applications with data storage and restful web services exposure.
An introduction to the Contexts and Dependency Injection API on Java EE and setting the stage for this section of the course
In this video, we discuss the concept of dependency injection and how it relates to inversion of control and Java EE
In this video, we discuss the CDI feature of typesafe dependency resolution
In this video, we discuss the CDI feature of lifecyle contexts
In this video, we talk about the CDI feature of interceptors
In this video, we talk about the powerful CDI events feature
In this video,, we discuss the CDI service provider interface
In this video, we discuss what bean discovery mode is in the context of CDI on Java EE
In this video, we discuss the CDI container and its role in dependency injection on Java EE
In this video, we discuss the concept of beans and contextual instances in reference to dependency injection on Java EE
In this video, we take a look at field injection point in CDI
In this lecture, we take a look at constructor injection points in CDI
This lecture talks about method injection point in CDI
In this lecture, we talk about CDI lifecycle callbacks and take a look at the Post Construct callback
In this lecture, we talk about CDI lifecycle callbacks and take a look at the Pre Destroy callback
In this video, we run our project code to see CDI lifecycle callbacks live in action
In this video, we take a look at the concept of managed beans and their types as used in the Java EE CDI API
In this lecture, we introduce the concept of qualifiers in CDI
In this lecture, we talk about the CDI qualifiers
In this lecture, we talk about the CDI qualifiers
In this lecture, we talk about the CDI qualifiers
In this video, we package and run our project code to see our CDI qualifiers in action
In this video, we package and run our project code to see our CDI qualifiers in action
In this lecture, we take a look at what stereotypes are in Java EE CDI
In this lecture, we introduce the concept of CDI scopes and contexts
In this lecture, we take a look at the Dependent Scope CDI Context
In this lecture, we talk the Request Scope context of the CDI API
In this lecture, we talk about the CDI Session Scope context
In this video, we talk about the Application and Conversation scopes available in CDI
In this video, we recap what we've done so far and also what to expect when we deploy our application
In this video, we package and deploy our project code to see the Java EE CDI scopes and contexts in action
In this video, we recap what we've learned so far about CDI Scopes and Contexts
In this lecture, we introduce the concept of CDI Producers
In this lecture, we talk about scoping returned beans from CDI producers
In this lecture, we talk about CDI field producers
In this video, we learn how to qualify the returned type from a CDI producer method or field
In this video, we package and deploy our project code to see the Java EE CDI Producers API construct in action
In this lecture, we discuss the concept of disposer methods in CDI producers
In this video, we recap what we've learned about CDI Producers
In this lecture, we start with a discussion on the concept of interceptors in CDI
In this lecture, we continue with the concept of CDI interceptors and take a look at the interceptor binding code
In this lecture, we see how to activate CDI interceptors with @Priority annotation
In this lecture, we package and deploy our application on Payara micro to see CDI interceptors in action. We also recap what we've learned so far
In this lecture, we introduce the concept of Events in the CDI API
In this lecture, we visit the CDI Events Interface API Docs page
In this lecture, we talk about injecting the Event interface and passing in the payload
In this lecture, we look the events in their simplest forms
In this lecture, we learn how to use the CDI qualify mechanism to qualify events
In this lecture, we talk about conditional CDI observers
In this lecture, we take a look at non-blocking, asynchronous CDI Events
In this lecture, we learn how to prioritise the order in which event observer methods are invoked using Priority
In this video, we package and run our code so far to see CDI events in action
In this lecture we recap all that we have covered about the Java EE Contexts and Dependency Injection API
In this video, we take an overview of the Java Persistence API and what we're going to cover in this section of the course
In this video, we set clear expectations as to what is section of the course is and isn't
In this video, we introduce the concept of ORM manifesto and take a look at the first requirement
In this lecture, we discuss the ORM manifesto tenet of Convenience, not Ignorance
In this lecture, we discuss the ORM manifesto tenet of Unobtrusive, not Transparent
In this lecture, we discuss the ORM manifesto tenet of Legacy Data, New Objects
In this lecture, we discuss the ORM manifesto tenet of Just Enough, Not Too Much
In this video, we discuss the ORM manifesto tenet of Local, but Mobile
This lecture discusses the ORM manifesto tenet of Standard API, Pluggable Implementation
This lecture takes a look at the Java Persistence API in the context of the ORM manifesto tenets discussed above
In this lecture, we setup the Java DB in NetBeans, the default Java Database that we will be using in this section of course
In this video, we download and setup the Payara Server in our NetBeans IDE
In this lecture, we introduce the concept of JPA Entity classes as the most atomic component of a JPA application
In this lecture, we talk about customizing the database table to which a JPA Entity is mapped
In this lecture, we discuss the concept of mapping common fields across entities using super classes and inheritance
In this lecture, we see how to override a field in a super class that an entity extends
In this lecture, we discuss mapping simple Java types and the use of the @Basic JPA annotation
In this lecture, we talk about customizing database columns using the @Column annotation
In this video, talk about non-persistent fields using the @Transient annotation
In this lecture, we talk about entity state access type using Field Access type
In this lecture, we talk about entity state access type using Property Access type
In this lecture, we talk about using both Field and Property Access types to access state in the same entity class
In this lecture, we start discussing types that can be mapped to database columns, and begin with Enumerated types
In this video, we talk about how to map enumerated types in JPA using the two approaches of ordinal and string
This lecture talks about how to map large objects to columns in a database
In this lecture, we take a look at the JPA concepts of Lazy and Eager fetching of entity state
In this lecture, we see how to map the Java 8 time package types as persistent fields
In this video, we talk about how to map embeddable objects in entity classes
Let's recap what we've done so far
Let's deploy our sample code to the server and see our database tables created for our entity classes
In this lecture, we introduce the concept of primary key mapping and generation
In this video, we talk about primary key generation using the Auto generation strategy
In this lecture, we discuss primary key generation using the Identity strategy
In this lecture, we take a look at primary key generation using the Sequence generation strategy
In this lecture, we talk about using the Table primary key generation strategy
We continue with our discussion of Table primary key generation strategy in this lecture
Let's summarize what we have learned about primary key generation so far
An introduction to the concept entity relationship mapping
In this lecture, we talk about the concept of Roles in entity relationship mapping
In this lecture, we talk about the concept of Directionality in entity relationship mapping
In this lecture, we talk about the concept of Cardinality in entity relationship mapping
In this lecture, we talk about the concept of Ordinality in entity relationship mapping
In this video, we start our discussion of entity relationship mapping with in introduction
In this lecture, we talk about single valued relationships and the kind of entity mappings that fall under this category of relationship
In this lecture, we discuss the Many to One entity relationship mapping
In this lecture, we discuss the One to One entity relationship mapping
In this lecture, we talk about bidirectional One to One entity relationship mapping
In this lecture, we talk about collection valued relationships and the kind of entity mappings that fall under this category of relationship
In this video, we talk about the One to Many entity relationship mapping
In this video, we talk about the Many to Many entity relationship mapping
In this lecture, we take a look at join tables as a means to map many to many relationship
In this video, we discuss the concept of Fetch Modes and when to use which one
Let's run the sample code to see how the JPA provider maps the various entity relationships we've looked at to the database
In this lecture, we talk about mapping a collection of embeddable objects and how to customize the collection table
In this lecture, we talk about collection mapping of Strings and other simple Java types
In this lecture, we talk about persistable collections types and why to use interfaces to type your collections
In this video, we see how to order the contents of a persistable list that contains entities using entity fields
In this video, we see how to order the contents of a persistable list using order column in the database
In this lecture, we start discussing persisting Maps keyed by simple Java types
In this lecture, we take a look at customizing the mapping of Maps using Collection Tables
In this lecture, we use see how to use the Java enumerated type as the key in a persistable map
Let's run the sample code to see how the JPA provider maps persistable maps
In this lecture, we see how to key a persistable map by a basic type field from the entity value
In this lecture, we see how to key a persistable map by entity types with basic Java types as value
In this lecture, we see discuss why you wouldn't and should not key your persistable map by embeddable type.
In this video, we recap what we have covered so far
In this video, we start our discussion of Enterprise JavaBeans by looking at what they are
In this lecture, we discus the EJB feature of declarative metadata
In this video, we discuss the EJB feature of configuration by exception
In this video, we discuss the EJB feature of dependency management
In this video, we discuss the EJB feature of lifecyle management
In this video, we discuss the EJB feature of scalabiltity
In this video, we discuss the EJB feature of transactionality
In tihs video, we discuss the EJB feature of security
In tihs video, we discuss the EJB feature of portability
In this video, we discuss an over view of the architecture of EJBs
In this lecture, we take a look at the stateless session EJB
In this lecture, we take a look at the stateless session EJB
In this lecture, we discuss the stateful session EJB
In this lecture, we discuss the single EJB session bean
In this lecture, we discuss the lifecycle of the various EJB session beans
In this video, we briefly touch on message drive beans
In this lecture, we discuss what the EJB Container is and how it relates to session beans
In this lecture, we begin a series of discussions on transaction by looking at what they are
In this lecture, we discuss the concept of Atomicity, the first principle of an ACID transaction
In this lecture, we discuss the concept of Consistency, the second principle of an ACID transaction
In this lecture, we discuss the concept of Isolation, the third principle in an ACID transaction
In this lecture, we discuss the concept of Durability, the final principle in an ACID transaction
In this lecture, we summarize the ACID principles and see what is ahead
In this lecture, we take a look at what bean and container managed transactions are and why you would use one over the other
In this lecture, we talk about the various attributes that can be used to customize container managed transactions
In this lecture, we set out to start a discussion on persistence units and persistence contexts in the context of entity manager
In this lecture, we start our discussion of entity manager by defining what a persistence unit is
In this lecture, we take a look at what a persistence context is and how it relates to a persistence unit
In this lecture, we take a look at how to get access to a container managed entity manager using the Java EE CDI API construct
In this lecture, we look at how to persist (save) entities using the entity manager interface
In this lecture, we look at how to find an entity by its primary key using the find method of the entity manager interface
In this lecture, we look at the entity manager remove method
In this lecture, we talk about cascading operations to other entities
In this lecture, we talk about the delicate operation of remove in the context of cascades
In this lecture, we talk about entity detachment and what it means in terms of using detached entities
In this lecture, we talk about merging an entity back into a persistence context after it has be detached
In this lecture, we start looking at the elements of a persistence unit, starting with the name
In this lecture, we take a look at the transaction attribute of the persistence unit
In this lecture, we take a look at the persistence provider element of the persistence unit
In this lecture, we discuss the persistence unit element of datasource
This lecture talks about the persistence classes that can be included in a persistence unit
This lecture talks about the schema and script generation elements of a persistence unit
This video recaps what we have covered so far
An introduction to the Java Persistence Query Language
In this lecture, we see a simple JPQL select statement in action
In this lecture, we discuss the concept of named queries as they're used in the Java Persistence Query Language
In this lecture, we take a detailed look at the select clause and how entities are selected using it
In this lecture, we talk about aliasing of entity variables for the select clause of a JPQL
In this lecture, we see how to pass our named query to the entity manager interface for execution against the database
In this lecture, we start a discussion on JPQL path expressions, we what they are and how to use them
In this lectyure, we continue our discussion on JPQL path expressions
In this lecture, we take a look at result projection using combined JPQL path expressions
In this lecture, we see how to project a subset of results using the powerful concept of constructor expressions in JPQL
In this lecture, we start talking about the From clause in a JQPL query
In this lecture, we see how to use joins on Maps
In this lecture, we talk about the concept of fetch join in JPA and see what problem it's designed to solve
In this lecture, we start a discussion on the where clause of a JPQL query
In this lecture, we see how to pass query parameters in the where clause to the entity manager for execution
In this lecture, we discuss the between operator and how it can be used in conjunction with the where clause to filter data
In this lecture, we take a look at the LIKE operator support in JPQL and how to use it
In this lecture, we look at subqueries in the where clause and how to use them
In this lecture, we briefly discuss the getSingleResult method on the EntityManager interface and see its caveats
In this lecture, we look at the IN operator and how to use it
This lecture talks about the IS EMPTY operator available in JPQL and how to use it
In this lecture, we look at the JPQL Member OF operator and its use
In this lecture, we look at the JPQL ANY, ALL and SOME operator and how they are used
In this lecture, we take a look at the Order By JPQL construct used to order results to a custom sort order
In this lecture, we introduce aggregate functions support in JPQL
In this lecture, we look the JPQL aggregate function of SUM
In this lecture, we look the JPQL aggregate function of Average
In this lecture, we look the JPQL Count aggregate function
In this lecture, we look the JPQL Min and Max aggregate functions
In this lecture, we look at the JQPL Having aggregate function
In this lecture, we summarize what we've covered on JPQL and look at what is ahead
In this lecture, we take a cursory look at the JPA Criteria API and attempt to contrast it with the JQPL
In this lecture, we introduce validation within the context of JPA
In this lecture, we talk about how to use the Bean Validation API to set validation constraints on fields of our entity classes
In this lecture, we talk about how to use the Bean Validation API to set validation constraints on fields of our entity classes
In this lecture, we run through an number of Bean Validation constraints and see how we can use them in our application context
In this lecture, we start a discussion on entity lifecycle callbacks and look at the PrePersist lifecycle
In this lecture, we take a look at other entity lifecycle callbacks available
In this lecture, we introduce an alternative way of associating an entity with lifecyle callbacks through entity listeners
In this lecture, we see how to create entity listener classes and their lifecylce callbacks
In this lecture, we see how to associate entities with entity listener classes
In this lecture, we introduce JPA support for executing SQL directly on the underlying database in the form of native queries
In this lecture, we take a look at named native queries, an API construct for constructing named native SQL queries
In this lecture, we see how to create dynamic native queries and how to suppress compiler warnings
In this lecture, we introduce equals and hashcode method overriding and see why it's important to do so
In these lectures, we see one way to override the equals and hashcode methods of an entity and the considerations that go into doing so
In these lectures, we see one way to override the equals and hashcode methods of an entity and the considerations that go into doing so
In this lecture, we recap what what we've learned about JPA and see what is ahead
In this lecture, we introduce our standard REST client in the form Insomnia REST client
In this lecture, we start with discussing REST architecture constraints by looking at client-server constraint
In this lecture, we look at the REST architecture constraint of Statelessness
In this lecture, we look at the Cache REST architecture constraint
In this lecture, we look at the REST architecture constraint of Uniform Interface
In this lecture, we look at the REST architecture constraint of Layered Interface
In this lecture, we discover how to set the base resource path for our REST resources using the Application class and @Path annotation
In this video, we create the traditional hello world in JAX-RS
In this class, we see how to host a Java class at a specific REST resource path using the @Path annotation
In this lecture, we see how to host Java methods as REST resource methods that respond to various HTTP methods
In this lecture, we take a look at the HTTP GET method and how it is realized in JAX-RS
In this lecture, we take a look at the HTTP POST method and how it is realized in JAX-RS
In this lecture, we take a look at the HTTP PUT method and how it is realized in JAX-RS
In this lecture, we take a look at the HTTP DELETE method and how it is realized in JAX-RS
In this lecture, we start implementing what we've learned about JAX-RS in the Employee resource class by creating a skeleton GET methods
In this lecture, we use CDI to inject our QueryService into our Employee Resource to delegate querying to it
In this lecture, we start implementing what we've learned about JAX-RS in the Employee resource class by creating a skeleton POST method
In these lectures, we introduce the concept of content types and see why it's fundamental to the REST architecture
In these lectures, we introduce the concept of content types and see why it's fundamental to the REST architecture
in this lecture, we see how to set the content type a resource method returns using @Produces annotation
In this lecture, we run our sample code to see JAX-RS content type delcaration in action.
In this lecture, we see how to set the content type a resource method returns using @PRoduces at the class level
in this lecture, we see how to set the content type a resource method consumes using @Consumes annotation
In this lecture, we see how to delcare variables in a resource path and grab the values at runtime with @PathParams annotation
In this lecture, we see how to restrict the entries of a path variable
In this lecture, we learn how to set default values for path params using the @DefaultValue annotaiton
In this lecture, we discover how to get hold of query params using @QueryParams annotation
In this video, we recap what we've learned to this point about JAX-RS
In this lecture, we introduce the use of the Response Object by redesigning our EmployeeResource class
In this lecture, we see how to use the Response object to build custom responses to the clients of our JAX-RS resources
In this lecture, we introduce the @Context annotation and see what it is used for
In this lecture, we see how to inject and use the UriInfo interface to create uri to newly created resources
In this video, we run our sample code to see JAX-RS Response object in action
In this video, we recap what we've learned to this point about JAX-RS
In this lecture, we introduce exception mappers and see why we would need such a construct
In this lecture, we learn how to use JAX-RS exception mappers to map constraint violations exceptions to send meaningful info to the client
In this lecture, we run our sample code to see JAX-RS exception mappers live in action
In these lectures, we see how to consume HTML form fields directly in our resource methods using @FormParam JAX-RS injection
In these lectures, we see how to consume HTML form fields directly in our resource methods using @FormParam JAX-RS injection
In this lecture, we learn another way of consuming HTML form fields using MultivaluedMaps
In this lecture, we learn another way of consuming HTML form fields using @BeanParam annotation
In this lecture, we learn how to use the @HeaderParam annotation to grab specific header values from requests to resource methods
In this lecture, we take a look at some JAX-RS injection annotations that can be used to get certain request context information about resource methods
In this lecture, we learn about caching and how we can start using it in JAX-RS
In this lecture, we see how to implement caching in JAX-RS using the CacheControl and EntityTag classes
In this lecture, we introduce the concept of content negotiation
In this lecture, we learn how to implement client content negotiation via the @Produces annotation and the q value from the client
In this lecture, we see how to implement content negotiation via the HttpHeaders of a request
In this lecture, we see how to implemenet content negotiation via the Quality from Server (qs) directive
In this lecture, we learn one way of implementing file upload in our JAX-RS resource methods
In this lecture, we learn how to implement file download from JAX-RS resource methods
In this lecture, we learn how to use CDI @Produces to create Logger injection candidates
In this lecture, we learn how to set cookies on the client using the NewCookie class from the JAX-RS API
In this lecture, we set the foundations for exploration of the concept of Filters in JAX-RS
In this lecture, we learn how to create static response filters by implementing the ContainerResponseFilter interface
In this video, we run our sample code to test our static container response filter
In these lectures, we learn how to create dynamic container response filters that we can selectively apply to JAX-RS our resource methods
In these lectures, we learn how to create dynamic container response filters that we can selectively apply to JAX-RS our resource methods
In this video, we run our sample code to see dymanamic response filters in action
In this lecture, we learn how to implement a pre-matching container request filter for our JAX-RS resource methods
In this video we run our sample code to see the pre-matching container request filter we've created in action
In this lecture, we set the stage for implementing JWT security with JAX-RS container request filters
In this video, we take a brief look at what JWT is and the third party libraries we will be using to help implelent JWT authentication in our resource methods
In this video, we run our sample code to see our JWT secured resource in action
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In thse lectures, we take a detailed look at how to implement JWT based authentication in our JAX-RS resources using container request filters and third party libraries
In this lecture, we summarize what we've learned about authentication using JWT and filters
In these lectures, we learn how to implement async resources using JAX-RS AsyncResponse object and Completable Futures
In these lectures, we learn how to implement async resources using JAX-RS AsyncResponse object and Completable Futures
In this lecture, we see how to use the JSON-B API to customize the JSON that our JAX-RS resources consumes and produces
In this lecture, we learn how to create hypermedia JAX-RS resources using the JSON-P API
In this video, we run our sample code to see JSON-B and JSON-P JAX-RS integration in action
In this lecture, we learn about the JAX-RS client API and how to use it to make HTTP requests to other resources synchronously
In this lecture, we learn about the JAX-RS client API and how to use it to make HTTP requests to other resources asynchronously
In this video, we run our sample code to see the JAX-RS client API make an HTTP request to an external resource
In this lecture, we introduce Server Sent Events
In this lecture, we learn SSE can be implemented using the SSE support in the latest JAX-RS API
In this video, we run our sample code to see SSE in JAX-RS in action and also summarize what we've learned about implementing SSE with JAX-RS
In this lecture, we learn how easy it is deploying a Java EE app to a Payara Server in a docker container
In this lecture, we learn how to develop a websocket endpoint using annotations from the Java EE Websocket API
In this lecture, we learn how to develop a websocket endpoint using the Java EE Websocket programmatic API
In this lecture, we learn how to create a templated websocket URI and how to grab template values at runtime
In this lecture, we learn how to use the Encoders and Decoders API from Websockets API to encode and decode data for websocket communication
In this lecture, we summarize what we've learned about websocket development using Java EE
In this video, we run our sample code and take our websockets endpoints for a spin
In this lecture, we introduce testing in Java EE and discuss why integration testing is key to Java EE testing
In this leccture, we introduce Arquillian, the de-facto Java EE integration testing framework
In this video, we take a look at the dependencies needed to have Arquillian and JUnit integrated into our sample code
In this lecture, we setup our integration tests to fail and see what happens
In this lecture, we setup our integration tests again to test if all our integrations are working properly
In this video, we go over a few Java EE resources you can peruse to advance your understanding of the Java EE platform
This video introduces the capstone project and lays the foundation for what's to come in the next several lectures
This lecture introduces testing with the Arquillian Testing Framework setup in the code
This lecture introduces testing with the Arquillian Testing Framework setup in the code
This lecture, we run our Arqullian testing setup to make sure everything works as expected.
This lecture, we run our Arqullian testing setup to make sure everything works as expected.
In this lecture, start by modelling the Todo User using the JPA API
In this lecture, we model the basic attributes of the Todo User
In this lecture, we add validation constraints to the Todo User entity
In this lecture, we add querying to the Todo User entity
In this lecture, we add querying to the Todo Entity Class
In this lecture, we start putting together the Todo Service EJB class
In this class, we start implementing the save TodoUser method
In this lecture, we take a look at the SecurityUtil security service class
In this lecture, we continue to implement the save TodoUser method
In this lecture, we use the Arquillian framework to test our Todo service save TodoUser method
In this lecture, we see how to prevent double signups of a given email
In this lecture, we implement the FindTodoById method using the named query
In this lecture, we implement the GetTodoList method using the named query
In this lecture, we implement the GetTodoByTask method using named query
In this lecture, we begin implementing stateless security with JWT by creating the Authz security annotation and the filter impl
In this lecture, we add the JWT library dependency to our project object model (pom.xml) file
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we continue implementing stateless security using the ContainerRequestFilter implementation
In this lecture, we recap our stateless JWT security implementation
In this lecture, we implement the save user REST resource method
In this lecture, we refactor the old TodoRest resource class
In this video, we run take our Todo App for a spin and fix any bugs we discover
This lecture presents a primer on one way of packaging a Java EE app as a docker image
In this lecture, we see a simple way of packaging our Java EE app as a docker image and run it as a docker container.
Are you ready to take your Java skills to the next level and finally understand Java Enterprise Edition (JEE) ?
The fact is, that Java Enterprise Edition is in use by companies around the world, including many of the Fortune 500 companies. Because of this there a lots of JEE opportunities and as a JEE developer you will be among the highest paid of all Java developers.
This course will get you up to speed quickly and give you the real world skills you need to add "Java Enterprise Edition 8 developer" to your résumé fast!
What's this course about?
Java Enterprise edition has changed and evolved a lot over the years. This course is about teaching you what JEE is, and how to use it and become a productive JEE developer.
The course focuses on JEE 8 (also known as Jakarta EE).
By taking this course you will avoid learning about obsolete versions of Java EE, and learn best practices along the way.
The course starts at a theoretical level helping you to understand the underpinnings of JEE 8, including understanding the JEE specifications and implementations (which is a very important for a Java Enterprise Edition developer to understand).
But then you will dive into understanding JEE 8 at a developmental level with practical hands-on development. Ultimately, this is a hands-on course, so you will be doing a lot of coding as you learn how to use JEE 8.
Your instructor in this course is Luqman Saeed, an experienced software developer who has vast knowledge in a number of programming languages including Python, C# and of course Java. He also has extensive Java Enterprise Edition (JEE) experience and has created a great course to pass on his skills with JEE to you.
Some of the highest paid jobs in the industry for Java developers are available to those people who know and understand JEE, so here is your chance to dramatically increase your salary and future career opportunitues.
What topics are covered in this course?
General JEE concepts
Contexts and Dependency Injection (CDI 2.0)
Java Persistence API (JPA 2.2)
Java API for Restful Web Services (JAX-RS 2.1)
JWT (Json Web Token)
Java API for Web Sockets
Testing with Arquillian Framework and JUnit.
And a lot more.
Why take this course?
This is the most comprehensive Java EE/Jakarta EE course on the internet with 340+ HD video lectures!
Learn how to write full working Java EE code that is portable across various JEE vendors.
The course has a pure standard Java EE API usage focus on app portability across vendors. This is an important skill to master.
In-depth coverage of database persistence with JPA.
This is the only online course that teaches the Contexts and Dependency Injection API in detail!
In-depth coverage of developing REST web services using standards based JAX-RS.
Course constantly updated to reflect latest update with Jakarta EE.
What skills do you need to enrol?
This course assumes you have a basic understanding of the Java programming language. If you have taken a Java course on Udemy such as Tim Buchalka Java Masterclass you will be more than ready for this course.
Ready to start?
If you're ready to start the Java Enterprise Edition 8 for Beginners Course, then click the enrol button to get started.
Feel free to try some of the free video previews on this page as well.