Skip to main content

Advanced Java Web Application Development COMP 4601

Computer Systems Course

International Fees

International fees are typically 3.12 times the domestic tuition. Exact cost will be calculated upon completion of registration.

Course details

​Following on from COMP 3601, this course replaces COMP 4613 and COMP 4656 . Those who also understand HTML, CSS and JavaScript and already capable of developing basic Java web applications will focus on Advanced Java Web App design, organization and deployment. Starting with the Java Persistence API (JPA), students creating Object Relational Mapping solutions and configure data sources in J ava Enterprise Edition (JEE) containers. They connect Java web applications to data sources by utilizing Java Naming and Directory Interface (JNDI). SQL queries are executed using native and Java Persistence Query Language (JPQL queries as well as JPA's Criteria Builder API. COMP 4602 activites include; use Create/Read/Update/Delete (CRUD) operations on JPA entities using entity managers. Students create XML-based web services using the Java API for XML Web Services (JAX- WS) and RESTful web services (JAX-RS API) and Jersey Implementation. Industry best practices are discussed for well-informed decisions about web services strategies. Labs and exercises use industry standards to develop and deploy advanced Java web applications. Topics include: Java Persistence API (JPA), creating Object Relational Mapping solutions, JEE containers, Hibernate API. Students will develop a database-enabled web application, and web services using a variety of industry standards and using design patterns. Enterprise Java Beans (EJB™) API is used to develop the components to build the business logic for Java Enterprise Edition (JEE) applications. Upon successful completion, students will be able to create and deploy advanced Java Web Applications to industry standards. ​​COMP 4601 will be offered in the Fall (September) or Winter (January) term.​

Prerequisite(s)

Credits

4.0

Domestic fees

$564.51

Course offerings

Fall 2024

Below is one offering of COMP 4601 for the Fall 2024 term.

CRN 50441

Duration

Thu Sep 26 - Thu Dec 12 (12 weeks)

  • 12 weeks
  • CRN 50441
  • Domestic fees $564.51
    International fees are typically 3.12 times the domestic tuition.
Class meeting times
Dates Days Times Locations
Sep 26 - Dec 12 Thu 18:00 - 21:00 Online
Sep 26 - Dec 12 N/A N/A Online
Instructor

Arash Ghavami

Course outline

Course outline TBD — see Learning Outcomes in the interim.

Domestic fees

$564.51

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. International fees are typically 3.12 times the domestic tuition. Exact cost will be calculated upon completion of registration.
  5. Please email cstflex@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 48 hours - 36 hours synchronous online classes and 12 hours asynchronous activities/labs. The class meets once per week for 3 hours online and requires an additional 1 hour per week asynchronously. Please Note: Attendance, participation in class and the BCIT Learning Hub are mandatory. You should prepare to spend 2-3 hours on homework for every 1 hour of class time. This course may require an average total time commitment of 12-15+ hours per week. 3 hours of synchronous class, 1-hour asynchronous class time and 9-12+ hours per week for homework. Late registration is not permitted. BCIT Computing is primarily a Microsoft Windows environment. Students must provide their own current model Windows-compatible PC. i5 or higher equivalent processor, with 8 GB of RAM minimum, and 256 GB minimum storage. Highspeed internet access is needed for online sections and for homework. Mac users must have the ability to manage and support their iOS computer. They may need to create a virtual Windows environment using Parallels or VMWare Fusion. COMP instructors may not be able to assist Mac users with software compatibility issues. BCIT does not provide access to Parallels or support for students to use a Mac to run Windows. Due to the substantial time required on labs and assignments, students are advised not to take any other programming language courses simultaneously.
Status

Learning Outcomes

Upon successful completion of this course, the student will be able to:

  • Describe the Java Persistence API (JPA) and employ it for creating Object Relational Mapping solution
  • Create and configure data sources in JEE containers.
  • Connect Java web applications to data sources by utilizing Java Naming and Directory Interface (JNDI)
  • Use Hibernate API as a JPA implementer to create a database-enabled web application.
  • Execute SQL queries using native and JPQL (Java Persistence Query Language) queries as well as JPA's Criteria Builder API.
  • Develop JPA entities using JPA annotations to map the Java classes, properties, and types to relational tables, columns, and types.
  • Carry out Create/Read/Update/Delete (CRUD) operations on JPA entities using entity managers.
  • Create web applications and web services using a variety of industry standards and design patterns.
  • Map XML documents to Java objects and vice versa by employing Java API for XML Binding (JAXB).
  • Create XML-based web services with JAX-WS API in bottom-up and top-down.
  • Create RESTful web services using JAX-RS API and Jersey Implementation.
  • Make well-informed decisions about web services strategies.
  • Use EJB™ API to develop components used in building the business logic of Java EE applications.
  • Create, send, receive and read messages between two or more applications using Java Messaging Service (JMS).
  • Use Message-Driven beans to process messages asynchronously in Java EE applications.
  • Provide case-based recommendations for asynchronous vs synchronous messaging between application clients, EJB™ components and web components.
  • Make well-informed decisions about Publisher/Subscriber or point-to-point strategies.

Effective as of Spring/Summer 2023

Related Programs

Advanced Java Web Application Development (COMP 4601) is offered as a part of the following programs:

  • Indicates programs accepting international students.
  • Indicates programs with a co-op option.

School of Computing and Academic Studies

  1. Advanced Java Development
    Associate Certificate Part-time
  2. Computer Systems
    Diploma Part-time
  3. Web and Mobile Application Development
    Associate Certificate Part-time

Contact Us

If you have a question or comment about this course, please complete and submit the form below.

  • Privacy Notice: The information you provide will be used to respond to your request for BCIT program information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5G 3H2, email: privacy@bcit.ca.
  • This field is for validation purposes and should be left unchanged.

Subscribe

Interested in being notified about future offerings of Advanced Java Web Application Development (COMP 4601)? If so, fill out the information below and we'll notify you by email when courses for each new term are displayed here.

  • Privacy Notice: The information you provide will be used to respond your request for BCIT course information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5A 3H2, email: privacy@bcit.ca.