Java with Maven

Start your development journey with Java
and become a certified professional

5 Days / 40 Hours / 32 Modules
+ 3 month coaching + 1 year eLearning access

Java with Maven

Start your data science
journey with Java
and power up your
career today!

5 Days / 40 Hours / 32 Modules
+ 3 month coaching + 1 year eLearning access

Learn the fundamentals of Java programming and kickstart your career in one of the most in-demand professions of today.

This course includes the fundamental Java programming techniques such as object-oriented programming, operators, and the fundamentals of Maven.
Participants will also be exposed to Maven and how to implement it to their Java projects. For this course, participants will be using Eclipse as their IDE
By the end of this course, participants will be able to describe object-oriented concepts, object-oriented programming (OOP) concepts, and Java platforms and technologies.
Key Learning Outcomes

Upon completion, participants should be able to demonstrate each of the following outcome:-

  • Master the fundamentals of Java to steer yourself in the right path of your career
  • Learn the core Java skills needed to apply for your Java projects
  • Acquire essential java basics for transitioning into various frameworks along your career.
  • Learn what Maven is and Why it is so popular
  • Master all the core concepts of Maven
  • Deploy your Java project to Maven Central or other Maven repositories
  • Use Apache Maven to build, test, package, and deploy your Java application
  • Leverage Apache Maven's Convention over Configuration.
