Notes BCA 309T

BCA 309T Full Stack Development using Java Notes for GGSIPU BCA Sem 5

BCA 309T Full Stack Development using Java Notes from Unnati Educations cover all 4 units of this GGSIPU BCA Semester 5 elective in one 86-page printed book: 50 numbered programs, 25 diagrams, 57 solved two-mark answers and 40 ten-mark questions mapped to the sections that answer them. The syllabus applies to the batch admitted in 2024-25 onwards.

BCA 309T Full Stack Development using Java Notes from Unnati Educations cover all 4 units of this GGSIPU BCA Semester 5 elective in one 86-page printed book: 50 numbered programs, 25 diagrams, 57 solved two-mark answers and 40 ten-mark questions mapped to the sections that answer them. The syllabus applies to the batch admitted in 2024-25 onwards.

Written by Prateek Talwar, Founder, Unnati Educations · Reviewed by Ritik Rawat, B.Tech, Senior Full Stack Developer · Checked against BCA Programme Common Scheme and Syllabus (w.e.f. A.S. 2024-2025), uploaded 03 Sep 2026 · Updated 13 October 2026 · Editorial policy

Scheme: BCA Common Scheme and Syllabus, w.e.f. A.S. 2024-25 | Applies to: batch admitted in 2024-25 onwards | Verified against: BCA Programme Common Scheme and Syllabus (bcaaxV030926.pdf), 03 Sep 2026

On this page

  1. BCA 309T at a glance
  2. Unit-wise notes
    1. Unit 1: Full Stack Basics, HTML5, CSS3 and JavaScript
    2. Unit 2: Java Web Development, Servlets and JSP
    3. Unit 3: JDBC, Database Connectivity and RESTful Web Services
    4. Unit 4: Spring Boot, Hibernate/JPA and Full Stack Application
  3. Exam corner
  4. Who writes and checks these notes
  5. How to write BCA 309T answers
  6. BCA 309P lab and other Sem 5 papers
  7. Excerpt: servlet life cycle (page 34)
  8. Syllabus coverage map
  9. FAQs
  10. Get the full notes book

BCA 309T Full Stack Development using Java at a glance: GGSIPU BCA Sem 5 credits, units and exam pattern

These BCA 309T Full Stack Development IPU notes run from HTML5 forms to Servlets, JDBC and Spring Boot. Prerequisites: basic Java, HTML and DBMS.

BCA 309T snapshot from the official scheme and syllabus
Code and titleBCA 309T · Full Stack Development using Java
Course and semesterBCA, Semester 5
Category and creditsProgramme Core Elective (PCE), 4 credits, L-T-C 4-0-4
Marks100: 40 internal + 60 end-term
Applies toBatch admitted in 2024-25 onwards
End-term patternQ1 compulsory: 10 questions of 2 marks, at least 2 per unit. Then one of two 10-mark questions from each unit (20 + 40 = 60 marks)
Units4 (12, 12, 12 and 10 teaching hours); the official PDF numbers units only
Paired labBCA 309P: PCE, 4 practical hours a week, 2 credits, 40 + 60 = 100 marks
Pass and re-appear rulesGGSIPU Ordinance 11
View complete table: BCA 309T snapshot from the official scheme and syllabus

This view preserves the original alignment. Scroll within it if needed to read the complete content.

BCA 309T snapshot from the official scheme and syllabus
Code and titleBCA 309T · Full Stack Development using Java
Course and semesterBCA, Semester 5
Category and creditsProgramme Core Elective (PCE), 4 credits, L-T-C 4-0-4
Marks100: 40 internal + 60 end-term
Applies toBatch admitted in 2024-25 onwards
End-term patternQ1 compulsory: 10 questions of 2 marks, at least 2 per unit. Then one of two 10-mark questions from each unit (20 + 40 = 60 marks)
Units4 (12, 12, 12 and 10 teaching hours); the official PDF numbers units only
Paired labBCA 309P: PCE, 4 practical hours a week, 2 credits, 40 + 60 = 100 marks
Pass and re-appear rulesGGSIPU Ordinance 11

BCA 309T is one of three electives, taken with its lab, among the GGSIPU BCA Semester 5 papers.

BCA 309T Full Stack Development using Java Notes unit-wise: 50 programs and 57 solved two-mark answers across 4 units

Each unit ends with important questions and a revision table. Other papers: GGSIPU BCA notes.

BCA 309T Unit 1: Full Stack Basics, HTML5, CSS3 and JavaScript

Pages 4 to 28, 28 sections. Client-server and 3-tier architecture, SQL versus NoSQL, semantic HTML5, a registration form with required and pattern checks, CSS specificity, positioning, the Bootstrap 12-column grid, DOM manipulation and a JavaScript form validator. 19 programs, 8 diagrams, 14 two-mark answers, 11 ten-mark questions.

Quick look: CSS box width (from page 17)

Quick look: box model width for a 300px card (from page 17)
LayerCSSAdds
Contentwidth: 300px300 px
Paddingpadding: 20px40 px
Borderborder: 5px10 px
Marginmargin: 10px20 px

Quick look: box model width for a 300px card (from page 17)

Layer
Content
CSS
width: 300px
Adds
300 px
Layer
Padding
CSS
padding: 20px
Adds
40 px
Layer
Border
CSS
border: 5px
Adds
10 px
Layer
Margin
CSS
margin: 10px
Adds
20 px

Total: 370 px.

BCA 309T Unit 2: Java Web Development, Servlets and JSP

Pages 29 to 49, 15 sections. Jakarta EE, HTTP request and response format, the web container, forward() versus sendRedirect(), deployment with web.xml or @WebServlet, login and logout with cookies and HttpSession, the nine JSP implicit objects, EL, JSTL and MVC Model 2. 9 programs, 7 diagrams, 15 two-mark answers, 10 ten-mark questions.

Quick look: cookie or HttpSession? (from page 41)

Quick look: cookie versus HttpSession (from page 41)
BasisCookieHttpSession
DataText onlyAny Java object
SizeAbout 4 KBServer memory
SecurityUser can edit itOnly the ID reaches the client
LifeExpiry or browser closeinvalidate() or timeout

Quick look: cookie versus HttpSession (from page 41)

Basis
Data
Cookie
Text only
HttpSession
Any Java object
Basis
Size
Cookie
About 4 KB
HttpSession
Server memory
Basis
Security
Cookie
User can edit it
HttpSession
Only the ID reaches the client
Basis
Life
Cookie
Expiry or browser close
HttpSession
invalidate() or timeout

BCA 309T Unit 3: JDBC, Database Connectivity and RESTful Web Services

Pages 50 to 67, 14 sections. JDBC architecture and the four driver types, the six steps of a JDBC program, PreparedStatement against SQL injection, CRUD on a student table, ResultSet navigation, transactions, SOAP versus REST, JSON, and a student API read by JavaScript fetch(). 10 programs, 4 diagrams, 14 two-mark answers, 10 ten-mark questions.

Quick look: CRUD mapped to HTTP methods (from page 61)

Quick look: REST methods on a student resource (from page 61)
MethodURISuccess status
GET (read)/api/students/101200 OK
POST (create)/api/students201 Created
PUT (update)/api/students/101200 OK or 204
DELETE/api/students/101204 No Content

Quick look: REST methods on a student resource (from page 61)

Method
GET (read)
URI
/api/students/101
Success status
200 OK
Method
POST (create)
URI
/api/students
Success status
201 Created
Method
PUT (update)
URI
/api/students/101
Success status
200 OK or 204
Method
DELETE
URI
/api/students/101
Success status
204 No Content

BCA 309T Unit 4: Spring Boot, Hibernate/JPA and Full Stack Application

Pages 68 to 86, 12 sections. Spring Boot starters and layers, the three types of Dependency Injection, the DispatcherServlet flow, JDBC versus Hibernate, entity mapping, JpaRepository CRUD, then a Student Management System with one POST request traced through every layer. 12 programs, 6 diagrams, 14 two-mark answers, 9 ten-mark questions.

Quick look: screen action to back-end (from page 80)

Quick look: Student Management System operations (from page 80)
ActionREST callBack-end
ListGET /api/studentsrepo.findAll()
AddPOST /api/studentsrepo.save(s)
UpdatePUT /api/students/{id}repo.save(s)
DeleteDELETE /api/students/{id}repo.deleteById(id)

Quick look: Student Management System operations (from page 80)

Action
List
REST call
GET /api/students
Back-end
repo.findAll()
Action
Add
REST call
POST /api/students
Back-end
repo.save(s)
Action
Update
REST call
PUT /api/students/{id}
Back-end
repo.save(s)
Action
Delete
REST call
DELETE /api/students/{id}
Back-end
repo.deleteById(id)

BCA 309T exam corner: 57 solved two-mark answers and 40 ten-mark questions by unit

2 Marks questions carry full answers; 10 Marks questions point to the sections and programs that answer them.

BCA 309T questions and programs per unit
Unit2 Marks (solved)10 Marks (mapped)Programs
Unit 1141119
Unit 215109
Unit 3141010
Unit 414912

BCA 309T questions and programs per unit

Unit
Unit 1
2 Marks (solved)
14
10 Marks (mapped)
11
Programs
19
Unit
Unit 2
2 Marks (solved)
15
10 Marks (mapped)
10
Programs
9
Unit
Unit 3
2 Marks (solved)
14
10 Marks (mapped)
10
Programs
10
Unit
Unit 4
2 Marks (solved)
14
10 Marks (mapped)
9
Programs
12
  • Unit 1 (page 27): == versus ===? Pointer: 5 == "5" is true after type conversion; 5 === "5" is false.
  • Unit 2 (page 47): forward() versus sendRedirect()? Pointer: same request on the server, against a 302 and a new request.
  • Unit 3 (page 65): executeQuery() versus executeUpdate()? Pointer: a ResultSet for SELECT, against a row count.
  • Unit 4 (page 84): @Controller versus @RestController? Pointer: a view name, against JSON through @ResponseBody.

The BCA 309T notes solve 57 two-mark questions across 4 units, map 40 ten-mark questions to their answers, and include 50 numbered programs.

No exam-year tags are printed, so these are exam-style questions. More practice sits in the BCA 309T important questions.

Who writes and checks the BCA 309T Full Stack Java notes?

  • Prateek Talwar, author. Founder, Unnati Educations; Associate Company Secretary (ACS), ICSI, membership no. 58704, since 15 May 2019; B.Com, University of Delhi (SOL), 2012. Profile
  • Ritik Rawat, subject reviewer: checks the Servlet, JDBC and Spring Boot code. Senior Full Stack Developer, Unnati Educations; B.Tech. Profile

The 2026-27 edition of the GGSIPU BCA Sem 5 Full Stack Java notes follows the BCA Common Scheme w.e.f. 2024-25, uses jakarta.servlet packages and Spring Boot 3.3.4, and was last updated on 13 October 2026 under our editorial policy.

The same team prepares GGSIPU important questions for every course it covers.

How to write BCA 309T answers: code-backed ten-mark answers on JDBC, JSTL and full stack apps

16 of the 40 ten-mark questions in the notes point to a program, so each long answer runs: definition, diagram or table, short program, key call explained. Two-mark answers are one definition plus one example, such as {"roll":101} for JSON.

  • PreparedStatement (page 56): three reasons (pre-compiled, blocks SQL injection, cleaner setters), then the injection input admin'--.
  • JSTL (page 45): write the taglib directive first.
  • IoC and DI (page 73): a without-DI and with-DI code pair, plus the three injection types.
  • Full stack app (page 84): layered diagram, entity and repository, controller with four mappings, a fetch() call, request flow.
PreparedStatement ps = con.prepareStatement(  
        "INSERT INTO student VALUES (?, ?, ?, ?)");  
ps.setInt(1, 103);  ps.setString(2, "Kabir");  
ps.setString(3, "BCA");  ps.setInt(4, 77);  
int rows = ps.executeUpdate();   // 1 row inserted
View preformatted content

This view preserves the original alignment. Scroll within it if needed to read the complete content.

PreparedStatement ps = con.prepareStatement(  
        "INSERT INTO student VALUES (?, ?, ?, ?)");  
ps.setInt(1, 103);  ps.setString(2, "Kabir");  
ps.setString(3, "BCA");  ps.setInt(4, 77);  
int rows = ps.executeUpdate();   // 1 row inserted

Note that ? indexes start at 1. Page 55 slip: a missing Connector/J jar gives ClassNotFoundException; a stopped MySQL gives "Communications link failure".

Practise this format on GGSIPU BCA important questions.

BCA 309P Full Stack Java lab notes: 2 credits, 40 + 60 marks. The teacher notifies the practical list in week one.

  • Unit 1 → registration form (Program 1.6) and JavaScript validation (1.19).
  • Unit 2 → login servlet (2.2) and session login and logout (2.5).
  • Unit 3 → JDBC CRUD (3.3), form-to-MySQL servlet (3.5), JSON API with fetch() (3.8 to 3.10).
  • Unit 4 → the Spring Boot Student Management System, in seven steps.

