仓库管理系统Dao模式连接数据库(有代码,有注释,有数据库文件,只求能给个赞)

小张在此请各位朋友们给个赞啦!!!!当然有什么意见和建议也可以尽情的说,小张感激不尽!!!

仓库管理系统

注:初学者可能会出现导入问题,我就连导入的一起加上了(可以建个类直接复制,你懂的)

先在src目录下建4个包

分别是:net.wms.bean,net.wms.dao,net.wms.util,net.wms.view,

net.wms.bean包下的类
User类(用户类)
public class User {
	private int id;
	private String username; 
	private String userpwd;
	private String flag;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getusername() {
		return username;
	}
	public void setusername(String username) {
		this.username = username;
	}
	public String getuserpwd() {
		return userpwd;
	}
	public void setuserpwd(String userpwd) {
		this.userpwd = userpwd;
	}
	public String getFlag() {
		return flag;
	}
	public void setFlag(String flag) {
		this.flag = flag;
	}
}
Goods类(货物类)
public class Goods {
	private int id;
	private String goodsname;
	private String goodsstyle;
	private int goodsnumber;
	private String storageID;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getGoodsname() {
		return goodsname;
	}
	public void setGoodsname(String goodsname) {
		this.goodsname = goodsname;
	}
	public String getGoodsstyle() {
		return goodsstyle;
	}
	public void setGoodsstyle(String goodsstyle) {
		this.goodsstyle = goodsstyle;
	}
	public int getGoodsnumber() {
		return goodsnumber;
	}
	public void setGoodsnumber(int goodsnumber) {
		this.goodsnumber = goodsnumber;
	}
	public String getStorageID() {
		return storageID;
	}
	public void setStorageID(String storageID) {
		this.storageID = storageID;
	}	
}
Storage类(仓库类)
public class Storage {
	private int id;
	private String storagename;
	private String storagestyle;
	private int storageID;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getStoragename() {
		return storagename;
	}
	public void setStoragename(String storagename) {
		this.storagename = storagename;
	}
	public String getStoragestyle() {
		return storagestyle;
	}
	public void setStoragestyle(String storagestyle) {
		this.storagestyle = storagestyle;
	}
	public int getStorageID() {
		return storageID;
	}
	public void setStorageID(int storageID) {
		this.storageID = storageID;
	}
	
}
net.wms.dao包下的接口和实现类
Goodsmanagement接口
public interface Goodsmanagement {
			//查询
			public void Query(String sql) throws SQLException;
			//增加
			public void Add(Goods goods,String sql)throws SQLException;
			//删除
			public void Delete(String sql)throws SQLException;
			//修改
			public void Update(Goods goods,String sql)throws SQLException;
}
Goodsmanagement 接口实现类
package net.wms.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
import net.wms.bean.Goods;
import net.wms.util.DB;
public class GoodsmanagementImp implements Goodsmanagement{
			public static Vector vec = new Vector();
			//获取数据库连接
			Connection conn = DB.getConnection();
			//查询方法
			public void Query(String sql) throws SQLException {
				// TODO Auto-generated method stub
				//加载SQL语句 
				PreparedStatement pra = conn.prepareStatement(sql);
				//放入结果集
				ResultSet rs = pra.executeQuery();
				vec.removeAllElements();
				while(rs.next()) {
					Vector v = new Vector();
					v.add(rs.getInt("id"));
					v.add(rs.getString("goodsname"));
					v.add(rs.getString("goodsstyle"));
					v.add(rs.getInt("goodsnumber"));
					v.add(rs.getInt("storageID"));
					vec.add(v);
				}
			}
			
			public boolean Query1(Goods goods, String sql) throws SQLException {
				// TODO Auto-generated method stub
				//加载SQL语句
				PreparedStatement pra = conn.prepareStatement(sql);
				//放入结果集
				ResultSet rs = pra.executeQuery();
				//遍历结果集
				return false;
			}
			
			public void Add(Goods goods, String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.setString(1, goods.getGoodsname());
				pra.setString(2, goods.getGoodsstyle());
				pra.setInt(3, goods.getGoodsnumber());
				pra.setString(4, goods.getStorageID());
				pra.executeUpdate();
				pra.close();
			}

			public void Delete(String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.executeUpdate();
				pra.close();
			}

			public void Update(Goods goods, String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.setString(1, goods.getGoodsname());
				pra.setString(2, goods.getGoodsstyle());
				pra.setInt(3, goods.getGoodsnumber());
				pra.setString(4, goods.getStorageID());
				pra.executeUpdate();
				pra.close();
			}
}
LoginUse接口
package net.wms.dao;

import java.sql.SQLException;

import net.wms.bean.User;

public interface LoginUse {
		//查询
		public boolean 
		Query(User user,String sql) throws SQLException;
		//增加
		public void 
		Add(User user,String sql)throws SQLException;
		//删除
		public void Delete(User user,String sql)throws SQLException;
		//修改
		public void 
		Update(User user,String sql)throws SQLException;
}
LoginUse接口实现类
package net.wms.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.text.html.HTMLDocument.HTMLReader.ParagraphAction;

import net.wms.bean.User;
import net.wms.util.DB;

public class LoginUseImp implements LoginUse{
		public static Vector vec = new Vector();
		//获取数据库连接
		Connection conn = DB.getConnection();
		//查询方法
		public boolean Query(User user, String sql) throws SQLException {
			// TODO Auto-generated method stub
			//加载SQL语句
			PreparedStatement pra = conn.prepareStatement(sql);
			pra.setString(1, user.getusername());
			pra.setString(2, user.getuserpwd());
			//放入结果集
			ResultSet rs = pra.executeQuery();
			//遍历结果集
			while(rs.next()){
				
				//获取数据库列字段
				String name = rs.getString("username");
				String pass = rs.getString("userpwd");
				//判断用户名和密码是否符合数据库数据
				if(name.equals(user.getusername()) && pass.equals(user.getuserpwd())) {
					//符合数据返回 true
					return true;
				}else{
					//不符合数据返回false
					return false;
				}
			}
			return false;
		}
		
		public boolean Query1(User user, String sql) throws SQLException {
			// TODO Auto-generated method stub
			//加载SQL语句
			PreparedStatement pra = conn.prepareStatement(sql);
			//放入结果集
			ResultSet rs = pra.executeQuery();
			//遍历结果集
			while(rs.next()){
				
				//获取数据库列字段
				String name = rs.getString("username");
				String pass = rs.getString("userpwd");
				String flag = rs.getString("flag");
				//判断用户名和密码是否符合数据库数据
				if(name.equals(user.getusername()) ) {
					//符合数据返回 true
					user.setusername(name);
					user.setuserpwd(pass);
					user.setFlag(flag);
					return true;
				}else{
					//不符合数据返回false
					return false;
				}
			}
			return false;
		}
		
		public void Add(User user, String sql) throws SQLException {
			// TODO Auto-generated method stub
			PreparedStatement pra = conn.prepareStatement(sql);
			pra.setString(1, user.getusername());
			pra.setString(2, user.getuserpwd());
			pra.setString(3, user.getFlag());
			pra.executeUpdate();
			pra.close();
		}

		public void Delete(User user, String sql) throws SQLException {
			// TODO Auto-generated method stub
			PreparedStatement pra = conn.prepareStatement(sql);
			pra.executeUpdate();
			pra.close();
		}