Subscribe to our newsletter – and be first to get all the updates on our upcoming programmes and industry insights.
We don’t share your information or spam you. Unsubscribe anytime.

    Course Modules Covered in the Java with Maven program
    Day 1 - Programming Concepts, Writing Java Programs, Data Types, Operators, Statements

    Programming Concepts

    1. What is Programming
    2. Components of a Programming Language
    3. Programming Paradigms
    4. What is Java
    5. The Object-Oriented Paradigm and Java

    Writing Java Programs

    1. What is a Java Program
    2. Writing the Source Code
    3. Compiling the Source Code
    4. Running the Compiled Code
    5. Installing and configuring Eclipse IDE
    6. Downloading and Installing Maven
    7. Testing Maven Installation

    Data Types

    1. What is a Data Types
    2. What is an Identifier
    3. Data Types in Java
    4. Primitive Data Types in Java
    5. Special Floating-Point Numbers
    6. Rounding Modes
    7. Number Objects
    8. String Objects
    9. Format data for output


    1. What is an Operator
    2. Assignment Operator
    3. Arithmetic Operators
    4. String Concatenation Operator
    5. Relational Operators
    6. Boolean Logical Operators


    1. What is a Statement and Type of Statements
    2. A Block Statement
    3. The if-else Statement
    4. The switch Statement
    5. Strings in Switch
    6. The for Statement
    7. The for-each Statement
    8. The while Statement
    9. The do-while Statement
    10. The break Statement
    11. The continue Statement
    12. Diamond Syntax
    Day 2 - Classes and Objects, The Object and Objects Classes, Java Package, Wrapper Classes, Exception Handling, Assertions

    Classes and Objects

    1. What is a Class
    2. Declaring Fields in a Class
    3. Creating Instances of a Class
    4. The null Reference Type
    5. Using Dot Notation to Access Fields of a Class
    6. Default Initialization of Fields
    7. Access Level Modifiers for a Class
    8. Import Declaration
    9. Declaring Methods of a Class
    10. Local Variables
    11. Instance Method and Class Method
    12. Invoking a Method
    13. Access Level for Class Members

    The Object and Objects Classes

    1. The Object Class
    2. What is the Class of an Object
    3. Computing Hash Code of an Object
    4. Comparing Objects for Equality
    5. String Representation of an Object
    6. Cloning Object
    7. Finalizing an Object
    8. Immutable Objects
    9. The Objects Class

    Java Package

    1. Package declaration
    2. Sub-Packages in Java
    3. Naming Convention
    4. Importing Java Package
    5. Access Modifier
    6. Java Archive (JAR) Files

    Wrapper Classes

    1. Wrapper Classes
    2. Autoboxing and Unboxing
    3. Beware of Null Values
    4. Overloaded Methods
    5. Comparison Operators
    6. Collections

    Exception Handling

    1. What is an Exception
    2. Using a try-catch Block
    3. Exception Class Hierarchy
    4. Arranging Multiple catch Blocks
    5. Throwing an Exception
    6. Creating an Exception Class
    7. The finally Block
    8. The try-with-resources Block
    9. Multi-Catch Exceptions
    10. Re-throwing Exceptions
    11. Try with Resources
    12. AutoCloseable Interface


    1. What is an Assertions
    2. Testing Assertions
    3. Enabling / Disabling Assertions
    4. Using Assertions
    5. Checking for Assertion Status
    Day 3 - Strings, Dates and Times, Formatting Data, Arrays, Inheritance, Interfaces, Core Collection Classes


    1. What is a String
    2. String Literals
    3. Creating String Objects
    4. String Operators
    5. Comparing Two Strings
    6. StringBuilder and StringBuffer

    Dates and Times

    1. The Date-Time API
    2. Calendar Systems
    3. Clocks and Period Packages
    4. Period between Two Dates and Times
    5. Partials
    6. Formatting Dates and Times
    7. Parsing Dates and Times

    Formatting Data

    1. Wrapper Classes
    2. Autoboxing and Unboxing
    3. Beware of Null Values
    4. Overloaded Methods
    5. Comparison Operators


    1. What is an Array
    2. Arrays are Objects
    3. Accessing Array Elements
    4. Length of an Array
    5. Multi-Dimensional Arrays
    6. Enhanced for Loop for Arrays
    7. Runtime Array Bounds Check


    1. What is Inheritance
    2. The instanceof Operator
    3. Binding
    4. Method Overriding and Method Overloading
    5. Method Hiding and Field Hiding
    6. Disabling Inheritance


    1. What is an Interface
    2. Implementing an Interface
    3. Implementing Multiple Interfaces
    4. Interface Inheritance
    5. The instanceof Operator
    6. Marker Interfaces
    7. Functional Interfaces
    8. Polymorphism – One Object, May Views
    9. Dynamic Binding and Interfaces

    Core Collection Classes

    1. The Collections Framework
    2. The Set Interface
    3. Set Implementation Classes
    4. The List Interface
    5. List Implementation Classes
    6. The Map Interface
    7. Map Implementation Classes
    Day 4 - Pluggable Annotation Processing API, Java API for XML Based Web Services – 2.0, JDBC 4.0, Lambda Expressions, Java Stream API for Bulk Data Operations on Collections, Java Date / Time API, Concurrency API improvements, Reflection

    Pluggable Annotation Processing API

    1. Common Annotations and Role Based Annotations
    2. @Generated
    3. @Resource
    4. @Resources
    5. @PostConstruct
    6. @PreDestroy
    7. @DeclareRoles
    8. @RolesAllowed
    9. @PermitAll
    10. @DenyAll

    Java API for XML Based Web Services – 2.0

    1. JAXB 2.0
    2. Web Services Metadata
    3. Streaming API for XML
    4. XML Digital Signature
    5. Java Class File Specification Update
    6. Java Compiler API

    JDBC 4.0

    1. Setting up MySQL Database
    2. Auto loading of Driver by JVM
    3. Standard Connection Factory Management
    4. Enhanced Connection and Statement Interface
    5. Inserting Data
    6. New interface RowID to support the ROWID data type
    7. Updating Data
    8. Deleting Data
    9. Use of Annotated SQL queries
    10. Creating prepared statements
    11. Calling stored procedure

    Lambda Expressions

    1. Single method Interface
    2. Anonymous Interface Implementation
    3. Lambda Type Inference
    4. Lambda Parameters
    5. Lambda Function Body
    6. Returning a Value
    7. Lambdas as Objects
    8. Variable Capture
    9. Method References as Lambdas

    Java Stream API for Bulk Data Operations on Collections

    1. Introduction
    2. Stream Creation
    3. Referencing a Stream
    4. Stream Pipeline
    5. Lazy Invocation
    6. Order of Execution
    7. Stream Reduction
    8. Parallel Streams

    Java Date / Time API

    1. Issues with existing Date / Time APIs
    2. LocalDate, LocalTime and LocalDateTime
    3. Using ZonedDateTime API
    4. Using Period and Duration
    5. Compatibility with Date and Calendar
    6. Date and Time Formatting

    Concurrency API improvements

    1. The Concurrency API
    2. Semaphore and Other Synchronizers
    3. Concurrent Collections
    4. Atomic Operations
    5. Executor and ExecutorService
    6. Thread Pools
    7. Parallel Processing


    1. Uses for Meta-Data
    2. The Reflection API
    3. The Class Class
    4. The java.lang.reflect Package
    5. Reading Type Information
    6. Navigating Inheritance Trees
    7. Dynamic Instantiation
    8. Dynamic Invocation
    9. Reflecting on Generics
    Day 5 - Getting Started With Maven, Commonly Used Plugins, Multi-Module Builds, POM Projects, Creating Archetypes, Maven's Approach to Artifacts

    Getting Started With Maven

    1. Terminology and Basic Concepts
    2. Artifacts
    3. Lifecycle
    4. Plugins
    5. Running Maven
    6. Running Maven from Eclipse
    7. Common Goals
    8. pom.xml

    Commonly Used Plugins

    1. Maven Plugins
    2. Declaring and Configuring Plugins
    3. Running the Plugin
    4. Binding a Plugin Goal to the Lifecycle
    5. Maven Surefire Test Plugin
    6. Failsafe Plugin
    7. Site Plugin
    8. JavaDoc Plugin
    9. PMD Plugin

    Multi-Module Builds

    1. Introduction
    2. The Reactor
    3. Reactor Sorting
    4. Multi-Module Build by Example

    POM Projects

    1. Project Object Model (POM)
    2. The overall POM structure
    3. Storing POM
    4. What is Maven Plugin
    5. Example of Using a Plugin
    6. Create a Custom Plugin
    7. Create a Custom Plugin (cont.)
    8. Plugin Management

    Creating Archetypes

    1. Introduction to Maven Archetypes
    2. Introduction to Maven Archetypes (cont.)
    3. Using Interactive Mode to generate Goal
    4. Common Maven Archetypes

    Maven's Approach to Artifacts

    1. Publishing Artifacts
    2. Summary of Maven's Artifact Handling
    3. Repository
    4. Repository Manager
    5. Proxy Remote Repositories
    6. Types of Artifacts
    7. Release Artifacts
    8. Snapshot Artifacts
    9. Reasons to Use a Repository Manager
    10. Repository Coordinates
    11. Addressing Resources in a Repository
    Our Training Methodology
    Your Instructor
    Thayanithy Jegan
    CTO & Co-Founder of Thulija Technologies,
    Certified Trainer and Consultant

    A seasoned technology professional with over 17 years of industry experience as a software developer, solutions architect and technology consultant for major organizations.
    Thayanithy Jegan has trained executives and developers in companies such as Maxis, IFCA, SWIFT, PSDC, DHL, Standard Chartered, Infineon Technologies, Siemens and Bank Negara to name a few to break into various technology stacks and as well as data science, big data, and artificial intelligence.
    He has led major projects with clients such as Suruhanjaya Syarikat Malaysia (SSM), MYCOID, Kementerian Kerja Raya, Ministry of Education (MOE), Universiti Malaya, Perfisio Solutions, Kementerian Perdagangan Antarabangsa dan Industri, amongst others. He has also served as a Consultant for MIMOS Berhad, a Research and Development organisation that functions as an advisor to the Malaysian Government on technologies, policies and strategies relating to IT.
    Program Key Highlights

    40 hours of Remote Online Learning
    80 Additional Self Learning Hours
    12 Live Hands-on Projects
    Certified by International Body
    Mentorship with Industry Experts
    Designed for Beginners & Professionals

    Get Professionally Certified

    Upon successfully completing this program, participants will be awarded the Professional Certification in Python Data Science by International Council for Technology Certifications (ICTC).
    This award is a validation to the efforts taken to master the domain expertise that will set you apart from your competition.
    Be a part of the global network of data science professionals and join the community across sectors.
    Get in Touch With Us Today!

    This training program is suitable for anyone who intends to enter into the field of Software Development. This program is being conducted in Malaysia and can be joined by anyone, anywhere in the world remotely.
    Program Fee

    RM 3,700.00

    One-time fee. One year access to course materials.

    Please fill in the form and a Program Advisor will reach out to you. You can also reach out to us at or +60123661502
    Contact us on Whatsapp for more enquiries