資源簡介
java單機版的考試登陸系統,內附有界面截圖,有代碼詳細注解,此項目經過編譯,已經在eclipse上運行成功...

代碼片段和文件信息
package?com.guo.elts.controller;
import?java.util.List;
import?java.util.Timer;
import?java.util.TimerTask;
import?javax.swing.Jframe;
import?javax.swing.JOptionPane;
import?com.guo.elts.UI.ExamUI;
import?com.guo.elts.UI.LoginUI;
import?com.guo.elts.UI.MenuUI;
import?com.guo.elts.controller.exp.IdOrPasswdException;
import?com.guo.elts.entity.ExamInfo;
import?com.guo.elts.entity.ExamQuestion;
import?com.guo.elts.entity.UserInfo;
import?com.guo.elts.service.ExamServiceBean;
import?com.guo.elts.util.Config;
/**
?*?控制器
?*?@author?Administrator
?*
?*/
public?class?ClientContext?{
private?UserInfo?user;
//體現關聯關系中use-a的關系
private?LoginUI?loginUI;
public?void?setLoginUI(LoginUI?loginUI){
this.loginUI=loginUI;
}
private?MenuUI?menuUI;
public?void?setMenuUI(MenuUI?menuUI){
this.menuUI=menuUI;
}
private?ExamUI?examUI;
public?void?setExamUI(ExamUI?examUI){
this.examUI=examUI;
}
private?ExamServiceBean?examService;
public?void?setExamService(ExamServiceBean?examService){
this.examService=examService;
}
/**
?*?給出提示信息,然后根據選擇執行相應的操作
?*?@param?frame
?*/
????public?void?exit(Jframe?frame){
???? int?option=JOptionPane.showConfirmDialog(frame?“您確認要離開嗎?“);
???? if(option==JOptionPane.YES_OPTION){
???? System.exit(0);
???? }
????}
????
????/**
?????*?登陸操作
?????*?@throws?IdOrPasswdException?
?????*/
????public?void?login()?throws?IdOrPasswdException{
???? //獲取用戶名
???? String?userName=this.loginUI.getUserName();
???? if(userName==null?||?““.equals(userName.trim())){
???? throw?new?IdOrPasswdException(“用戶名不能為空“);
???? }
????
???? //獲取密碼
???? String?passWord=this.loginUI.getPassWord();
???? if(passWord==null?||?““.equals(passWord)){
???? throw?new?IdOrPasswdException(“密碼不能為空“);
???? }
????
???? //進行業務驗證--和系統中現有的用戶信息做比對
???? user=examService.login(userName?passWord);
????
???? //登陸成功
???? this.loginUI.setVisible(false);
???? this.menuUI.setVisible(true);
???? this.menuUI.updateUI(user);
????}
????
????//用于存儲考試界面中的當前試題的信息
????private?ExamQuestion?currentQuestion;
????//考試試題??10道題
????private?List?questions;
????/**
?????*?開始考試
?????*/
????public?void?start(){
???? if(this.isOver){
???? JOptionPane.showMessageDialog(this.menuUI?“本次考試已經結束“);
???? return?;
???? }
???? //獲取考試試題題庫,從試題庫中隨機抽取10道題
???? questions=examService.getExamQuestions();
???? //獲取試題庫中第一道試題
???? currentQuestion=questions.get(0);
???? //更新界面--當期試題
???? this.examUI.updateUI(currentQuestionquestions);
????
???? ExamInfo?examInfo=new?ExamInfo();
???? examInfo.setUser(user);
???? examInfo.settitle(Config.get(“title“));
???? examInfo.setTime(Config.getInt(“time“));
???? examInfo.setQuestionNum(questions.size());
???? this.examUI.updateUI(examInfo);
????
???? this.menuUI.setVisible(false);
???? this.examUI.setVisible(true);????
????
???? startTime();
????}
????
????private?Timer?time;
????/**
?????*?更新時間,每隔一秒更新一次
?????*/
????pu
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-08-27?13:47??elts\
?????文件?????????301??2012-08-22?20:31??elts\.classpath
?????文件?????????380??2012-08-26?18:00??elts\.project
?????目錄???????????0??2012-08-27?13:47??elts\.settings\
?????文件?????????598??2012-08-22?20:31??elts\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2012-08-27?13:47??elts\bin\
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\controller\
?????文件????????1571??2012-08-26?18:10??elts\bin\com\guo\elts\controller\ClientContext$1.class
?????文件????????6092??2012-08-26?18:10??elts\bin\com\guo\elts\controller\ClientContext.class
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\controller\exp\
?????文件?????????773??2012-08-26?18:01??elts\bin\com\guo\elts\controller\exp\IdOrPasswdException.class
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\entity\
?????文件????????1934??2012-08-26?18:07??elts\bin\com\guo\elts\entity\ExamInfo.class
?????文件????????1490??2012-08-26?18:01??elts\bin\com\guo\elts\entity\ExamQuestion.class
?????文件????????2446??2012-08-26?18:01??elts\bin\com\guo\elts\entity\QuestionInfo.class
?????文件????????1437??2012-08-26?18:01??elts\bin\com\guo\elts\entity\UserInfo.class
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\service\
?????文件????????4573??2012-08-26?18:01??elts\bin\com\guo\elts\service\EntityContext.class
?????文件????????2693??2012-08-26?18:04??elts\bin\com\guo\elts\service\ExamServiceBean.class
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\test\
?????文件????????1375??2012-08-26?18:01??elts\bin\com\guo\elts\test\LoginTest.class
?????目錄???????????0??2012-08-27?13:47??elts\bin\com\guo\elts\UI\
?????文件????????3573??2012-08-22?20:33??elts\bin\com\guo\elts\UI\exam.png
?????文件?????????689??2012-08-26?18:01??elts\bin\com\guo\elts\UI\ExamUI$1.class
?????文件?????????869??2012-08-26?18:01??elts\bin\com\guo\elts\UI\ExamUI$2.class
?????文件?????????868??2012-08-26?18:01??elts\bin\com\guo\elts\UI\ExamUI$3.class
?????文件?????????869??2012-08-26?18:01??elts\bin\com\guo\elts\UI\ExamUI$4.class
?????文件?????????889??2012-08-26?18:01??elts\bin\com\guo\elts\UI\ExamUI$MyCheckBox.class
............此處省略56個文件信息
評論
共有 條評論