0% found this document useful (0 votes)
66 views7 pages

Spring Boot 2025 Practical Exam Guide

The document outlines the practical exam requirements for the HSF302 course, focusing on developing a product management page using Spring Boot 3.4.3 and related technologies. It specifies the project structure, functional and UI requirements, as well as grading policies and submission guidelines. Students must adhere to strict coding and database naming conventions, and the project must be submitted in a zipped format following specific steps.

Uploaded by

Nguyễn Vinh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
66 views7 pages

Spring Boot 2025 Practical Exam Guide

The document outlines the practical exam requirements for the HSF302 course, focusing on developing a product management page using Spring Boot 3.4.3 and related technologies. It specifies the project structure, functional and UI requirements, as well as grading policies and submission guidelines. Students must adhere to strict coding and database naming conventions, and the project must be submitted in a zipped format following specific steps.

Uploaded by

Nguyễn Vinh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Practical Exam for 2025 Spring

Subject HSF302
Code

Subject Working with Spring


Name Framework

Time 90 minutes (include submit


time)

Exam Type EOS Practical Exam

Note
a) Allow student to connect to Internet within 5 minutes when setting up project at
the beginning examination

b) Student can only use resources in local computer

B) Exam Requirements
Develop the following page in Spring Boot 3.4.3, Spring JPA, and Spring MVC
6 (Thymeleaf) run on JDK 21

| Project Code | | SMS |

B.1 Screen Layout


Product Management
Screen Layout

Product Name:

Price:

Description:

Category:

Add New

Product List

# No Product Name Category Price Description Action

01 iPhone 15 Electronics 999.00 New Model Delete

Screen Definition
# Field Mandat Leng Description Type
name ory th

1 Product Yes 50 No duplicate Text box


Name

2 Price Yes 8 Greater than 0 Text box


3 Descripti No 200 Text box
on

4 Category Yes NA It is one in the list (Electronics, Dropdown


Furniture) – Defined in Java code,
not in database

5 Add New Button

B.2 Functional & UI Requirement Details


A) Functional Requirements
# Functional Requirements Mark

1 When the user go to the page, all products in the database will be 2
displayed in the list. The list is ordered by Product Name

2 When the user click on "Add New" button, the software will: 4
a. Validate the input data
b. Store data, show the "Created new product successfully" and then
display the new record in the list

3 When the user click on "Delete" button in a row on the product list, 2
the software will show a dialog confirm:
a) If user select "Yes" option, the software will:
- delete the product from database
- show the "Deleted successfully" message on the screen
- and update the product list
b) If user select "No", the software close the dialog

B) User Interface
# User Interface
1 Screen must have layout as described in Screen
Layout section

2 Item label must follow the description in Screen


Layout section

3 Graphical design must be clear, high contrast and


understandable

B.3 Project structure requirements (1 point)


# Project structure requirements

3. The project must be in IntelliJ format and the name must following
1 convention: <ClassName><StudentID><ProjectCode>_PE

3. The project must be in Spring Boot type and package type is "war" run on
2 JDK21

3. Use Spring Boot 3.4.3, Spring JPA and Spring MVC 6 +(Thymeleaf) for the
3 project
Note: Do not allow use other libraries e.g. lombok

3. User MS SQL Server Driver enclosed with Spring Boot Project in IntelliJ for
4 MS SQL Server 2016 or later for the project

3. The application must follow the MVC & Layer structural pattern. The
5 package of java code must construct as the following:

com.<studentId>.[Link] → Contain entity classes


com.<studentId>.[Link] → Contain Repository Interface classes
com.<studentId>.[Link] → Contain service Interface classes
com.<studentId>.[Link] → Contain service implementation
classes
com.<studentId>.[Link] → Contain controller classes
com.<studentId>.[Link] → Contain data transfer objects
com.<studentId>.mvc → Contain configuration classes
Note: Please replace <studentid> by your id

3. Class name and class attributes must be named according to


6 requirements of the application

3. Please zip the project folder and then submit the zip file to EOS
7 Note: Follow the submit guideline in the enclosed document when submit
your project

3. Table name & Field name in database must follow the defined table in
8 below section. If not follow, the result will not be graded

3. Category list must be defined in Java code, not in database


9

B.4 Database Table name: Product


# Field Type Si Type of Entity Mandat Description
name ze attribute ory

1 Product_ID int NA int Yes Auto generated


(Identity)

2 Product_N NVarc 50 String Yes


ame har

3 Price Decim 8,2 BigDecimal Yes


al

4 Description NVarc 20 String No


har 0

5 Category NVarc 30 String Yes Electronics/Furnitu


har re

B.5 Project configuration requirements


# Requirements

1 Database name: HSF302_2025_PE

2 [Link]: 1234

3 [Link]: sa

4 [Link]-path: PE2025

5 [Link]: 8080

6 [Link]-auto: none

7 Path for the application page in


controller: /

B.6 Grading Policies


The following items are mandatory requirements. If one of item is violated, your
result will be graded zero.

# Item

1 The requirements noted in the following


sections:
B.3 Project structure requirements
B.4 Database Table name
B.5 Project configuration requirements

C) PE Submit Guideline
C1) Before zipping project folder
Please follow the following steps:
●​ Step 1: Go to folder contain the project​

●​ Step 2: Open the project folder, the folder structure like below​

●​ Step 3: Open “target” folder, the folder structure like below​

●​ Step 4: Delete “classes” and the folder has same with project name​

Note: Should check carefully to avoid mistakes. You should copy the project to
other folder to backup before doing this task

C2) Zip the project folder


●​ Step 5: Go to folder that you opened in the step 1​

●​ Step 6: Right click on the folder name and then select “send to” →
“Compressed (zipped) folder”​

You might also like