请求帮助,哇,题

darkfxux7788 2007-10-08 03:43:58


问题描述:
Unix系统的用户信息通常都放置在/etc/passwd文件中,每个用户的信息占用一行,文件格式如下:
username:password:uid: gid:gcos-field:home-dir:login-shell

每个用户都会属于不同的组,组信息通常放置在/etc/group文件中,每个组信息占用一行,文件格式如下:
groupname:password: gid:user-list

一个用户可以属于不同的组,一个组也可以包含多个用户。用户信息中的password和gcos-field信息,组信息中的password信息在我们的系统中被忽略。
要求:


现在要建立一个用户管理系统,将所有的类型都放置在tarena.com.usermgmt包下:

1. 尽量采用JavaBean的方式建立类型User和Group,类型除了包含以上提供的信息外,还要反映出两个类型之间的关系,同时这两个类型的对象能在网络上传输。

2. 创建类型DataBuilder,通过解析字符串(文件/etc/passwd和/etc/group中的串)创建User和Group对象,DataBuilder类图为。

DataBuilder

+parseUser(line : String) : User
+parseGroup(line : String): Group


3. 创建类型FileAnalyzer, 读取文件/etc/passwd和/etc/group的内容,使用DataBuilder,将文件内容完全反映到内存中。

4 . 编写一个Socket的客户程序UserClient,将3中产生的用户和组对象传递到服务器上。

5 . 编写一个Socket 的多线程服务程序UserServer,接收UserClient发送的对象,并在内存中形成所有服务器上的用户和组的内存映像。
...全文
129 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
seaforce 2007-10-09
  • 打赏
  • 举报
回复
两个JAVABEAN也拿出来抢分哈,,,哈哈...
关注中...
nuoboxgx 2007-10-09
  • 打赏
  • 举报
回复
你这个题目要50分以上才能有人帮你做,20分就回答2个类吧,哈哈
nuoboxgx 2007-10-09
  • 打赏
  • 举报
回复
package tarena.com.usermgmt;

import java.util.ArrayList;
import java.util.List;

public class Group
{
String groupname;

String gid;

List<User> user_list = new ArrayList<User>();

public String getGid()
{
return gid;
}

public void setGid(String gid)
{
this.gid = gid;
}

public String getGroupname()
{
return groupname;
}

public void setGroupname(String groupname)
{
this.groupname = groupname;
}

public List<User> getUser_list()
{
return user_list;
}

public void setUser_list(List<User> user_list)
{
this.user_list = user_list;
}
}
nuoboxgx 2007-10-09
  • 打赏
  • 举报
回复
package tarena.com.usermgmt;

public class User
{
String username;

String uid;

String gid;

String home_dir;

String login_shell;

public String getGid()
{
return gid;
}

public void setGid(String gid)
{
this.gid = gid;
}

public String getHome_dir()
{
return home_dir;
}

public void setHome_dir(String home_dir)
{
this.home_dir = home_dir;
}

public String getLogin_shell()
{
return login_shell;
}

public void setLogin_shell(String login_shell)
{
this.login_shell = login_shell;
}

public String getUid()
{
return uid;
}

public void setUid(String uid)
{
this.uid = uid;
}

public String getUsername()
{
return username;
}

public void setUsername(String username)
{
this.username = username;
}
}
nuoboxgx 2007-10-09
  • 打赏
  • 举报
回复
这个题目可难了哦
嘎嘎
Peterry 2007-10-08
  • 打赏
  • 举报
回复
也帮顶一下,虽然我都没看懂是什么意思......
yuyu622 2007-10-08
  • 打赏
  • 举报
回复
有难度.......................顶................................顶了也白顶,我怕你等一年也没有收获.

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