The alternative electives are BCA 305T Natural Language Processing and BCA 307T Network Security. The core papers are BCA 301T Computer Networks and BCA 303T Artificial Intelligence, with labs 301P and 303P. Computer Networks supports the HTTP topics here. Semester 5 also has BCA 311 Summer Training and a GE-3 paper (BCA 313T Introduction to Management & Entrepreneurship Development or BCA 315T MOOC Course).

Servlet life cycle in Java web development: excerpt from page 34 of the BCA 309T notes

Excerpt from page 34

The life cycle of a servlet is the sequence of stages from its creation to its destruction. The web container controls it fully, through three methods of the Servlet interface: init(), service() and destroy().

The six stages

  1. Loading the class: the container loads the servlet .class file at the first request, or when the server starts if load-on-startup is set.
  2. Instantiation: the container creates ONE object using the no-argument constructor.
  3. init(ServletConfig): called only once, for initialisation such as opening a database connection or reading configuration.
  4. service(request, response): called for every request, each in its own thread; it passes control to doGet() or doPost().
  5. destroy(): called only once before removal, to close connections and release resources.
  6. Garbage collection: the servlet object becomes eligible for garbage collection.
Servlet life-cycle methods (page 34)
MethodCalledPurpose
public void init(ServletConfig config)Once, after object creationOne-time setup
public void service(ServletRequest req, ServletResponse res)Once per requestProcess the request, create the response
public void destroy()Once, at undeploy or server shutdownClean-up

Servlet life-cycle methods (page 34)

Method
public void init(ServletConfig config)
Called
Once, after object creation
Purpose
One-time setup
Method
public void service(ServletRequest req, ServletResponse res)
Called
Once per request
Purpose
Process the request, create the response
Method
public void destroy()
Called
Once, at undeploy or server shutdown
Purpose
Clean-up

Program 2.1: demonstrating the servlet life cycle

@WebServlet("/life")  
public class LifeCycleServlet extends HttpServlet {  
    public void init() throws ServletException {  
        System.out.println("init() called - servlet initialised");  
    }  
    protected void doGet(HttpServletRequest req, HttpServletResponse res)  
            throws ServletException, IOException {  
        System.out.println("service() -> doGet() called");  
        res.setContentType("text/html");  
        res.getWriter().println("<h2>Life cycle demo - check the server console</h2>");  
    }  
    public void destroy() {  
        System.out.println("destroy() called - servlet removed");  
    }  
}
View preformatted content

This view preserves the original alignment. Scroll within it if needed to read the complete content.

@WebServlet("/life")  
public class LifeCycleServlet extends HttpServlet {  
    public void init() throws ServletException {  
        System.out.println("init() called - servlet initialised");  
    }  
    protected void doGet(HttpServletRequest req, HttpServletResponse res)  
            throws ServletException, IOException {  
        System.out.println("service() -> doGet() called");  
        res.setContentType("text/html");  
        res.getWriter().println("<h2>Life cycle demo - check the server console</h2>");  
    }  
    public void destroy() {  
        System.out.println("destroy() called - servlet removed");  
    }  
}

The program imports java.io.*, jakarta.servlet.* and jakarta.servlet.http.*. Open /life in the browser three times and the server console prints the init() line once and the doGet() line three times. Stop the server and the destroy() line appears. So one short run of this servlet shows the whole life cycle in practice: one object, a new thread for each request, and one clean-up at the end.

Do the BCA 309T notes cover the full GGSIPU syllabus?

Yes. Every topic in the four official units has its own section in the notes; the unit check found no gap. Extras include JDBC driver types and SOAP versus REST.

BCA 309T official syllabus mapped to the notes
UnitOfficial topicsIn the notesStatus
IIntroduction to Full Stack Development; HTML5Parts A and B, pages 5 to 14Covered
ICSS3, Bootstrap; JavaScript, DOM, client-side form validationParts C and D, pages 14 to 26Covered
IIJava EE, HTTP, web application architecture; Servlets, cookies, HttpSessionParts A and B, pages 30 to 41Covered
IIJSP life cycle, directives, EL, JSTL, MVCPart C, pages 41 to 47Covered
IIIJDBC architecture, MySQL connectivity, CRUD, PreparedStatement, ResultSetPart A, pages 51 to 59Covered
IIIREST APIs, HTTP methods (GET, POST, PUT, DELETE), JSONPart B, pages 59 to 65Covered
IVSpring Boot, project structure, Dependency Injection, Spring MVCPart A, pages 69 to 75Covered
IVHibernate/JPA: ORM, entity mapping, CRUD; full stack applicationParts B and C, pages 75 to 84Covered

BCA 309T official syllabus mapped to the notes

Unit
I
Official topics
Introduction to Full Stack Development; HTML5
In the notes
Parts A and B, pages 5 to 14
Status
Covered
Unit
I
Official topics
CSS3, Bootstrap; JavaScript, DOM, client-side form validation
In the notes
Parts C and D, pages 14 to 26
Status
Covered
Unit
II
Official topics
Java EE, HTTP, web application architecture; Servlets, cookies, HttpSession
In the notes
Parts A and B, pages 30 to 41
Status
Covered
Unit
II
Official topics
JSP life cycle, directives, EL, JSTL, MVC
In the notes
Part C, pages 41 to 47
Status
Covered
Unit
III
Official topics
JDBC architecture, MySQL connectivity, CRUD, PreparedStatement, ResultSet
In the notes
Part A, pages 51 to 59
Status
Covered
Unit
III
Official topics
REST APIs, HTTP methods (GET, POST, PUT, DELETE), JSON
In the notes
Part B, pages 59 to 65
Status
Covered
Unit
IV
Official topics
Spring Boot, project structure, Dependency Injection, Spring MVC
In the notes
Part A, pages 69 to 75
Status
Covered
Unit
IV
Official topics
Hibernate/JPA: ORM, entity mapping, CRUD; full stack application
In the notes
Parts B and C, pages 75 to 84
Status
Covered

Official source: BCA Programme Common Scheme and Syllabus (w.e.f. A.S. 2024-2025), batch admitted 2024-25 onwards.

Every course in GGSIPU notes is checked against its official PDF the same way.

BCA 309T Full Stack Java notes FAQs

What is the passing mark for BCA 309T?

BCA 309T is marked out of 100: 40 internal and 60 end-term, as the BCA scheme of examination states. The scheme does not print a pass percentage for theory papers like BCA 309T, so we do not quote one. Minimum end-term marks and re-appear rules come from GGSIPU Ordinance 11, which is published on ipu.ac.in for every student.

Is BCA 309T compulsory in BCA Semester 5?

No. BCA 309T is a Programme Core Elective. In Semester 5 you choose one of three electives, BCA 305 Natural Language Processing, BCA 307 Network Security or BCA 309 Full Stack Development using Java, and take its theory and lab together. Choosing BCA 309 gives 4 credits from BCA 309T and 2 from the BCA 309P lab.

Which unit of the BCA 309T notes has the most programs?

Unit 1 has the most, with 19 numbered programs over 25 pages, because HTML5 forms, CSS layouts, Bootstrap and JavaScript validation each need working code. Unit 4 follows with 12, including the full Spring Boot Student Management System. Unit 3 has 10 programs on JDBC and REST, and Unit 2 has 9 on Servlets and JSP.

Do the BCA 309T notes use javax or jakarta packages?

The BCA 309T notes use the current jakarta.servlet and jakarta.servlet.http packages in every Servlet program and point out that older code uses javax.servlet. Unit 4 builds on Spring Boot 3.3.4, which also expects the jakarta names, so the code stays consistent from the first servlet in Unit 2 to the final full stack app.

Get the full BCA 309T Full Stack Development using Java Notes on WhatsApp

The book is the complete Full Stack Development using Java notes in English, printed on A4 with a revision table after every unit. It is not sold as a PDF.

Pages per unit in the BCA 309T notes book
PartPagesPrograms
Cover and index1 to 3-
Unit 14 to 28 (25)19
Unit 229 to 49 (21)9
Unit 350 to 67 (18)10
Unit 468 to 86 (19)12

Pages per unit in the BCA 309T notes book

Part
Cover and index
Pages
1 to 3
Programs
-
Part
Unit 1
Pages
4 to 28 (25)
Programs
19
Part
Unit 2
Pages
29 to 49 (21)
Programs
9
Part
Unit 3
Pages
50 to 67 (18)
Programs
10
Part
Unit 4
Pages
68 to 86 (19)
Programs
12

Order on WhatsApp; dispatch and delivery details are shared on the chat.

Order the BCA 309T notes book on WhatsApp (4 units, 86 pages)

Unnati Educations is an independent education provider based in Vikaspuri, Delhi. We are not affiliated with, authorised by, or endorsed by Guru Gobind Singh Indraprastha University (GGSIPU). 'GGSIPU' and 'IPU' are used only to describe the syllabus our notes follow. For official information, visit ipu.ac.in.

Ready for the full notes?

Discuss coverage and delivery with our team.