📄 examclient.java
字号:
package exam.web;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import exam.dao.CourseDao;
import exam.dao.CourseDaoImpByWeb;
import exam.dao.PaperDao;
import exam.dao.PaperDaoImpByWeb;
import exam.dao.ScoreDao;
import exam.dao.ScoreDaoImpByWeb;
import exam.dao.StudentDao;
import exam.dao.StudentDaoImpByWeb;
import exam.gui.LoginFrame;
import exam.model.Course;
import exam.model.Paper;
import exam.model.Student;
/**
* @author 董晓炜
*
* Feb 13, 2009 1:06:48 PM
*/
public class ExamClient {
private Socket s;//实现Socket的复用
private Student student;
private Course course;
private Paper paper;
public void close(){
if(s!=null){
try {
s.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public ExamClient()throws IOException{
try {
s=new Socket("192.168.0.3",8888);
} catch (IOException e) {
throw e;
}
}
public Socket getS() {
return s;
}
public void setS(Socket s) {
this.s = s;
}
public boolean stop()throws IOException{
try {
BufferedReader br=new BufferedReader(new InputStreamReader(s.getInputStream()));
String str=null;
str=br.readLine();
if(str.equals("stop")){
return true;
}
if(str.equals("again")){
return false;
}
} catch (IOException e) {
throw e;
}
return false;
}
public Student login(JTextField jtf,JPasswordField jpf){//从客户端得到学号和密码
StudentDao std=new StudentDaoImpByWeb(s);
student=std.getStudent(jtf.getText(), String.valueOf(jpf.getPassword()));
return student;
}
public Course getCourse() {
return course;
}
public void setCourse(Course course) {
this.course = course;
}
public Course[] getCourses(){//从服务器端得到所有科目
CourseDao cd=new CourseDaoImpByWeb(s);
return cd.getCourse();
}
public Paper getPaper(Course course){//从客户端得到所选择的科目,然后从服务器端得到试卷
this.course=course;
PaperDao pd=new PaperDaoImpByWeb(s);
paper=pd.getPaper(course.getCourseFile());
return paper;
}
public void send(char Score,int score){
ScoreDao sd=new ScoreDaoImpByWeb(s,student);
sd.addScore(student.getId(), Score,score,course.getCourseName());
}
public Student getStudent() {
return student;
}
public void setStudent(Student st) {
this.student = st;
}
public Paper getPaper() {
return paper;
}
public void setPaper(Paper paper) {
this.paper = paper;
}
public static void main(String [] args){
ExamClient ec=null;
LoginFrame a=null;
try {
ec=new ExamClient();
a=new LoginFrame(ec);
} catch (IOException e) {
JOptionPane.showMessageDialog(a, "服务器无连接");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -