服务器端
package com;
import com.mjh.Server.Server;
public class mian {
public static void main(String[] args) {
Server server=new Server();
server.show();
}
}
服务器
package com.mjh.Server;
import com.mjh.Service.bookService;
import com.mjh.dao.bookdao;
import com.mjh.daomian.book;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class Server {
private bookService bookService=new bookService();
public void show(){
try {
ServerSocket serverSocket = new ServerSocket(9993);
ExecutorService pool = Executors.newCachedThreadPool();
while (true) {
Socket accept = serverSocket.accept();
pool.execute(new Runnable() {
@Override
public void run() {
try {
ObjectOutputStream objectOutputStream = new ObjectOutputStream(accept.getOutputStream());
ObjectInputStream objectInputStream = new ObjectInputStream(accept.getInputStream());
String s =objectInputStream.readUTF();
if (s.equals("add")){
book o =(book) objectInputStream.readObject();
boolean b= bookService.add(o);
objectOutputStream.writeObject(b);
}
if (s.equals("list")){
Object o = objectInputStream.readObject();
System.out.println(o);
List<book> list = bookService.list();
objectOutputStream.writeObject(list);
}
if (s.equals("del")){
Integer o =(Integer) objectInputStream.readObject();
boolean del = bookService.del(o);
objectOutputStream.writeObject(del);
}
if (s.equals("update")){
book o = (book)objectInputStream.readObject();
boolean del =bookService.update(o);
objectOutputStream.writeObject(del);
}
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
});
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
service
package com.mjh.Service;
import com.mjh.dao.bookdao;
import com.mjh.daomian.book;
import java.util.List;
public class bookService {
private static bookdao bookdao=new bookdao();
private static int i=1;
public boolean add(book book) {
book.setId(i++);
boolean add = bookdao.add(book);
return add;
}
public List<book> list() {
List<book> list = bookdao.list();
return list;
}
public boolean del(Integer o) {
boolean del = bookdao.del(o);
return del;
}
public boolean update(book o) {
return bookdao.update(o);
}
}
dao层
package com.mjh.dao;
import com.mjh.daomian.book;
import java.util.ArrayList;
import java.util.List;
public class bookdao {
private static List<book> list=new ArrayList<>();
public boolean add(book o) {
return list.add(o);
}
public List<book> list() {
return list;
}
public boolean del(Integer o) {
for (book book : list) {
if (book.getId()==o){
return list.remove(book);
}
}
return false;
}
public boolean update(book o) {
for (int i = 0; i < list.size(); i++) {
if (o.getId()==list.get(i).getId()){
list.set(i,o);
return true;
}
}
return false;
}
}
package com.mjh.dao;
import com.mjh.daomian.book;
import java.util.ArrayList;
import java.util.List;
public class bookdao {
private static List<book> list=new ArrayList<>();
public boolean add(book o) {
return list.add(o);
}
public List<book> list() {
return list;
}
public boolean del(Integer o) {
for (book book : list) {
if (book.getId()==o){
return list.remove(book);
}
}
return false;
}
public boolean update(book o) {
for (int i = 0; i < list.size(); i++) {
if (o.getId()==list.get(i).getId()){
list.set(i,o);
return true;
}
}
return false;
}
}
实体类 如果是分开项目要在俩个项目中都有
package com.mjh.daomian;
import java.io.Serializable;
public class book implements Serializable {
private static final long serialVersionUID = 1862984939669927676L;
int id;
String name;
String author;
double price;
public book() {
}
public book(int id, String name, String author, double price) {
this.id = id;
this.name = name;
this.author = author;
this.price = price;
}
public book(String name, String author, double price) {
this.name = name;
this.author = author;
this.price = price;
}
public static long getSerialVersionUID() {
return serialVersionUID;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
客户端
显示
package com.mjh.view;
import com.mjh.daomian.book;
import com.mjh.server.BookService;
import java.util.Scanner;
import java.util.List;
import java.util.Scanner;
public class Booklview {
static Scanner scanner = new Scanner(System.in);
private static BookService bookService = new BookService();
public static void main(String[] args) {
while (true) {
menu();
System.out.println("请选择您的 编号1-5");
int i = scanner.nextInt();
switch (i) {
case 1:
list();
break;
case 2:
add();
break;
case 3:
update();
break;
case 4:
del();
break;
case 5:
return;
default:
System.out.println("从新输入");
}
}
}
private static void del() {
System.out.println("4 删除用户");
System.out.println("输入删除 id");
int id = scanner.nextInt();
boolean flag= bookService.del(id);
System.out.println((flag ? "成功" : "失败"));
}
private static void update() {
System.out.println("3修改用户");
System.out.println("请输入 id");
int id = scanner.nextInt();
System.out.println("输入姓名");
String name = scanner.next();
System.out.println("输入作者");
String author= scanner.next();
System.out.println("输入价格");
double price=scanner.nextDouble();
//创建对象
book book=new book(id,name,author,price);
boolean flag = bookService.update(book);
System.out.println((flag ? "成功" : "失败"));
}
private static void add() {
System.out.println("2添加用户");
//提示输入姓名
System.out.println("输入姓名");
String name = scanner.next();
System.out.println("输入作者");
String author=scanner.next();
System.out.println("输入价钱");
double price=scanner.nextDouble();
//创建对象
book book = new book(name, author,price);
//调用方法
boolean flag = bookService.add(book);
System.out.println((flag ? "成功" : "失败"));
}
private static void list() {
System.out.println("1用户列表");
List<book> list = bookService.list();
for (book book : list) {
System.out.println(book);
}
}
private static void menu() {
System.out.println("-------------------------------------------");
System.out.println("-----欢迎使用用户管理系统----");
System.out.println("1用户列表");
System.out.println("2添加用户");
System.out.println("3修改用户");
System.out.println("4 删除用户");
System.out.println("5退出系统");
}
}
server
package com.mjh.server;
import com.mjh.daomian.book;
import com.mjh.net.client;
import java.util.List;
public class BookService {
private client client=new client();
public boolean add(book book) {
boolean add = (boolean) client.show("add", book);
return add;
}
public List<book> list() {
return (List<book> )client.show("list", null);
}
public boolean del(int id) {
return (boolean) client.show("del",id);
}
public boolean update(book book) {
return (boolean) client.show("update",book);
}
}
客户端
package com.mjh.net;
import com.mjh.daomian.book;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
public class client {
public Object show(String op, Object book) {
try {
Socket socket = new Socket("127.0.0.1", 9993);
ObjectOutputStream objectOutputStream = new ObjectOutputStream(socket.getOutputStream());
ObjectInputStream objectInputStream = new ObjectInputStream(socket.getInputStream());
//输出数据
objectOutputStream.writeUTF(op);
objectOutputStream.writeObject(book);
//读取数据
Object o = objectInputStream.readObject();
objectInputStream.close();
objectOutputStream.close();
return o;
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return null;
}
}