		public void Update(User user, String sql) throws SQLException {
			// TODO Auto-generated method stub
			PreparedStatement pra = conn.prepareStatement(sql);
			pra.executeUpdate();
			pra.close();
		}
		public void Select(String sql) throws SQLException {
			PreparedStatement pra = conn.prepareStatement(sql);
			ResultSet rs = pra.executeQuery();
			vec.removeAllElements();
			while(rs.next()) {
				Vector v = new Vector();
				v.add(rs.getInt("id"));
				v.add(rs.getString("username"));
				if(rs.getString("flag").equals("1")) {
					v.add("普通用户");
				}else {
					v.add("管理员");
				}
				vec.add(v);
			}
		}
}

Storagemanagement接口
package net.wms.dao;

import java.sql.SQLException;

import net.wms.bean.Storage;

public interface Storagemanagement {
			//查询
			public void Query(String sql) throws SQLException;
			//增加
			public void Add(Storage storage,String sql)throws SQLException;
			//删除
			public void Delete(String sql)throws SQLException;
			//修改
			public void 
			Update(Storage storage,String sql)throws SQLException;
}

Storagemanagement接口实现类
package net.wms.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;

import net.wms.bean.Storage;
import net.wms.util.DB;

public class StoragemanagementImp implements Storagemanagement{
			public static Vector vec = new Vector();
			public static Vector vr = new Vector();
			//获取数据库连接
			Connection conn = DB.getConnection();
			//查询方法
			public void Query(String sql) throws SQLException {
				// TODO Auto-generated method stub
				//加载SQL语句
				PreparedStatement pra = conn.prepareStatement(sql);
				//放入结果集
				ResultSet rs = pra.executeQuery();
				vec.removeAllElements();
				while(rs.next()) {
					Vector v = new Vector();
					v.add(rs.getInt("id"));
					v.add(rs.getString("storagename"));
					v.add(rs.getString("storagestyle"));
					v.add(rs.getInt("storageID"));
					vec.add(v);
				}
			}
			
			public void Query1(String sql) throws SQLException {
				// TODO Auto-generated method stub
				//加载SQL语句
				PreparedStatement pra = conn.prepareStatement(sql);
				//放入结果集
				ResultSet rs = pra.executeQuery();
				vr.removeAllElements();
				while(rs.next()) {
					vr.add(rs.getInt("storageID"));
				}
			}
			
			public void Add(Storage storage, String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.setString(1, storage.getStoragename());
				pra.setString(2, storage.getStoragestyle());
				pra.setInt(3, storage.getStorageID());
				pra.executeUpdate();
				pra.close();
			}

			public void Delete(String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.executeUpdate();
				pra.close();
			}

			public void Update(Storage storage, String sql) throws SQLException {
				// TODO Auto-generated method stub
				PreparedStatement pra = conn.prepareStatement(sql);
				pra.setString(1, storage.getStoragename());
				pra.setString(2, storage.getStoragestyle());
				pra.setInt(3, storage.getStorageID());
				pra.executeUpdate();
				pra.close();
			}
}

net.wms.util包下的类(主要连接数据库)
DB类
	package net.wms.util;

import java.sql.Connection;
import java.sql.DriverManager;

public class DB {
	//数据库地址
	private String Driver_name =
			"jdbc:mysql://localhost:3306/wms";
	//数据库用户名
	private String USER = "root";
	//数据库密码
	private String PASS = "88888888";
	//数据库连接
	public static Connection con;
	//构造方法
	public DB(){
		try {
			//加载驱动
			Class.forName("com.mysql.jdbc.Driver");
			//获取连接
			con = 
			DriverManager.getConnection(
			Driver_name, USER, PASS);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	//获取连接
	public static Connection getConnection(){
		if(con == null){
			new DB();
		}
		return con;
	}
}
net.wms.view包下的类(主要是用户,商品,仓库增删改查,就不一一介绍)
package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;

public class Adminupdate extends IndexAdmin{
	
	JLabel uname;
	JTextField pwd;
	JTextField pass;
	User user = new User();
	
	public Adminupdate(String name) {
		super(name);
		init(name);
	}
	
	public void init(String name) {
		user.setusername(name);
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		JLabel usertitle = new JLabel("修改密码");
		JLabel username = new JLabel("用  户  名:");
		uname = new JLabel();
		JLabel userpwd = new JLabel("新  密  码:");
		pwd = new JTextField();
		JLabel userpass = new JLabel("再输次密码:");
		pass = new JTextField();
		JButton submit = new JButton("修改");
		JButton reset = new JButton("重置");
		usertitle.setBounds(130, 60, 100, 40);
		usertitle.setFont(d);
		username.setBounds(50, 140, 140, 30);
		username.setFont(f);
		uname.setBounds(170, 140, 150, 30);
		uname.setFont(f);
		uname.setText(name);
		userpwd.setBounds(50, 200, 140, 30);
		userpwd.setFont(f);
		pwd.setBounds(170, 200, 150, 30);
		pwd.setFont(f);
		userpass.setBounds(50, 260, 140, 30);
		userpass.setFont(f);
		pass.setBounds(170, 260, 150, 30);
		pass.setFont(f);
		submit.setBounds(90, 320, 80, 30);
		submit.setFont(f);
		reset.setBounds(200, 320, 80, 30);
		reset.setFont(f);
		index.add(usertitle);
		index.add(username);
		index.add(uname);
		index.add(userpwd);
		index.add(pwd);
		index.add(pass);
		index.add(userpass);
		index.add(submit);
		index.add(reset);
		reset.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				pwd.setText("");
				pass.setText("");
			}
		});
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				LoginUseImp l = new LoginUseImp();
				try {
					l.Delete(user, "update users set userpwd='"+pass.getText()+"' where username='"+user.getusername()+"'");
					JOptionPane.showMessageDialog(null, "修改成功");
				} catch (SQLException e1) {
					// TODO 自动生成的 catch 块
					e1.printStackTrace();
				}
			}
		});
	}

}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.Goods;
import net.wms.dao.GoodsmanagementImp;
import net.wms.dao.StoragemanagementImp;

public class Goodsadd extends IndexAdmin{
	JTextField name;
	JTextField style;
	JTextField number;
	JComboBox id;
	Goods goods = new Goods();
	
	public Goodsadd(String name) {
		super(name);
		init();
	}
	public void init() {
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		JLabel goodstitle = new JLabel("添加商品");
		JLabel goodsname = new JLabel("商品名:");
		name = new JTextField();
		JLabel goodsstyle = new JLabel("类  型:");
		style = new JTextField();
		JLabel goodsnumber = new JLabel("数  量:");
		number = new JTextField();
		JLabel storageid = new JLabel("仓库号:");
		StoragemanagementImp s = new StoragemanagementImp();
		try {
			s.Query1("select storageID from storage");
			id = new JComboBox(StoragemanagementImp.vr);
		} catch (SQLException e2) {
			// TODO 自动生成的 catch 块
			e2.printStackTrace();
		}
		JButton submit = new JButton("提交");
		JButton reset = new JButton("重置");
		goodstitle.setBounds(130, 40, 100, 40);
		goodstitle.setFont(d);
		goodsname.setBounds(60, 120, 80, 30);
		goodsname.setFont(f);
		name.setBounds(140, 120, 150, 30);
		name.setFont(f);
		goodsstyle.setBounds(60, 180, 80, 30);
		goodsstyle.setFont(f);
		style.setBounds(140, 180, 150, 30);
		style.setFont(f);
		goodsnumber.setBounds(60, 240, 80, 30);
		goodsnumber.setFont(f);
		number.setBounds(140, 240, 150, 30);
		number.setFont(f);
		storageid.setBounds(60, 300, 80, 30);
		storageid.setFont(f);
		id.setBounds(140, 300, 150, 30);
		id.setFont(f);
		submit.setBounds(90, 360, 80, 30);
		submit.setFont(f);
		reset.setBounds(200, 360, 80, 30);
		reset.setFont(f);
		index.add(goodstitle);
		index.add(goodsname);
		index.add(name);
		index.add(goodsstyle);
		index.add(style);
		index.add(goodsnumber);
		index.add(number);
		index.add(storageid);
		index.add(id);
		index.add(submit);
		index.add(reset);
		
		reset.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				name.setText("");
				style.setText("");
				number.setText("");
			}
		});
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				if(name.getText().equals("") || style.getText().equals("") || number.getText().equals("")) {
					JOptionPane.showMessageDialog(null,"请输入内容");
				} else {
					goods.setGoodsname(name.getText());
					goods.setGoodsstyle(style.getText());
					goods.setGoodsnumber(Integer.parseInt(number.getText()));
					goods.setStorageID(id.getSelectedItem().toString());
					GoodsmanagementImp g = new GoodsmanagementImp();
					try {
						g.Add(goods, "insert into goods(goodsname,goodsstyle,goodsnumber,storageID)" + "values(?,?,?,?)");
						name.setText("");
						style.setText("");
						number.setText("");
						JOptionPane.showMessageDialog(null, "添加成功");
					} catch (SQLException e1) {
						// TODO 自动生成的 catch 块
						e1.printStackTrace();
					}
				}
			}
		});
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import net.wms.dao.GoodsmanagementImp;

public class Goodsdelete extends IndexAdmin{
	int id ;
	//声明表格
	private JTable table;
	
	public Goodsdelete(String name) {
		super(name);
		init();
	}
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("商品信息");
		title.setFont(t);
		title.setBounds(130, 40, 100, 40);
		final Vector c = new Vector();
		//添加数据
		c.add("编号");
		c.add("商品名称");
		c.add("商品类型");
		c.add("商品数量");
		c.add("仓库编号");
		final GoodsmanagementImp g = new GoodsmanagementImp();
		try {
			g.Query("select * from goods");
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		//创建表格
		table = new JTable(g.vec,c);
		table.setFont(f);
		//为表格添加鼠标单击事件
		table.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				// 获取表格中的ID
				id = (Integer) table.getValueAt(
				table.getSelectedRow(), 0);
				System.out.println(id);
				super.mouseClicked(e);
			}
		});
		//创建Jscrollpane
		final JScrollPane js = new JScrollPane(table);
		js.setBounds(40, 120, 300, 200);
		//创建删除按钮
		final JButton delete = new JButton("删除");
		//为按钮创建监听事件
		delete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				//判断Id是否在列表内
				if(id == 0){
					JOptionPane.showMessageDialog(null, "删除失败请选择需要删除的记录!");
				}else{
				try {
					//给出提示
					//4个参数:1.null 2.提示内容 3.标题 4.按钮类型
					int mess = JOptionPane.showConfirmDialog(
							null,"确定删除记录?","友情提示:",
							JOptionPane.YES_NO_OPTION );
					//点击确定按钮之后的事件
					//0 == 确定 ,1 == 取消
					if(mess == 0){
						//调用删除方法
						g.Delete("delete from goods where id ="+id);
						//提示删除成功
						JOptionPane.showMessageDialog(null, "删除成功");
						g.Query("select * from goods");
						//创建表格
						JTable new_table = new JTable(g.vec,c);
						new_table.setFont(f);
						//创建Jscrollpane
						JScrollPane p = new JScrollPane(new_table);
						//设置新组建的大小
						p.setBounds(40, 120, 300, 200);
						//移除旧组件
						index.remove(js);
						//添加新组件
						index.add(p);
						//重绘组键
						index.repaint();
					}
					
				} catch (Exception e2) {
					// TODO: handle exception
				}
				}
			}
		});
		//设置位置及大小
		delete.setBounds(150, 350, 80,30);
		index.add(title);
		index.add(js);
		//添加按钮
		index.add(delete);
	}
}

package net.wms.view;

import java.awt.Font;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import net.wms.dao.GoodsmanagementImp;

public class GoodsSelect extends Index{
	
	private JTable table;
	int id ;
	
