一、系统介绍
本系统通过文件系统实现实现宠物的增删改查。
二、系统展示
1.主界面
2.增加宠物
3.删除宠物
4.修改宠物
5.查询宠物
6.模块查询
三、系统实现
Cat.java
package com.sjsq; public class Cat implements Pet { String age; String name; String price; String color; String pic_routh; static String kind = "猫"; Cat(String name, String age, String color, String price, String routh) { this.name = name; this.age = age; this.color = color; this.price = price; this.pic_routh = routh; } public String getKind() { return kind; } public String getName() { return name; } public String getColor() { return color; } public String getAge() { return age; } public String getPrice() { return price; } public String getPic_routh() { return pic_routh; } public void Change(Pet pet) { if (!pet.getName().equals("")) name = pet.getName(); if (!pet.getAge().equals("")) age = pet.getAge(); if (!pet.getColor().equals("")) color = pet.getColor(); if (!pet.getPrice().equals("")) price = pet.getPrice(); if (!pet.getPic_routh().equals("")) pic_routh = pet.getPic_routh(); } }
Dog.java
package com.sjsq; public class Dog implements Pet { String age; String name; String price; String color; String pic_routh; static String kind = "狗"; Dog(String name, String age, String color, String price, String routh) { this.name = name; this.color = color; this.age = age; this.price = price; this.pic_routh = routh; } public String getKind() { return kind; } public String getName() { return name; } public String getColor() { return color; } public String getAge() { return age; } public String getPrice() { return price; } public String getPic_routh() { return pic_routh; } public void Change(Pet pet) { if (!pet.getName().equals("")) name = pet.getName(); if (!pet.getAge().equals("")) age = pet.getAge(); if (!pet.getColor().equals("")) color = pet.getColor(); if (!pet.getPrice().equals("")) price = pet.getPrice(); if (!pet.getPic_routh().equals("")) pic_routh = pet.getPic_routh(); } }
Mouse.java
package com.sjsq; public class Mouse implements Pet { String age; String name; String price; String color; String pic_routh; static String kind = "鼠"; Mouse(String name, String age, String color, String price, String routh) { this.name = name; this.color = color; this.age = age; this.price = price; this.pic_routh = routh; } public String getKind() { return kind; } public String getName() { return name; } public String getColor() { return color; } public String getAge() { return age; } public String getPrice() { return price; } public String getPic_routh() { return pic_routh; } public void Change(Pet pet) { if (!pet.getName().equals("")) name = pet.getName(); if (!pet.getAge().equals("")) age = pet.getAge(); if (!pet.getColor().equals("")) color = pet.getColor(); if (!pet.getPrice().equals("")) price = pet.getPrice(); if (!pet.getPic_routh().equals("")) pic_routh = pet.getPic_routh(); } }
MainScreen.java
package com.sjsq; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; public class MainScreen extends JFrame { PetShop pet_shop; JButton dog, cat, mouse, otherpets; // JLabel dog_lab,cat_lab,mouse_lab,otherpets_lab; ImageIcon dog_icon, cat_icon, mouse_icon, otherpets_icon; JButton Add, Delete, Change, Search; Container con = getContentPane(); FileReader filereader = null; BufferedReader bufferedreader = null; FileWriter fileWritter = null; PetInput pet_input; PetInterface petinterface; public MainScreen() { super("宠物商店"); setLayout(null); setSize(650, 450); setVisible(true); //setLocation(450, 50); setLocationRelativeTo(null); pet_shop = new PetShop(0); dog = new JButton("狗"); cat = new JButton("猫"); mouse = new JButton("鼠"); otherpets = new JButton("其他"); Add = new JButton("增加宠物"); Delete = new JButton("删除宠物"); Change = new JButton("更改宠物"); Search = new JButton("查找宠物"); dog.setBounds(120, 120, 100, 30); con.add(dog); cat.setBounds(120, 160, 100, 30); con.add(cat); mouse.setBounds(120, 200, 100, 30); con.add(mouse); otherpets.setBounds(120, 240, 100, 30); con.add(otherpets); Add.setBounds(420, 120, 100, 30); con.add(Add); Delete.setBounds(420, 160, 100, 30); con.add(Delete); Change.setBounds(420, 200, 100, 30); con.add(Change); Search.setBounds(420, 240, 100, 30); con.add(Search); ImageIcon icon = new ImageIcon("src/PictureSource/主界面背景图.jpg"); JLabel picture = new JLabel(icon); con.add(picture); picture.setBounds(0, 0, 700, 400); init_button_listener(); file_read(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } class ImagePanel extends JPanel { private Image backgroundImage; ImagePanel() { backgroundImage = new ImageIcon("src/PictureSource/主界面背景图.jpg").getImage(); } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); if (backgroundImage != null) { g.drawImage(backgroundImage, 0, 0, getWidth(), getHeight(), this); } } } void file_read() { try { filereader = new FileReader("src/Pet information.txt"); bufferedreader = new BufferedReader(filereader); String s = null; Pet p; while ((s = bufferedreader.readLine()) != null) { String[] ss = new String[6]; ss = s.split(" "); if (ss[0].equals("狗")) p = new Dog(ss[1], ss[2], ss[3], ss[4], ss[5]); else if (ss[0].equals("猫")) p = new Cat(ss[1], ss[2], ss[3], ss[4], ss[5]); else if (ss[0].equals("鼠")) p = new Mouse(ss[1], ss[2], ss[3], ss[4], ss[5]); else p = new OtherPets(ss[1], ss[2], ss[3], ss[4], ss[5]); pet_shop.add(p); } bufferedreader.close(); } catch (IOException e) { e.printStackTrace(); } } void init_button_listener() { dog.addMouseListener(new MouseListener() { public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { int[] pos = new int[110]; int num = 0; Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) if (p[i].getKind().equals("狗")) pos[num++] = i; petinterface = new PetInterface(MainScreen.this, pos, num, p); petinterface.setVisible(true); } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { } }); cat.addMouseListener(new MouseListener() { public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { int[] pos = new int[110]; int num = 0; Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) if (p[i].getKind().equals("猫")) pos[num++] = i; petinterface = new PetInterface(MainScreen.this, pos, num, p); petinterface.setVisible(true); } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { } }); mouse.addMouseListener(new MouseListener() { public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { int[] pos = new int[110]; int num = 0; Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) if (p[i].getKind().equals("鼠")) pos[num++] = i; petinterface = new PetInterface(MainScreen.this, pos, num, p); petinterface.setVisible(true); } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { } }); otherpets.addMouseListener(new MouseListener() { public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { int[] pos = new int[110]; int num = 0; Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) if (p[i].getKind().equals("其他")) pos[num++] = i; petinterface = new PetInterface(MainScreen.this, pos, num, p); petinterface.setVisible(true); } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { } }); Add.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { pet_input = new PetInput(MainScreen.this, true); pet_input.setVisible(true); if (pet_shop.add(pet_input)) { try { fileWritter = new FileWriter("src/Pet information.txt"); Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) { fileWritter.write(p[i].getKind() + " "); fileWritter.write(p[i].getName() + " "); fileWritter.write(p[i].getAge() + " "); fileWritter.write(p[i].getColor() + " "); fileWritter.write(p[i].getPrice() + " "); fileWritter.write(p[i].getPic_routh() + "\r\n"); } fileWritter.close(); } catch (Exception event) { event.printStackTrace(); } } } }); Delete.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (pet_shop.delete()) { try { fileWritter = new FileWriter("src/Pet information.txt"); Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) { fileWritter.write(p[i].getKind() + " "); fileWritter.write(p[i].getName() + " "); fileWritter.write(p[i].getAge() + " "); fileWritter.write(p[i].getColor() + " "); fileWritter.write(p[i].getPrice() + " "); fileWritter.write(p[i].getPic_routh() + "\r\n"); } fileWritter.close(); } catch (Exception event) { event.printStackTrace(); } } } }); Change.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int pos = pet_shop.change(); if (pos != -1) { pet_input = new PetInput(MainScreen.this, true); pet_input.setVisible(true); if (pet_input.flag == 1) { pet_shop.pets[pos].Change(pet_input.pet); JOptionPane.showMessageDialog(null, "宠物修改成功!", "提示", JOptionPane.INFORMATION_MESSAGE); try { fileWritter = new FileWriter("src/Pet information.txt"); Pet[] p = pet_shop.pets; for (int i = 0; i < pet_shop.num; i++) { fileWritter.write(p[i].getKind() + " "); fileWritter.write(p[i].getName() + " "); fileWritter.write(p[i].getAge() + " "); fileWritter.write(p[i].getColor() + " "); fileWritter.write(p[i].getPrice() + " "); fileWritter.write(p[i].getPic_routh() + "\r\n"); } fileWritter.close(); } catch (Exception event) { event.printStackTrace(); } } else JOptionPane.showMessageDialog(null, "宠物修改失败!", "提示", JOptionPane.INFORMATION_MESSAGE); } } }); Search.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int[] pos = new int[110]; int num = pet_shop.search(pos); Pet[] p = pet_shop.pets; if (num > 0) { petinterface = new PetInterface(MainScreen.this, pos, num, p); petinterface.setVisible(true); } } }); } public static void main(String[] args) { new MainScreen(); } }
PetShop.java
package com.sjsq; import javax.swing.JFrame; import javax.swing.JOptionPane; public class PetShop { Pet[] pets; int num; PetInput pet_input; PetShop(int len) { num = len; pets = new Pet[110]; } void add(Pet pet) { pets[num++] = pet; } boolean add(PetInput pet_input) { if (pet_input.flag == 1) { pets[num++] = pet_input.pet; JOptionPane.showMessageDialog(null, "宠物添加成功!", "提示", JOptionPane.INFORMATION_MESSAGE); return true; } else { JOptionPane.showMessageDialog(null, "宠物添加失败!", "提示", JOptionPane.INFORMATION_MESSAGE); return false; } } boolean delete() { String keyWord = JOptionPane.showInputDialog(null, "请输入要删除的宠物信息:", "名字"); int flag = -1; for (int i = 0; i < num; i++) if (pets[i].getName().equals(keyWord)) { flag = i; break; } if (flag == -1) { JOptionPane.showMessageDialog(null, "未查找到该宠物!", "提示", JOptionPane.INFORMATION_MESSAGE); return false; } else { for (int i = flag; i < num - 1; i++) pets[i] = pets[i + 1]; num--; JOptionPane.showMessageDialog(null, "已成功删除该宠物!", "提示", JOptionPane.INFORMATION_MESSAGE); return true; } } int change() { String keyWord = JOptionPane.showInputDialog(null, "请输入要更改的宠物信息:", "名字"); int pos = -1; for (int i = 0; i < num; i++) if (pets[i].getName().equals(keyWord)) { pos = i; break; } if (pos == -1) { JOptionPane.showMessageDialog(null, "未查找到该宠物!", "提示", JOptionPane.INFORMATION_MESSAGE); JOptionPane.showMessageDialog(null, "宠物修改失败!", "提示", JOptionPane.INFORMATION_MESSAGE); } return pos; } int search(int[] pos) { String keyWord = JOptionPane.showInputDialog(null, "请输入要查找的宠物信息:", "名字"); int n = 0; for (int i = 0; i < num; i++) { System.out.println(pets[i].getName()); if (pets[i].getName().equals(keyWord)) pos[n++] = i; } if (n == 0) JOptionPane.showMessageDialog(null, "未查找到该宠物!", "提示", JOptionPane.INFORMATION_MESSAGE); return n; } }
四、其他
1.其他系统实现
JavaWeb系统系列实现
Java+JSP实现学生图书管理系统
Java+JSP实现学生信息管理系统
Java+Servlet+JSP实现学生成绩管理系统
Java+Servlet+JSP实现宠物诊所管理系统
Java+SSM+Easyui实现网上考试系统
Java+Springboot+H-ui实现营销管理系统
Java+Springboot+Mybatis+Bootstrap实现网上商城系统
JavaSwing系统系列实现
Java+Swing实现斗地主游戏
Java+Swing实现图书管理系统
Java+Swing实现医院管理系统
Java+Swing实现仓库管理系统
Java+Swing实现考试管理系统
Java+Swing实现通讯录管理系统
Java+Swing实现学生信息管理系统
Java+Swing实现学生宿舍管理系统
Java+Swing实现学生选课管理系统
Java+Swing实现学生成绩管理系统
Java+Swing实现学校教材管理系统
Java+Swing实现学校教务管理系统
Java+Swing实现企业人事管理系统
Java+Swing实现电子相册管理系统
Java+Swing实现自助取款机(ATM)系统
Java+Swing实现超市管理系统-TXT存储信息
Java+Swing实现宠物商店管理系统-TXT存储信息