`
yuyeyi
  • 浏览: 38179 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

编程实现序列化的Student(sno,sname)对象

阅读更多
import java.io.IOException; 
import java.io.ObjectInputStream; 
import java.io.ObjectOutputStream; 
import java.io.Serializable; 
import java.net.ServerSocket; 
import java.net.Socket; 

class Student implements Serializable { 
      private int sno; 
      private String sname; 

      public Student(int sno, String sname) { 
              this.sno = sno; 
              this.sname = sname; 
      } 

      public int getSno() { 
              return sno; 
      } 

      public void setSno(int sno) { 
              this.sno = sno; 
      } 

      public String getSname() { 
              return sname; 
      } 

      public void setSname(String sname) { 
              this.sname = sname; 
      } 

      @Override 
      public String toString() { 
              return "学号:" + sno + ";姓名:" + sname; 
      } 

} 

class MyClient extends Thread { 
      @Override 
      public void run() { 
              try { 
                    Socket s = new Socket("localhost", 9999); 
                    ObjectInputStream ois = new ObjectInputStream(s.getInputStream()); 
                    Student stu = (Student) ois.readObject(); 
                    System.out.println("客户端程序收到服务器端程序传输过来的学生对象>> " + stu); 
                    ois.close(); 
                    s.close(); 
              } catch (IOException e) { 
                    // TODO Auto-generated catch block 
                    e.printStackTrace(); 
              } catch (ClassNotFoundException e) { 
                    // TODO Auto-generated catch block 
                    e.printStackTrace(); 
              } 
      } 
} 

class MyServer extends Thread { 

      @Override 
      public void run() { 
              try { 
                    ServerSocket ss = new ServerSocket(9999); 
                    Socket s = ss.accept(); 
                    ObjectOutputStream ops = new ObjectOutputStream(s.getOutputStream()); 
                    Student stu = new Student(1, "赵本山"); 
                    ops.writeObject(stu); 
                    ops.close(); 
                    s.close(); 
                    ss.close(); 
              } catch (IOException e) { 
                    // TODO Auto-generated catch block 
                    e.printStackTrace(); 
              } 
      } 

} 

public class TestTransfer { 
      public static void main(String[] args) { 
              new MyServer().start(); 
              new MyClient().start(); 
      } 
} 
 
分享到:
评论

相关推荐

    100道java编程题及答案

    首先,第一道题目是创建一个`Student`类,这个类包含了学生的基本信息,如学号`sNO`、姓名`sName`、性别`sSex`、年龄`sAge`和Java课程成绩`sJava`。这个类还包含了一个带参数的构造方法,用于初始化这些成员变量。...

    2021-2022计算机二级等级考试试题及答案No.219.docx

    - 查询选修了5门课程的学生学号和姓名:`SELECT sno, sname FROM student WHERE sno IN (SELECT sno FROM sc GROUP BY sno HAVING COUNT(*) = 5)` 这些SQL语句展示了如何在关系型数据库中进行复杂的数据查询和操作...

    数据库管理系统试题及答案样本.doc

    select sName, avg(score) from Student, SC where Student.sNo = SC.sNo group by sName; (4)查询选修了课程号为“001”且成绩大于 80 的学生姓名和成绩; select sName, score from Student, SC where Student....

    移动软件开发-3期(KC015) 简答题.docx

    15. **NSCoding协议**:定义了两个方法`encodeWithCoder:`和`initWithCoder:`,分别用于序列化和反序列化对象,实现对象持久化。 16. **UIView不接受触屏事件**:可能是因为透明度设置为0,用户交互关闭,或者被...

    MySQLl数据库形成性考核作业及答案.docx

    SELECT sno, sname FROM student WHERE sno IN (SELECT sno FROM sc WHERE cno = (SELECT cno FROM course WHERE cname = '计算机原理')) ``` 2. 查询'周星驰'同学选修的课程名字: ```sql SELECT cname ...

    2021-2022计算机二级等级考试试题及答案No.19302.docx

    8. SQL查询中,使用LIKE操作符可以进行模式匹配,查找姓名第二个字为"t"的学生,正确的SQL语句是`SELECT Sno, sname FROM student WHERE sname LIKE "_t%"`。 9. 网页地址通常遵循特定格式,如...

    大学计算机第五章单元测验.pdf

    - 从数据表student中查询所有姓张的学生,使用LIKE操作符配合通配符%表示“以张开头”的名字,正确的SQL语句是`SELECT sno, sname FROM student WHERE sname LIKE N'张%'`。 10. 常量与变量: - 常量在内存中不...

    SQL语言 操纵 oracle数据库

    这个例子中,`student`表有五个字段,其中`sno`是主键,`sname`是唯一键,`ssex`字段受到检查约束,确保只能输入'男'或'女',`sage`字段则有范围限制,只允许16到20之间的数字。 3. **表中数据操纵** - **插入...

    2021-2022计算机二级等级考试试题及答案No.9856.docx

    18. SQL查询:使用LIKE操作符可以进行模式匹配,找到姓名的第二个字为"t"的学生,正确SQL语句是"SELECT Sno, sname FROM student WHERE sname LIKE '_t%'"。 19. 当前日期和时间函数:在VB或类似的编程语言中,Now...

    数据库原理及应用第二版第3章.ppt

    这个表包含了学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)和所在系(Sdept)这五个字段,其中Sno为主键,Sname不允许为空,Ssex只能为'男'或'女',Sage的取值范围限定在15至45之间,Sdept默认为'计算机...

    2021-2022计算机二级等级考试试题及答案No.4661.docx

    因此,要查询姓名中第二个字符为“t”的学生信息,正确的SQL语句为`SELECT Sno, sname FROM student WHERE sname LIKE '_t%';`。 ### 20. 反码与原码 - **知识点:** 正数的反码与其原码相同,即正数的原码和反码...

    2021-2022计算机二级等级考试试题及答案No.17885.docx

    14. **SQL查询**:使用LIKE操作符可以进行模糊匹配,`"%t_"`表示以"t"开头的任意字符序列,所以正确查询语句为`SELECT Sno, sname FROM student WHERE sname LIKE "_t%"`。 15. **PowerPoint版式设计**:幻灯片的...

    03-04数据库试卷+04-05试卷+标准答案1

    例如,查询不选CS110课的学生姓名用`SELECT SNAME FROM STUDENT WHERE SNO NOT IN (SELECT SNO FROM SC WHERE CNO = 'CS110')`。其他查询可以根据关系模式和需求构造相应的SQL语句,确保涵盖所有条件和限制。

    南京邮电大学软件工程实验报告.docx

    例如,STUDENT表包含学生编号(SNO)、姓名(SNAME)、性别(SEX)、班级号(CLASS_NO)和部门编号(DEPARTMENT_NO)等字段。 - **关系模型**:从ER图转换到数据库的关系模型,如将学生、课程、教师、选课和行政管理员等实体...

    学生管理系统代码

    在这个系统中,学生的信息包括学号(sno)、姓名(sname)和分数(score),这些数据被封装在一个名为`Student`的结构体中。系统通过一个名为`Seqlist`的结构体来表示整个学生数据库,它包含一个`Student`类型的数组...

    oracle数据库经典题目

    20.序列是一种可被多个用户使用的用于产生一系列唯一数字的数据库对象。尤其适合多用户环境中,可以生成唯一的序列号而没有磁盘I/O或事务处理锁定开销。 21. 一个表空间具有离线(OFFLINE)、在线(ONLINE)、只读...

Global site tag (gtag.js) - Google Analytics