	public GoodsSelect(String name) {
		super(name);
		init();
	}
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("商品信息");
		title.setFont(t);
		title.setBounds(130, 40, 100, 40);
		final Vector c = new Vector();
		//添加数据
		c.add("编号");
		c.add("商品名称");
		c.add("商品类型");
		c.add("商品数量");
		c.add("仓库编号");
		final GoodsmanagementImp g = new GoodsmanagementImp();
		//创建表格
		table = new JTable(g.vec,c);
		table.setFont(f);
		//创建Jscrollpane
		final JScrollPane js = new JScrollPane(table);
		js.setBounds(40, 120, 300, 200);
		try {
			g.Query("select * from goods");
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		index.add(title);
		index.add(js);
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;

import net.wms.bean.Goods;
import net.wms.dao.GoodsmanagementImp;
import net.wms.dao.StoragemanagementImp;

public class GoodsUpdate extends IndexAdmin{
	int id ;
	//声明表格
	private JTable table;
	JTextField name;
	JTextField style;
	JTextField number;
	JComboBox s_id;
	
	public GoodsUpdate(String name) {
		super(name);
		init();
	}
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("商品信息");
		JLabel goodsname = new JLabel("商品名称:");
		goodsname.setBounds(60, 180, 80, 30);
		name = new JTextField();
		name.setBounds(140, 180, 150, 30);
		JLabel goodsstyle = new JLabel("商品类型:");
		goodsstyle.setBounds(60, 230, 80, 30);
		style = new JTextField();
		style.setBounds(140, 230, 150, 30);
		JLabel goodsnumber = new JLabel("商品数量:");
		goodsnumber.setBounds(60, 280, 80, 30);
		number = new JTextField();
		number.setBounds(140, 280, 150, 30);
		JLabel storageid = new JLabel("仓库编号:");
		storageid.setBounds(60, 330, 80, 30);
		StoragemanagementImp s = new StoragemanagementImp();
		try {
			s.Query1("select storageID from storage");
			s_id = new JComboBox(StoragemanagementImp.vr);
		} catch (SQLException e3) {
			e3.printStackTrace();
		}
		s_id.setBounds(140, 330, 150, 30);
		title.setFont(t);
		title.setBounds(130, 10, 100, 30);
		final Vector c = new Vector();
		//添加数据
		c.add("编号");
		c.add("商品名称");
		c.add("商品类型");
		c.add("商品数量");
		c.add("仓库编号");
		final GoodsmanagementImp g = new GoodsmanagementImp();
		try {
			g.Query("select * from goods");
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		//创建表格
		table = new JTable(g.vec,c);
		table.setFont(f);
		//为表格添加鼠标单击事件
		table.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				// 获取表格中的ID
				//获取每条记录所对应的id
				id = (Integer)table.getValueAt(table.getSelectedRow(), 0);
				//获取部门名称
				String gname = (String)table.getValueAt(table.getSelectedRow(), 1);
				//获取部门编号
				String gstyle = (String)table.getValueAt(table.getSelectedRow(), 2);
				//获取部门描述
				String gnumber=table.getValueAt(table.getSelectedRow(), 3).toString();
				//将数据设置进文本框
				name.setText(gname);
				style.setText(gstyle);
				number.setText(gnumber);
				super.mouseClicked(e);
			}
		});
		//创建Jscrollpane
		final JScrollPane js = new JScrollPane(table);
		js.setBounds(40, 60, 300, 100);
		//创建删除按钮
		final JButton update = new JButton("修改");
		//为按钮创建监听事件
		update.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				//判断Id是否在列表内
				if(id == 0){
					JOptionPane.showMessageDialog(null, "修改失败请选择需要修改的记录!");
				}else{
				try {
					//给出提示
					//4个参数:1.null 2.提示内容 3.标题 4.按钮类型
					int mess = JOptionPane.showConfirmDialog(
							null,"确定修改记录?","友情提示:",
							JOptionPane.YES_NO_OPTION );
					//点击确定按钮之后的事件
					//0 == 确定 ,1 == 取消
					if(mess == 0){
						//调用删除方法
						Goods goods = new Goods();
						goods.setGoodsname(name.getText());
						goods.setGoodsstyle(style.getText());
						goods.setGoodsnumber(Integer.parseInt(number.getText()));
						goods.setStorageID(s_id.getSelectedItem().toString());
						g.Update(goods,"update goods set goodsname = ?,goodsstyle=?,goodsnumber=?,storageID=? where id = "+ id);
						//提示删除成功
						JOptionPane.showMessageDialog(null, "修改成功");
						name.setText("");
						style.setText("");
						number.setText("");
						g.Query("select * from goods");
						//原理:移除原组件,添加新组件
						//创建表格
						JTable new_table = new JTable(g.vec,c);
						new_table.setFont(f);
						//创建Jscrollpane
						JScrollPane p = new JScrollPane(new_table);
						//设置新组建的大小
						p.setBounds(40, 60, 300, 100);
						//移除旧组件
						index.remove(js);
						//添加新组件
						index.add(p);
						//重绘组键
						index.repaint();
					}
					
				} catch (Exception e2) {
					// TODO: handle exception
				}
				}
			}
		});
		//设置位置及大小
		update.setBounds(150, 380, 80,30);
		index.add(title);
		index.add(goodsname);
		index.add(name);
		index.add(goodsstyle);
		index.add(style);
		index.add(goodsnumber);
		index.add(number);
		index.add(storageid);
		index.add(s_id);
		index.add(js);
		index.add(update);
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class Index {
	//声明对象
	public  JFrame index;
	private JMenuBar management;
	private JMenu user;
	private JMenu goods;
	private JMenu storage;
	private JMenuItem exit;
	private JMenuItem usernews;
	private JMenuItem userupdate;
	private JMenuItem goodsselect;
	private JMenuItem storageselect;
	
	//创建构造函数
	public Index(String name) {
		indexadmin();
		//添加对象
		user.add(usernews);
		user.add(userupdate);
		user.add(exit);
		goods.add(goodsselect);
		storage.add(storageselect);
		management.add(user);
		management.add(goods);
		management.add(storage);
		init(name);
		action(name);
	}
	
	
	private void init(String name) {
		//初始化矿建index
		index = new JFrame("欢迎用户"+name+"使用本系统");
		//设置框架大小和位置
		index.setBounds(500, 100, 400, 500);
		index.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//将菜单栏设置进框架
		index.setJMenuBar(management);
		index.setLayout(null);
		//设置随机背景
		((JComponent) index.getContentPane()).setOpaque(false);
		ImageIcon img = null;
		Random r = new Random();
		int i = r.nextInt(5);
		switch (i) {
		case 0:
			img = new ImageIcon("Images//主背景.jpg");
			break;
		case 1:
			img = new ImageIcon("Images//主背景1.jpg");
			break;
		case 2:
			img = new ImageIcon("Images//主背景2.jpg");
			break;
		case 3:
			img = new ImageIcon("Images//主背景3.jpg");
			break;
		case 4:
			img = new ImageIcon("Images//主背景4.jpg");
			break;
		default:
			break;
		}
		JLabel background = new JLabel(img);
		index.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
		background.setBounds(0, 20, img.getIconWidth(), img.getIconHeight());
		index.setVisible(true);
	}
	
	public void indexadmin() {
		//初始化对象
		Font f = new Font("楷体", Font.BOLD, 15);
		management = new JMenuBar();
		user = new JMenu(" 用户管理");
		user.setFont(f);
		goods = new JMenu(" 商品管理");
		goods.setFont(f);
		storage = new JMenu(" 仓库管理");
		storage.setFont(f);
		exit = new JMenuItem("更换用户");
		exit.setFont(f);
		usernews = new JMenuItem("个人信息");
		usernews.setFont(f);
		userupdate = new JMenuItem("密码修改");
		userupdate.setFont(f);
		goodsselect = new JMenuItem("商品浏览");
		goodsselect.setFont(f);
		storageselect = new JMenuItem("仓库浏览");
		storageselect.setFont(f);
	}
	
	//为所有的菜单条目设置监听事件
	private void action(final String name) {
		exit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				Login.main(null);
			}
		});
		usernews.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Usernews(name);
			}
		});
		userupdate.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Userupdate(name);
			}
		});
		goodsselect.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new GoodsSelect(name);
			}
		});
		storageselect.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Storageselect(name);
			}
		});
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class IndexAdmin {
	//声明对象
	public  JFrame index;
	private JMenuBar management;
	private JMenu user;
	private JMenu goods;
	private JMenu storage;
	private JMenuItem exit;
	private JMenuItem useradd;
	private JMenuItem userdelete;
	private JMenuItem userupdate;
	private JMenuItem userselect;
	private JMenuItem goodsadd;
	private JMenuItem goodsdelete;
	private JMenuItem goodsupdate;
	private JMenuItem storageadd;
	private JMenuItem storagedelete;
	private JMenuItem storageupdate;
	Font f = new Font("楷体", Font.BOLD, 15);
	
	//构造函数
	public IndexAdmin(String name) {
		indexadmin();
		//菜单的添加
		//给用户菜单添加条目
		user.add(useradd);
		user.add(userselect);
		user.add(userdelete);
		user.add(userupdate);
		user.add(exit);
		//给商品菜单添加条目
		goods.add(goodsadd);
		goods.add(goodsdelete);
		goods.add(goodsupdate);
		//给仓库菜单添加条目
		storage.add(storageadd);
		storage.add(storagedelete);
		storage.add(storageupdate);
		//将菜单添加到菜单栏里
		management.add(user);
		management.add(goods);
		management.add(storage);
		init(name);
		action(name);
	}
	
	private void init(String name) {
		//初始化框架
		index = new JFrame("欢迎管理员"+name+"使用本系统");
		//设置框架大小及位置
		index.setBounds(500, 100, 400, 500);
		index.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//将菜单栏设置进框架
		index.setJMenuBar(management);
		//清空框架格式
		index.setLayout(null);
		//将框架转换为容器
		((JComponent) index.getContentPane()).setOpaque(false);
		//声明图片对象
		ImageIcon img = null;
		//产生随机数
		Random r = new Random();
		int i = r.nextInt(5);
		//用随机数的值获取不同的图片
		switch (i) {
		case 0:
			img = new ImageIcon("Images//主背景.jpg");
			break;
		case 1:
			img = new ImageIcon("Images//主背景1.jpg");
			break;
		case 2:
			img = new ImageIcon("Images//主背景2.jpg");
			break;
		case 3:
			img = new ImageIcon("Images//主背景3.jpg");
			break;
		case 4:
			img = new ImageIcon("Images//主背景4.jpg");
			break;
		default:
			break;
		}
		//初始化标签
		JLabel background = new JLabel(img);
		//将标签添加进框架index(添加进容器中)
		index.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
		//设置标签大小
		background.setBounds(0, 20, img.getIconWidth(), img.getIconHeight());
		//设置可视化
		index.setVisible(true);
	}

	public void indexadmin() {
		//对象初始化以及设置字体
		management = new JMenuBar();
		//菜单初始化
		user = new JMenu(" 用户管理");
		user.setFont(f);
		goods = new JMenu(" 商品管理");
		goods.setFont(f);
		storage = new JMenu(" 仓库管理");
		storage.setFont(f);
		//菜单条目初始化
		exit = new JMenuItem("更换用户");
		exit.setFont(f);
		useradd = new JMenuItem("添加用户");
		useradd.setFont(f);
		userdelete = new JMenuItem("删除用户");
		userdelete.setFont(f);
		userupdate = new JMenuItem("密码修改");
		userupdate.setFont(f);
		userselect = new JMenuItem("查询用户");
		userselect.setFont(f);
		goodsadd = new JMenuItem("商品添加");
		goodsadd.setFont(f);
		goodsdelete = new JMenuItem("商品删除");
		goodsdelete.setFont(f);
		goodsupdate = new JMenuItem("商品更新");
		goodsupdate.setFont(f);
		storageadd = new JMenuItem("仓库添加");
		storageadd.setFont(f);
		storagedelete = new JMenuItem("仓库删除");
		storagedelete.setFont(f);
		storageupdate = new JMenuItem("仓库更新");
		storageupdate.setFont(f);
	}
	
	//给所有的菜单条目设置监听事件
	private void action(final String name) {
		exit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				//将原来页面设置为不可见
				index.setVisible(false);
				//调用函数转到登陆页面
				Login.main(null);
			}
		});
		useradd.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				//将原来页面设置为不可见
				index.setVisible(false);
				//用构造函数获取新页面
				new Useradd(name); 
			}
		});
		userselect.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Userselect(name);
			}
		});
		userdelete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Userdelete(name);
			}
		});
		userupdate.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Adminupdate(name);
			}
		});
		goodsadd.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Goodsadd(name);
			}
		});
		goodsdelete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Goodsdelete(name);
			}
		});
		goodsupdate.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new GoodsUpdate(name);
			}
		});
		storageadd.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Storageadd(name);
			}
		});
		storagedelete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Storagedelete(name);
			}
		});
		storageupdate.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//界面转换
				index.setVisible(false);
				new Storageupdate(name);
			}
		});
	}
}
package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;
/**
 * 		登陆界面
 *	1、创建登陆界面,初始化上面的对象
 *	2、美化登陆界面,设置各个对象的大小、位置、字体以及界面的背景
 *	3、给按钮设置监听事件
 *
 */

public class Login {
	    //初始化字体
		Font d = new Font("楷体", Font.BOLD, 22);
		Font f = new Font("楷体", Font.BOLD, 15);
		// 初始化对象
		JFrame logingui = new JFrame("用户登录界面");
		JLabel userlogin = new JLabel("用户登录");
		JLabel username = new JLabel("用户名:");
		JLabel password = new JLabel("密 码:");
		JLabel usertyle = new JLabel("用户类型");
		JTextField name = new JTextField();
		JTextField pwd = new JPasswordField();
		JComboBox box = new JComboBox(new String[]{"管理员","普通用户"} );
		JButton login = new JButton("登陆");
		//给User类初始化对象user
		User user = new User();
	public void LoginGui() {
		// 设置对象
		logingui.setBounds(450, 200, 400, 300);
		//设置退出
		logingui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//取消框架格式
		logingui.setLayout(null);
		//设置位置、大小和字体
		userlogin.setBounds(140, 30, 150, 30);
		userlogin.setFont(d);
		username.setBounds(50, 80, 100, 30);
		username.setFont(f);
		password.setBounds(50, 120, 100, 30);
		password.setFont(f);
		usertyle.setBounds(70, 160, 100, 30);
		usertyle.setFont(f);
		name.setBounds(140, 80, 180, 30);
		name.setFont(f);
		pwd.setBounds(140, 120, 180, 30);
		box.setBounds(170, 160, 100, 30);
		box.setFont(f);
		login.setBounds(150, 200, 80, 30);
		login.setFont(f);
		// 添加对象
		logingui.add(userlogin);
		logingui.add(username);
		logingui.add(password);
		logingui.add(usertyle);
		logingui.add(name);
		logingui.add(pwd);
		logingui.add(box);
		logingui.add(login);
		// 窗体可视化
		logingui.setVisible(true);
		//设置登录图形界面的背景图片
		((JComponent) logingui.getContentPane()).setOpaque(false); //将框架强转为容器          
        ImageIcon img = new ImageIcon("Images//登录背景.jpg"); //传入背景图片路径
		JLabel background = new JLabel(img);//将图片放进标签里
		logingui.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));//将标签放进容器里
		background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());//设置标签的大小
		//给下拉框设置选择监听事件
		box.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//判断选择选项是否和下拉框数据一致
				if(box.getSelectedItem().equals("管理员")){
					//设置标志量的值
					user.setFlag("2");
				}else{
					user.setFlag("1");
				}
			}
		});
		//给登录按钮设置监听事件
		login.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
					//提取文本框里的用户名和密码
					String name_text = name.getText();
					String pwd_text = pwd.getText();
					//将得到的值存入user对象里面
					user.setusername(name_text);
					user.setuserpwd(pwd_text);
					//给登陆接口实现类初始化对象
					LoginUseImp l = new LoginUseImp();
					//获取标志量
					String state = user.getFlag();
					//判断标志量,设置文本框的默认值为管理员
					if(state != "1" && state != "2") {
						state = "2";
					}
					//判断文本框值是不是管理员
					if(state == "2") {
						try {
							//执行sql语句,进行数据库添加
							boolean flag = l.Query(user, "select * from users where username=? and userpwd=? and flag="+state);
							if(flag) {
								//文本提示框
								JOptionPane.showMessageDialog(null, "登陆成功");
								//界面转换,隐藏原来界面
								logingui.setVisible(false);
								//构造新的界面
								new IndexAdmin(name_text);
							} else {
								//文本提示框
								JOptionPane.showMessageDialog(null, "登陆失败,请检查用户名和密码");
								//设置用户名框和密码框的值为空
								name.setText("");
								pwd.setText("");
							}
						} catch (SQLException e1) {
							e1.printStackTrace();
						}
				////判断是不是普通用户
				} else if(state == "1") {
					try {
						//执行sql语句
						boolean flag = l.Query(user, "select * from users where username=? and userpwd=? and flag="+state);
						if(flag) {
							JOptionPane.showMessageDialog(null, "登陆成功");
							logingui.setVisible(false);	
							new Index(name_text);
						} else {
							JOptionPane.showMessageDialog(null, "登陆失败,请检查用户名和密码");
							name.setText("");
							pwd.setText("");
						}
					} catch (SQLException e1) {
						
						e1.printStackTrace();
					}
				}
			}
		});
	}
	//整个程序执行的入口
	public static void main(String[] args) {
		Login l = new Login();
		l.LoginGui();
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.Storage;
import net.wms.dao.StoragemanagementImp;

public class Storageadd extends IndexAdmin{
	
	JTextField name;
	JTextField style;
	JTextField id;
	Storage storage = new Storage();
	
	public Storageadd(String name) {
		super(name);
		init();
	}
	public void init() {
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		JLabel storagetitle = new JLabel("仓库添加");
		JLabel storagename = new JLabel("仓库名:");
		name = new JTextField();
		JLabel storagestyle = new JLabel("类  型:");
		style = new JTextField();
		JLabel storageid = new JLabel("编  号:");
		id = new JTextField();
		JButton submit = new JButton("提交");
		JButton reset = new JButton("重置");
		storagetitle.setBounds(130, 60, 100, 40);
		storagetitle.setFont(d);
		storagename.setBounds(60, 140, 80, 30);
		storagename.setFont(f);
		name.setBounds(140, 140, 150, 30);
		name.setFont(f);
		storagestyle.setBounds(60, 200, 80, 30);
		storagestyle.setFont(f);
		style.setBounds(140, 200, 150, 30);
		style.setFont(f);
		storageid.setBounds(60, 260, 80, 30);
		storageid.setFont(f);
		id.setBounds(140, 260, 150, 30);
		id.setFont(f);
		submit.setBounds(90, 320, 80, 30);
		submit.setFont(f);
		reset.setBounds(200, 320, 80, 30);
		reset.setFont(f);
		index.add(storagetitle);
		index.add(storagename);
		index.add(name);
		index.add(storagestyle);
		index.add(style);
		index.add(storageid);
		index.add(id);
		index.add(submit);
		index.add(reset);
		reset.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				name.setText("");
				style.setText("");
				id.setText("");
			}
		});
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				if(name.getText().equals("") || style.getText().equals("") || id.getText().equals("")) {
					JOptionPane.showMessageDialog(null,"请输入内容");
				} else {
					storage.setStoragename(name.getText());
					storage.setStoragestyle(style.getText());
					storage.setStorageID(Integer.parseInt(id.getText()));
					StoragemanagementImp s = new StoragemanagementImp();
					try {
						s.Add(storage, "insert into storage(storagename,storagestyle,storageID)" + "values(?,?,?)");
						name.setText("");
						style.setText("");
						id.setText("");
						JOptionPane.showMessageDialog(null, "添加成功");
					} catch (SQLException e1) {
						// TODO 自动生成的 catch 块
						e1.printStackTrace();
					}
				}
			}
		});
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import net.wms.dao.GoodsmanagementImp;
import net.wms.dao.StoragemanagementImp;

public class Storagedelete extends IndexAdmin{
	int id ;
	//声明表格
	private JTable table;
	
	public Storagedelete(String name) {
		super(name);
		init();
	}
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("仓库信息");
		title.setFont(t);
		title.setBounds(130, 40, 100, 40);
		final Vector c = new Vector();
		//添加数据
		c.add("编号");
		c.add("仓库名称");
		c.add("仓库类型");
		c.add("仓库编号");
		final StoragemanagementImp s = new StoragemanagementImp();
		try {
			s.Query("select * from storage");
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		//创建表格
		table = new JTable(s.vec,c);
		table.setFont(f);
		//为表格添加鼠标单击事件
		table.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				// 获取表格中的ID
				id = (Integer) table.getValueAt(
				table.getSelectedRow(), 0);
				System.out.println(id);
				super.mouseClicked(e);
			}
		});
		//创建Jscrollpane
		final JScrollPane js = new JScrollPane(table);
		js.setBounds(40, 120, 300, 200);
		//创建删除按钮
		final JButton delete = new JButton("删除");
		//为按钮创建监听事件
		delete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				//判断Id是否在列表内
				if(id == 0){
					JOptionPane.showMessageDialog(null, "删除失败请选择需要删除的记录!");
				}else{
				try {
					//给出提示
					//4个参数:1.null 2.提示内容 3.标题 4.按钮类型
					int mess = JOptionPane.showConfirmDialog(
							null,"确定删除记录?","友情提示:",
							JOptionPane.YES_NO_OPTION );
					//点击确定按钮之后的事件
					//0 == 确定 ,1 == 取消
					if(mess == 0){
						//调用删除方法
						s.Delete("delete from storage where id ="+id);
						//提示删除成功
						JOptionPane.showMessageDialog(null, "删除成功");
						s.Query("select * from storage");
						//创建表格
						JTable new_table = new JTable(s.vec,c);
						new_table.setFont(f);
						//创建Jscrollpane
						JScrollPane p = new JScrollPane(new_table);
						//设置新组建的大小
						p.setBounds(40, 120, 300, 200);
						//移除旧组件
						index.remove(js);
						//添加新组件
						index.add(p);
						//重绘组键
						index.repaint();
					}
					
				} catch (Exception e2) {
					// TODO: handle exception
				}
				}
			}
		});
		//设置位置及大小
		delete.setBounds(150, 350, 80,30);
		index.add(title);
		index.add(js);
		//添加按钮
		index.add(delete);
	}
}

package net.wms.view;

import java.awt.Font;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import net.wms.dao.StoragemanagementImp;

public class Storageselect extends Index{

	int id;
	private JTable table;
	
	public Storageselect(String name) {
		super(name);
		init();
	}
	@SuppressWarnings("unchecked")
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("仓库信息");
		title.setFont(t);
		title.setBounds(130, 40, 100, 40);
		Vector v = new Vector();
		v.add("编号");
		v.add("仓库名称");
		v.add("仓库类型");
		v.add("仓库编号");
		StoragemanagementImp s = new StoragemanagementImp();
		table = new JTable(s.vec,v);
		table.setFont(f);
		JScrollPane jp = new JScrollPane(table);
		jp.setBounds(40, 120, 300, 200);
		try {
			s.Query("select * from storage");
		} catch (SQLException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
		index.add(title);
		index.add(jp);
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;

import net.wms.bean.Goods;
import net.wms.bean.Storage;
import net.wms.dao.GoodsmanagementImp;
import net.wms.dao.StoragemanagementImp;

public class Storageupdate extends IndexAdmin{
	int id ;
	//声明表格
	private JTable table;
	JTextField name;
	JTextField style;
	JTextField s_id;
	
	public Storageupdate(String name) {
		super(name);
		init();
	}
	public void init() {
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		JLabel title = new JLabel("仓库信息");
		JLabel storagename = new JLabel("仓库名称:");
		storagename.setBounds(60, 220, 80, 30);
		storagename.setFont(f);
		name = new JTextField();
		name.setBounds(140, 220, 150, 30);
		name.setFont(f);
		JLabel storagestyle = new JLabel("仓库类型:");
		storagestyle.setBounds(60, 270, 80, 30);
		storagestyle.setFont(f);
		style = new JTextField();
		style.setBounds(140, 270, 150, 30);
		style.setFont(f);
		JLabel storageid = new JLabel("仓库编号:");
		storageid.setBounds(60, 320, 80, 30);
		storageid.setFont(f);
		s_id = new JTextField();
		s_id.setBounds(140, 320, 150, 30);
		s_id.setFont(f);
		title.setFont(t);
		title.setBounds(130, 30, 100, 30);
		final Vector c = new Vector();
		//添加数据
		c.add("编号");
		c.add("仓库名称");
		c.add("仓库类型");
		c.add("仓库编号");
		final StoragemanagementImp s = new StoragemanagementImp();
		try {
			s.Query("select * from storage");
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		//创建表格
		table = new JTable(s.vec,c);
		table.setFont(f);
		//为表格添加鼠标单击事件
		table.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				// 获取表格中的ID
				//获取每条记录所对应的id
				id = (Integer)table.getValueAt(table.getSelectedRow(), 0);
				//获取部门名称
				String sname = (String)table.getValueAt(table.getSelectedRow(), 1);
				//获取部门编号
				String sstyle =(String)table.getValueAt(table.getSelectedRow(), 2);
				//获取部门描述
				String sid=(String)table.getValueAt(table.getSelectedRow(), 3).toString();
				//将数据设置进文本框
				name.setText(sname);
				style.setText(sstyle);
				s_id.setText(sid);
				super.mouseClicked(e);
			}
		});
		//创建Jscrollpane
		final JScrollPane js = new JScrollPane(table);
		js.setBounds(40, 70, 300, 130);
		//创建删除按钮
		final JButton update = new JButton("修改");
		//为按钮创建监听事件
		update.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				//判断Id是否在列表内
				if(id == 0){
					JOptionPane.showMessageDialog(null, "修改失败请选择需要修改的记录!");
				}else{
				try {
					//给出提示
					//4个参数:1.null 2.提示内容 3.标题 4.按钮类型
					int mess = JOptionPane.showConfirmDialog(
							null,"确定修改记录?","友情提示:",
							JOptionPane.YES_NO_OPTION );
					//点击确定按钮之后的事件
					//0 == 确定 ,1 == 取消
					if(mess == 0){
						//调用删除方法
						Storage storage = new Storage();
						storage.setStoragename(name.getText());
						storage.setStoragestyle(style.getText());
						storage.setStorageID(Integer.parseInt(s_id.getText()));
						s.Update(storage,"update storage set storagename = ?,storagestyle=?,storageID=? where id = "+ id);
						//提示删除成功
						JOptionPane.showMessageDialog(null, "修改成功");
						s.Query("select * from storage");
						//原理:移除原组件,添加新组件
						//创建表格
						JTable new_table = new JTable(s.vec,c);
						new_table.setFont(f);
						//创建Jscrollpane
						JScrollPane p = new JScrollPane(new_table);
						//设置新组建的大小
						p.setBounds(40, 70, 300, 130);
						//移除旧组件
						index.remove(js);
						//添加新组件
						index.add(p);
						//重绘组键
						index.repaint();
					}
					
				} catch (Exception e2) {
					// TODO: handle exception
				}
				}
			}
		});
		//设置位置及大小
		update.setBounds(150, 380, 80,30);
		index.add(title);
		index.add(storagename);
		index.add(name);
		index.add(storagestyle);
		index.add(style);
		index.add(storageid);
		index.add(s_id);
		index.add(js);
		//添加按钮
		index.add(update);
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;

public class Useradd extends IndexAdmin{
	//声明部分对象
	JTextField name;
	JTextField pwd;
	JTextField style;
	//为User类初始化对象user
	User user = new User();
	
	//构造函数
	public Useradd(String name) {
		super(name);
		init();
	}
	
	
	public void init() {
		//初始化字体
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		//初始化对象
		JLabel usertitle = new JLabel("添加用户");
		JLabel username = new JLabel("用户名:");
		name = new JTextField();
		JLabel userpwd = new JLabel("密  码:");
		pwd = new JTextField();
		JLabel userstyle = new JLabel("类  型:");
		style = new JTextField();
		JButton submit = new JButton("提交");
		JButton reset = new JButton("重置");
		//设置对象的位置、大小和字体
		usertitle.setBounds(130, 60, 100, 40);
		usertitle.setFont(d);
		username.setBounds(60, 140, 80, 30);
		username.setFont(f);
		name.setBounds(140, 140, 150, 30);
		name.setFont(f);
		userpwd.setBounds(60, 200, 80, 30);
		userpwd.setFont(f);
		pwd.setBounds(140, 200, 150, 30);
		pwd.setFont(f);
		userstyle.setBounds(60, 260, 80, 30);
		userstyle.setFont(f);
		style.setBounds(140, 260, 150, 30);
		style.setFont(f);
		submit.setBounds(90, 320, 80, 30);
		submit.setFont(f);
		reset.setBounds(200, 320, 80, 30);
		reset.setFont(f);
		//将对象添加到对象中
		index.add(usertitle);
		index.add(username);
		index.add(name);
		index.add(userpwd);
		index.add(pwd);
		index.add(style);
		index.add(userstyle);
		index.add(submit);
		index.add(reset);
		
		//为重置按钮设置监听事件
		reset.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//清空用户名框、密码框、用户类型
				name.setText("");
				pwd.setText("");
				style.setText("");
			}
		});
		
		//未提交按钮设置监听事件
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//判断文本框是否为空
				if(name.getText().equals("") || pwd.getText().equals("") || style.getText().equals("")) {
					//为空,弹出提示框
					JOptionPane.showMessageDialog(null,"请输入内容");
				} else {
					//不为空
					//从文本框中提取数据并存放到user对象中
					user.setusername(name.getText());
					user.setuserpwd(pwd.getText());
					user.setFlag(style.getText());
					//为登陆接口实现类初始化对象
					LoginUseImp l = new LoginUseImp();
					try {
						//执行sql语句
						l.Add(user, "insert into users(username,userpwd,flag) values(?,?,?)");
						//清空文本框
						name.setText("");
						pwd.setText("");
						style.setText("");
						//添加成功提示框
						JOptionPane.showMessageDialog(null, "添加成功");
					} catch (SQLException e1) {
						e1.printStackTrace();
					}
				}
			}
		});
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;

public class Userdelete extends IndexAdmin {
	//声明部分对象
	JLabel name;
	JLabel pwd;
	JLabel style;
	JTextField dname;
	//为User类初始化对象
	User user = new User();
	
	//构造函数
	public Userdelete(String name) {
		super(name);
		init();
	}
	
	public void init() {
		//初始化字体
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		//初始化对象
		JLabel userdelete = new JLabel("用户删除");
		JLabel deletename = new JLabel("输入用户名:");
		dname = new JTextField();
		JLabel usertitle = new JLabel("删除的用户信息");
		JLabel username = new JLabel("用户名:");
		name = new JLabel();
		JLabel userpwd = new JLabel("密  码:");
		pwd = new JLabel();
		JLabel userstyle = new JLabel("类  型:");
		style = new JLabel();
		JButton submit = new JButton("确定");
		JButton delete = new JButton("删除");
		//设置对象
		userdelete.setBounds(130, 30, 100, 40);
		userdelete.setFont(d);
		deletename.setBounds(20, 90, 120, 30);
		deletename.setFont(f);
		dname.setBounds(130, 90, 150, 30);
		dname.setFont(f);
		usertitle.setBounds(100, 140, 200, 40);
		usertitle.setFont(d);
		username.setBounds(60, 200, 80, 30);
		username.setFont(f);
		name.setBounds(140, 200, 150, 30);
		name.setFont(f);
		userpwd.setBounds(60, 260, 80, 30);
		userpwd.setFont(f);
		pwd.setBounds(140, 260, 150, 30);
		pwd.setFont(f);
		userstyle.setBounds(60, 320, 80, 30);
		userstyle.setFont(f);
		style.setBounds(140, 320, 150, 30);
		style.setFont(f);
		submit.setBounds(290, 90, 80, 30);
		submit.setFont(f);
		delete.setBounds(150, 380, 80, 30);
		delete.setFont(f);
		//添加对象
		index.add(userdelete);
		index.add(deletename);
		index.add(dname);
		index.add(submit);
		index.add(usertitle);
		index.add(username);
		index.add(name);
		index.add(userpwd);
		index.add(pwd);
		index.add(style);
		index.add(userstyle);
		index.add(delete);
		
		//为确定按钮添加监听事件
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//从文本框中取得用户名设置进user对象中
				user.setusername(dname.getText());
				LoginUseImp l = new LoginUseImp();
				boolean b;
				try {
					//执行sql语句
					b = l.Query1(user, "select * from users where username= '"+dname.getText()+"'");
					if(b){
						//将数据库中的值设置进文本框
						name.setText(user.getusername());
						pwd.setText(user.getuserpwd());
						style.setText(user.getFlag());
					} else {
						//未查找到提示框
						JOptionPane.showMessageDialog(null,"未查到该用户");
					}
				} catch (SQLException e1) {
					e1.printStackTrace();
				}
			}
		});
		
		//为删除按钮添加监听事件
		delete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				//将选中的名字添加进文本框
				user.setusername(dname.getText());
				LoginUseImp l = new LoginUseImp();
				try {
					//执行删除的sql语句
					l.Delete(user, "delete from users where username='"+dname.getText()+"'");
					JOptionPane.showMessageDialog(null, "删除成功");
				} catch (SQLException e1) {
					// TODO 自动生成的 catch 块
					e1.printStackTrace();
				}
			}
		});
	}
}
package net.wms.view;

import java.awt.Font;
import java.sql.SQLException;

import javax.swing.JLabel;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;

public class Usernews extends Index{
	//声明对象
	JLabel uname;
	JLabel pwd;
	JLabel style;
	//为User类初始化user对象
	User user = new User();
	
	//构造函数
	public Usernews(String name) {
		super(name);
		init();
		//将用户名设置进user对象
		user.setusername(name);
		LoginUseImp l = new LoginUseImp();
		try {
			//执行按姓名查找的神奇了语句
			l.Query1(user, "select * from users where username= '"+name+"'");
			uname.setText(user.getusername());
			pwd.setText(user.getuserpwd());
			//通过标志量判断普通用户和管理员
			if(user.getFlag().equals("1")) {
				style.setText("普通用户");
			} else {
				style.setText("管理员");
			}
		} catch (SQLException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
	}
	
	public void init() {
		//初始化字体
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		//初始化对象
		JLabel usertitle = new JLabel("个人信息");
		JLabel username = new JLabel("用户名:");
		uname = new JLabel();
		JLabel userpwd = new JLabel("密  码:");
		pwd = new JLabel();
		JLabel userstyle = new JLabel("类  型:");
		style = new JLabel();
		//设置对象大小、位置和字体
		usertitle.setBounds(130, 60, 200, 40);
		usertitle.setFont(d);
		username.setBounds(60, 130, 80, 30);
		username.setFont(f);
		uname.setBounds(140, 130, 150, 30);
		uname.setFont(f);
		userpwd.setBounds(60, 190, 80, 30);
		userpwd.setFont(f);
		pwd.setBounds(140, 190, 150, 30);
		pwd.setFont(f);
		userstyle.setBounds(60, 250, 80, 30);
		userstyle.setFont(f);
		style.setBounds(140, 250, 150, 30);
		style.setFont(f);
		//将对象添加进框架
		index.add(usertitle);
		index.add(username);
		index.add(uname);
		index.add(userpwd);
		index.add(pwd);
		index.add(style);
		index.add(userstyle);
	}
}

package net.wms.view;

import java.awt.Font;
import java.sql.SQLException;
import java.util.Vector;

import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;

import net.wms.dao.LoginUseImp;

public class Userselect extends IndexAdmin{
	//声明对象
	int id;
	private JTable table;
	
	//构造函数
	public Userselect(String name) {
		super(name);
		init();
	}
	
	public void init() {
		//初始化字体
		Font t = new Font("楷体",Font.BOLD, 24);
		final Font f = new Font("楷体",Font.BOLD, 15);
		//初始化对象
		JLabel title = new JLabel("用户信息");
		title.setFont(t);
		title.setBounds(130, 40, 100, 40);
		//初始化Vector集合
		Vector v = new Vector();
		//为集合添加字段
		v.add("编号");
		v.add("用户名");
		v.add("用户类型");
		LoginUseImp l = new LoginUseImp();
		//初始化表格
		table = new JTable(l.vec,v);
		table.setFont(f);
		JScrollPane jp = new JScrollPane(table);
		jp.setBounds(40, 120, 300, 200);
		try {
			l.Select("select * from users");
		} catch (SQLException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
		index.add(title);
		index.add(jp);
	}
}

package net.wms.view;

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import net.wms.bean.User;
import net.wms.dao.LoginUseImp;

public class Userupdate extends Index{
	
	JLabel uname;
	JTextField pwd;
	JTextField pass;
	User user = new User();
	
	public Userupdate(String name) {
		super(name);
		init(name);
	}
	
	public void init(String name) {
		user.setusername(name);
		Font d = new Font("楷体", Font.BOLD, 24);
		Font f = new Font("楷体", Font.BOLD, 18);
		JLabel usertitle = new JLabel("修改密码");
		JLabel username = new JLabel("用  户  名:");
		uname = new JLabel();
		JLabel userpwd = new JLabel("新  密  码:");
		pwd = new JTextField();
		JLabel userpass = new JLabel("再输次密码:");
		pass = new JTextField();
		JButton submit = new JButton("修改");
		JButton reset = new JButton("重置");
		usertitle.setBounds(130, 60, 100, 40);
		usertitle.setFont(d);
		username.setBounds(50, 140, 140, 30);
		username.setFont(f);
		uname.setBounds(170, 140, 150, 30);
		uname.setFont(f);
		uname.setText(name);
		userpwd.setBounds(50, 200, 140, 30);
		userpwd.setFont(f);
		pwd.setBounds(170, 200, 150, 30);
		pwd.setFont(f);
		userpass.setBounds(50, 260, 140, 30);
		userpass.setFont(f);
		pass.setBounds(170, 260, 150, 30);
		pass.setFont(f);
		submit.setBounds(90, 320, 80, 30);
		submit.setFont(f);
		reset.setBounds(200, 320, 80, 30);
		reset.setFont(f);
		index.add(usertitle);
		index.add(username);
		index.add(uname);
		index.add(userpwd);
		index.add(pwd);
		index.add(pass);
		index.add(userpass);
		index.add(submit);
		index.add(reset);
		reset.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				pwd.setText("");
				pass.setText("");
			}
		});
		submit.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO 自动生成的方法存根
				LoginUseImp l = new LoginUseImp();
				try {
					l.Delete(user, "update users set userpwd='"+pass.getText()+"' where username='"+user.getusername()+"'");
					JOptionPane.showMessageDialog(null, "修改成功");
				} catch (SQLException e1) {
					// TODO 自动生成的 catch 块
					e1.printStackTrace();
				}
			}
		});
	}

}

网盘分享(里面有所需的图片,sql代码等素材)
提取码:kijn

原创文章 3 获赞 4 访问量 147

猜你喜欢

转载自blog.csdn.net/qq_44079072/article/details/105797605