Online kvíz alkalmazás: Kvíz áttekintés



Ebben a bejegyzésben kvízellenőrzési funkciókat adtunk az Online Kvíz alkalmazásunkhoz. A felhasználó láthatja a helyes válaszokat az összes vetélkedő kérdésre.

Ez a harmadik bejegyzés az online kvízalkalmazás létrehozásának sorozatában a JSP Servlet segítségével.

Ha még nem olvasta el az előző bejegyzéseket, kérjük, menjen át rajta, mivel ez megkönnyíti a bejegyzés követését és teljes megértését.





1. rész -

2. rész - Kvíz alkalmazás - Visszaszámláló időzítő megvalósítása



Ebben a bejegyzésben a következő funkciókat fogjuk hozzáadni a kvíz alkalmazásunkhoz

1. Lehetőség biztosítása a felhasználónak, hogy áttekintse a válaszokat a kvíz befejezése után

szakács vs báb vs jenkins

2. A felhasználó válaszainak helyes vagy helytelen megjelölése



3. A meg nem kísérelt kérdések megválaszolatlannak jelölése

Az alábbiakban látható a létrehozott kvíz eredményoldalának pillanatképe.

Kvíz eredményoldala

Mi kell még ahhoz, hogy az ellenőrzési funkció működjön?

A felhasználó bármikor befejezheti a vetélkedőt, miután befejezte a kérdést, lehetősége lesz megvizsgálni válaszait. Ha a felhasználó nem válaszol egy kérdésre, és a következő gombra kattintva kihagyja, akkor a kérdés megválaszolatlanul jelenik meg a vizsga áttekintő oldalán.

Annak érdekében, hogy a felhasználó megkapja a kvíz összefoglalóját, mindössze annyit kell tennünk, hogy elmentjük a felhasználói válaszokat, és amikor befejezi a kvízt, hasonlítsa össze a kérdés tényleges válaszával.

Ha a felhasználó válasza megegyezik a kérdés helyes megválaszolásával, akkor a helyes szimbólum jelenik meg else kereszt (x) szimbólum.

Online kvíz alkalmazás

Hozzáadunk egy új vezérlőt, a ReviewController nevet, amely kivonja az összes adatot és elküldi egy JSP oldalra, hogy megjelenjen.

Megjegyzés: Kérdéseket töltünk le az XML fájlból, amikor a felhasználó a következő vagy az előző gombra kattint.

Tegyük fel, hogy a felhasználó kvízt indít, és csak egy kérdéssel próbálkozik, majd a Befejezés gombra kattint.

hogyan készítsünk fájlt Java-ban

Most, a vetélkedő áttekintő oldalán meg kell mutatnunk az összes kérdést annak lehetőségeivel és a felhasználó válaszával, hogy helyes volt-e vagy sem. Mivel ebben a forgatókönyvben a felhasználó nem teljesíti a teljes kvízt, a 9 kérdés többi része megválaszolatlanul jelenik meg.

Tehát amikor a felhasználó rákattint az Ellenőrzési kvízre, hogy megnézze a válaszait és a kérdésre adott helyes választ, akkor le kell szednünk az összes kérdést az XML fájlból és annak helyes válaszát.

Projektszerkezet az Eclipse IDE-ben

Megjegyzés: Épp most vettünk fel egy új vezérlőt a ReviewController-t.

ReviewController.java

