PARUL UNIVERSITY - Faculty of Engineering and
Technology
Department of Computer Science & Engineering
SYLLABUS FOR 5th SEM B. Tech PROGRAMME
Enterprise Programming Laboratory
(203105375)
Type of Course: B. Tech
Prerequisite: proficiency in a programming language (such as Java, C#, or Python) and knowledge of
object-oriented programming concepts and principles.
Rationale: Enterprise programming focuses on developing software solutions for large-scale
organizations, addressing complex business requirements, scalability, and security concerns. It
emphasizes the use of frameworks, design patterns, and best practices to ensure maintainability,
interoperability, and efficient integration with existing enterprise systems. Mastering enterprise
programming enables developers to build robust, scalable, and secure applications that meet the
needs of modern businesses.
Teaching and Examination Scheme:
Teaching Scheme Examination Scheme
Credit Internal Total
LectHrs/ Tut Hrs/ Lab
Hrs/W External
eek
T P T CE P
0 0 2 1 - 30 - - 20 50
Lect- Lecture, Tut - Tutorial, Lab - Lab, T - Theory,P- Practical, CE- CE, T - Theory,P- Practical
Objectives:
1. Gain hands-on experience in building enterprise-level applications using Java.
2. Understand the principles of enterprise programming and design patterns.
3. Learn about common tools and frameworks used in enterprise Java
development.
4. Develop skills in handling databases and implementing persistence in Java
applications.
List of Practical:
P1: Introduction to Enterprise Programming
Overview of enterprise programming and its significance.
Introduction to Java Enterprise Edition (Java EE) and its components.
Setting up the development environment (Java Development Kit, Eclipse/IntelliJ, etc.)..
P2: Introduction to Design Patterns
Explanation of design patterns and their importance in enterprise programming.
Study of commonly used design patterns in Java enterprise applications (Singleton, Factory,
Observer, etc.).
Implementing a simple example using a design pattern.
P3: Building a Web Application with Java EE
Introduction to Java Servlets and JavaServer Pages (JSP).
Creating a basic web application using Servlets and JSP.
Handling user requests and generating dynamic web content.
P4: Java Persistence with JPA
Overview of Java Persistence API (JPA) and Object-Relational Mapping (ORM) concepts.
Setting up a database connection and configuring JPA.
Implementing CRUD (Create, Read, Update, Delete) operations using JPA.
P5: Working with JavaServer Faces (JSF)
Introduction to JavaServer Faces (JSF) framework for building user interfaces.
Creating a JSF application with managed beans and facelets.
Implementing form validation and navigation in JSF.
P6: Implementing Security in Java EE Applications
Understanding the importance of security in enterprise applications.
Configuring authentication and authorization in Java EE using Servlets and JSP.
Exploring Java EE security mechanisms (role-based access, encryption, etc.)
P7: Building RESTful Web Services
Introduction to Representational State Transfer (REST) architecture.
Creating RESTful web services using JAX-RS (Java API for RESTful Web Services).
Consuming RESTful web services from Java applications.
P8: Introduction to Enterprise JavaBeans (EJB)
Overview of Enterprise JavaBeans (EJB) and their role in enterprise applications.
Creating and deploying a simple EJB application.
Understanding different types of EJBs (session beans, message-driven beans, etc.).
P9: Introduction to Spring Framework
Introduction to the Spring framework and its advantages in enterprise programming.
Configuring a Spring application context and managing dependencies.
Implementing dependency injection and inversion of control using Spring.
P10: Database Connectivity with JDBC
Understanding the Java Database Connectivity (JDBC) API.
Establishing database connections and executing SQL queries.
Handling result sets and managing transactions using JDBC.
P11: Introduction to Messaging with JMS
Overview of Java Messaging Service (JMS) and message-oriented middleware.
Configuring JMS providers and destinations.
Implementing message producers and consumers in Java applications.
P12: Unit Testing in Java Enterprise Applications
Importance of unit testing in enterprise programming.
Introduction to JUnit framework for Java unit testing.
Writing unit tests for Java classes and components.
P13: Application Deployment and Containerization
Packaging and deploying Java applications in containers (e.g., Apache Tomcat, Docker).
Configuring container environments and deploying applications.
Exploring containerization benefits and best practices.
P14: Introduction to Spring Boot
Overview of Spring Boot framework for creating standalone, production-grade applications.
Creating a simple Spring Boot application with embedded servers.
Configuring Spring Boot properties and auto-configuration.
P15: Advanced Topics and Project Work
Discussion on advanced enterprise programming topics (caching, distributed systems,
microservices, etc.).
Working on a project that combines multiple concepts learned throughout the lab.
Presenting and sharing project outcomes with the class