Курсов проект № 2 по “Интернет програмиране с Java”
2.3. Poll System
Автор: Димитър
Георгиев
http://www.nakov.com/inetjava/
Последна промяна: 01.04.2004
Да се реализира Java-базирано
Web-приложение за проучване на общественото мнение (poll system), с което посетителите на даден сайт да дават мнение за различни,
предварително конфигурирани, въпроси.
Функционални възможности
Системата трябва да има следната
функционалност:
- Да задава въпроси на посетителите и да им предоставя възможност
за гласуване измежду няколко възможни отговора.
- Да отброява получените гласове за всеки от отговорите.
- Трябва да се поддържа страничка, от която да се показват
резултатите от гласуването.
- Трябва да се поддържа повече от един въпрос и при всяко посещение
да изисква гласуване за един от наличните въпроси, избран случайно.
- Възможните въпроси и възможните отговори за всеки въпрос трябва
да могат да се конфигурират от специално разработено за целта административна
част на Web- приложението.
- Системата трябва да поддържа и т.нар. "сигурно
гласуване". При него за да гласува даден потребител, той трябва да
попълни валиден e-mail адрес, на който системата изпраща link (URL) за
потвърждаване на подадения глас. Изпратеният link
трябва да съдържа като параметър някакъв дълъг низ от случайно-генерирани
символи, по който сървърът проверява дали потребителят е наистина
собственик на зададения e-mail. Едва след потвърждение на гласуването съответният глас
се счита за валиден. За един въпрос от един e-mail адрес трябва да може да
се гласува най-много веднъж. За всеки въпрос трябва да може да се задава
степента на сигурност, с която той работи – с e-mail потвърждение или без.
Системни изисквания
- JDK 1.4.2.
- JSP/Servlet specification - JSP 1.2 и Servlet 2.3.
- Servlet container - Tomcat 4.x или по-висока версия.
- Persistence - За съхранение на данните може да се използва
файловата система. Допуска се и използване на бази данни, но в изпитните
зали няма да има инсталиран никакъв database server и затова е позволено
да се използва MS Access (използва се през ODBC) или база данни, подобна
на HypersonicSQL, която не изисква инсталация.