@WebServlet ('/ exam / review') public class ReviewController kiterjeszti a HttpServlet {private static final long serialVersionUID = 1L / ** * @see HttpServlet # HttpServlet () * / public ReviewController () {super () // TODO automatikusan létrehozva konstruktor csonk} / ** * @ lásd HttpServlet # doGet (HttpServletRequest kérés, HttpServletResponse válasz) * / védett void doGet (HttpServletRequest kérés, HttpServletResponse válasz) dob ServletException, IOException {Exam Tube Exam Auto-létrehozott [// TOD ExamO auto request.getSession (). getAttribute ('currentExam') request.setAttribute ('totalQuestion', exam.getTotalNumberOfQuestions ()) ArrayList reviewQuestionList = new ArrayList () Document dom = exam.getDom () for (int i = 0i)

Megjegyzés: Az összes szükséges információt beállítottam a QuizQuestion ArrayList-be, és ezt az ArrayList-et beállítottam a kérelem hatókörének attribútumaként.

ArrayList reviewQuestionList = new ArrayList () request.setAttribute ('reviewQuestions', reviewQuestionList)

A JSP oldalon csak le kell töltenünk a reviewQuestions attribútumban tárolt értékeket.
Létrehoztam egy JSP oldalt examReview.jsp néven, amely megmutatja a kvíz összefoglalóját.

A QuizQuestion megjelenítése az opciókkal együtt

A JSP oldalon a JSTL c: forEach fájlt használjuk a QuizQuestion listájának átdolgozásához, amelyet a ReviewController állított be

  
$ {counter.count}. $ {question.question}

$ {counter.count}. $ {option}

Helyes válasz megjelenítése

Ne feledje, hogy az XML fájlban a 0 indextől kezdve tároltam opciókat.

Ezért adtunk hozzá egyet, miközben megmutattuk a felhasználónak a helyes választ, mivel ez intuitív a felhasználó számára.

Helyes válasz: $ {question.correctOptionIndex + 1} 

Kérdés megválaszolása megjelölés

A felhasználónak nem kötelező minden kérdést megkísérelnie. Csak átugorhatja a következő gombra kattintva. Tehát hogyan lehet megtudni, hogy megválaszolták-e egy kérdést vagy sem?

Egy változtatást hajtottam végre a vizsga konstruktorában, így amikor új vizsgát hozunk létre, minden kérdéshez a felhasználó válaszát is kezdetben -1-re állítjuk. Tehát, amikor a felhasználó megkezdi a vetélkedőt, akkor minden kérdésnél megadjuk a felhasználó választását, még akkor is, ha a felhasználó csak a befejezés gombra kattint a kérdés között, amely a teszt között van.

De ha a felhasználó valóban válaszol egy kérdésre, akkor a -1 helyébe a felhasználó kiválasztja ezt a kérdést.

nyilvános vizsga (karakterlánc teszt, int totalNumberOfQuestions) dobja a (int i = 0i) SAXException, ParserConfigurationException, IOException, URISyntaxException {dom = CreateDOM.getDOM (teszt)

Tehát, ha a felhasználó nem válaszol egy kérdésre, és átugrik a következő kérdésre, vagy csak a Befejezés gombra kattint, a -1 kezdeti válasz ott lesz. A JSP oldalon összehasonlíthatjuk, hogy a felhasználó választása -1 vagy sem. Ha -1, akkor ez azt jelenti, hogy a felhasználó nem válaszolt erre a kérdésre. És ezt a kérdést megválaszolatlannak fogjuk jelölni.

Válasz nélkül 

A felhasználói válasz megjelenítése

Ha a felhasználó valóban válaszolt egy kérdésre, akkor a -1 kezdeti válasz helyébe a felhasználó válasza lép, és 1,2,3 vagy 4 váltja fel, mivel minden kérdésre négy lehetőségünk van.

Ön választotta: $ {question.userSelected} 

Készítünk egy c: if tesztet, hogy megbizonyosodjunk arról, hogy a felhasználó valóban válaszolt-e egy kérdésre, majd megjelenítse a felhasználó válaszát.

A válasz helyesnek jelölése

Ha a felhasználó választása és a kérdésre adott helyes válasz megegyezik, akkor egy megfelelő jelet tartalmazó képet jelenítünk meg.

   

A válasz megjelölése hibásnak

Egy egyszerű c: ha tesztet végeznek, hogy összehasonlítsák a felhasználó válaszát a kérdés helyes opciójával. Ha mindkettő nem egyenlő, az azt jelenti, hogy a felhasználó helytelenül válaszolt a kérdésre, és egy keresztjelet tartalmazó képet jelenítünk meg.

   

Kattintson a letöltés gombra a kód letöltéséhez.

nagy adatelemzés alkalmazásai

[buttonleads form_title = ”Kód letöltése” redirect_url = https: //edureka.wistia.com/medias/q2kgiq4su3/download? media_file_id = 67378724 course_id = 44 button_text = 'Kód letöltése']

Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben, és mi kapcsolatba lépünk Önnel.

Kapcsolódó hozzászólások: