Aplikasi Kuis Online: Review Kuis



Dalam posting ini kami telah menambahkan fungsionalitas tinjauan kuis ke Aplikasi Kuis Online kami. Pengguna dapat melihat jawaban yang benar untuk semua pertanyaan kuis.

Ini adalah postingan ketiga dalam rangkaian pembuatan aplikasi kuis online menggunakan JSP Servlet.

Jika Anda belum membaca postingan sebelumnya, silakan baca terus, karena itu akan memudahkan Anda untuk mengikuti postingan ini dan memahaminya sepenuhnya.





Bagian 1 -

Bagian 2 - Aplikasi Kuis - Menerapkan Timer Hitung Mundur



Dalam posting ini kita akan menambahkan fungsi berikut ke aplikasi kuis kita

1. Memberi pengguna opsi untuk meninjau jawabannya saat menyelesaikan kuis

2. Menandai tanggapan pengguna sebagai benar atau salah



3. Menandai pertanyaan yang belum dicoba sebagai belum terjawab

Di bawah ini adalah snapshot dari halaman hasil kuis yang dibuat.

Halaman Hasil Kuis

Apa lagi yang kami perlukan agar fungsi tinjauan berfungsi?

Pengguna dapat menyelesaikan kuis kapan saja, setelah menyelesaikan kuis, dia akan memiliki opsi untuk meninjau jawabannya. Jika pengguna tidak menjawab pertanyaan dan melewatinya dengan mengklik tombol berikutnya, maka pertanyaan itu akan ditampilkan sebagai belum terjawab di halaman tinjauan ujian.

Untuk memberikan ringkasan kuis kepada pengguna, yang harus kita lakukan adalah menyimpan tanggapan pengguna dan ketika dia selesai membandingkannya dengan jawaban sebenarnya dari pertanyaan tersebut.

Jika jawaban pengguna cocok dengan jawaban yang benar dari pertanyaan tersebut, maka kami menampilkan simbol yang benar, lambang silang (x).

apa prosedur di sql

Aplikasi Kuis Online

membaca file xml dalam contoh java

Kami akan menambahkan pengontrol baru yang disebut ReviewController, yang akan mengekstrak semua data dan mengirimkannya ke halaman JSP untuk ditampilkan.

Catatan: Kami mengambil pertanyaan dari file XML saat pengguna mengklik tombol berikutnya atau sebelumnya.

Misalkan pengguna memulai sebuah kuis dan mencoba hanya satu pertanyaan dan kemudian mengklik tombol Selesai.

Sekarang, di halaman review kuis kita harus menampilkan semua pertanyaan dengan opsinya dan respon pengguna apakah itu benar atau tidak. Karena dalam skenario ini pengguna tidak menyelesaikan seluruh kuis, sisa 9 pertanyaan akan ditampilkan sebagai tidak terjawab.

Jadi ketika pengguna mengklik Review Quiz untuk melihat tanggapannya bersama dengan jawaban yang benar untuk pertanyaan itu, kita harus mengambil semua pertanyaan dari file XML dan jawaban yang benar.

Struktur Proyek di Eclipse IDE

Catatan: Kami baru saja menyertakan satu controller ReviewController baru.

ReviewController.java

@WebServlet ('/ exam / review') public class ReviewController memperluas HttpServlet {private static final long serialVersionUID = 1L / ** * @see HttpServlet # HttpServlet () * / public ReviewController () {super () // TODO Auto-generated konstruktor rintisan} / ** * @see HttpServlet # doGet (permintaan HttpServletRequest, tanggapan HttpServletResponse) * / protected void doGet (permintaan HttpServletRequest, tanggapan HttpServletResponse) melempar ServletException, IOException Ujian = (metode TODO Ujian otomatis = metode TODO Ujian otomatis request.getSession (). getAttribute ('currentExam') request.setAttribute ('totalQuestion', exam.getTotalNumberOfQuestions ()) ArrayList reviewQuestionList = new ArrayList () Dokumen dom = exam.getDom () untuk (int i = 0i

Catatan: Saya telah menetapkan semua informasi yang diperlukan dalam ArrayList of QuizQuestion dan menetapkan ArrayList itu sebagai atribut dalam cakupan permintaan.

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

Di Halaman JSP kita hanya perlu mengambil nilai yang disimpan dalam atribut reviewQuestions.
Saya telah membuat halaman JSP bernama examReview.jsp, yang akan menampilkan ringkasan kuis.

Menampilkan QuizQuestion Beserta Opsi

Di halaman JSP kami menggunakan JSTL c: forEach untuk mengulang daftar QuizQuestion yang ditetapkan oleh ReviewController

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

$ {counter.count}. $ {option}

Menampilkan Jawaban yang Benar

Perhatikan bahwa dalam file XML saya telah menyimpan opsi mulai dari indeks 0.

Itulah mengapa kami menambahkan satu sambil menunjukkan jawaban yang benar kepada pengguna, karena itu intuitif bagi pengguna.

Jawaban yang Benar: $ {question.correctOptionIndex + 1} 

Menandai Pertanyaan Belum Terjawab

Ini tidak wajib bagi pengguna untuk mencoba semua pertanyaan. Dia bisa melewatinya dengan mengklik tombol berikutnya. Jadi, bagaimana kita mengetahui apakah sebuah pertanyaan telah terjawab atau tidak?

c ++ menggabungkan kode sortir

Saya telah membuat satu perubahan dalam konstruktor Ujian, sehingga saat kami membuat Ujian baru, untuk setiap pertanyaan kami juga menetapkan tanggapan pengguna sebagai -1 pada awalnya. Jadi, ketika pengguna memulai kuis, kami akan memiliki pilihan pengguna untuk setiap pertanyaan meskipun pengguna hanya mengklik tombol selesai pada pertanyaan apa pun di antara kuis tersebut.

Namun jika pengguna benar-benar menjawab pertanyaan, maka -1 akan diganti dengan pilihan pengguna untuk pertanyaan tersebut.

Ujian publik (Uji string, int totalNumberOfQuestions) melempar SAXException, ParserConfigurationException, IOException, URISyntaxException {dom = CreateDOM.getDOM (test) untuk (int i = 0i

Jadi, jika pengguna tidak menjawab pertanyaan dan melompat ke pertanyaan berikutnya atau hanya mengklik tombol selesai, respons awal -1 akan muncul. Di halaman JSP kita bisa membandingkan apakah pilihan pengguna -1 atau tidak. Jika -1, berarti pengguna tidak menjawab pertanyaan tersebut. Dan kami akan menandai pertanyaan itu sebagai belum terjawab.

Tidak terjawab 

Menampilkan Tanggapan Pengguna

Jika pengguna benar-benar menjawab pertanyaan, respons awal -1 akan diganti dengan respons pengguna dan akan diganti dengan 1,2,3 atau 4, karena kami memiliki 4 opsi untuk setiap pertanyaan.

Anda Memilih: $ {question.userSelected} 

Kami membuat tes c: if untuk memastikan pengguna benar-benar menjawab pertanyaan dan kemudian menampilkan tanggapan pengguna.

Menandai Tanggapan sebagai Benar

Jika pilihan pengguna dan jawaban yang benar untuk pertanyaan tersebut cocok, kami menampilkan gambar yang menunjukkan tanda yang benar.

   

Menandai Tanggapan sebagai Salah

Sederhana c: jika tes dilakukan untuk membandingkan respon pengguna dengan pilihan pertanyaan yang benar. Jika keduanya tidak sama berarti pengguna salah menjawab pertanyaan dan kami menampilkan gambar yang menunjukkan tanda silang.

   

Klik tombol unduh untuk mengunduh kode.

[buttonleads form_title = ”Kode Unduhan” redirect_url = https: //edureka.wistia.com/medias/q2kgiq4su3/download? media_file_id = 67378724 course_id = 44 button_text = ”Kode Unduh”]

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar dan kami akan menghubungi Anda kembali.

Posting terkait: