java版超市管理系统。swing~(java连接mysql数据库)

从开学第三周开始动笔,经过win10出问题,两次系统重装,换硬盘种种问题,第十六周结束。结束还是有点怅然若失的感觉。

源代码链接:https://pan.baidu.com/s/1slApTlr 密码:7bbs  (请勿抄袭或商用,因大二写的,没什么框架概念)

从这当中学到或者解决的问题:


(1)按钮的监听,布局,图片美化。

(2)表格的编辑,填充,修改。

(3)列表格的响应(还是有一个小问题)

(4)窗体的三层面板叠加次序。

(5)java链接mysql的方法。

 

/*
 * 完成于2016.12.14
 * 知识点:(1)java与mysql连接语句的掌握
 *      (2)swing窗体的构建
 *      (3)在people类里运用了列表框。(ps:还有一个小问题没有解决。那就是点击列表框响应两次。网上的方法不知道怎么运用。希望有大神来教教我。提前谢谢啦~~)
 *      (4)美化窗体。对窗体背景,按钮都进行了美化。
 *  写完这个项目,发现自己对java的掌握大大提高了。
 *  果然实践才是掌握真理的唯一标准~
 *  一定要记录下来。~~!!
    希望和大家一起讨论新点子。  
    由于篇幅有限,只放了一部分代码。如有需要借鉴者,请到上方网盘自行下载。
 * */



import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;  
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import java.sql.SQLException;
import java.util.Vector;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;

import com.mysql.jdbc.Connection;



public class supermarket {
                                              /*
                                               *  主类创建两个子类,分别对超市人员,食物进行增删改查。
                                               * 
                                               * 
                                               *  */
        JFrame supermarket=new JFrame("超市管理系统"); 
    	JPanel imagePanel;
    	ImageIcon background;
        
        public static void main(String []args){
        	new supermarket();
        }
        public supermarket(){
          JLabel la=new JLabel("                                                           欢迎使用超市管理系统!                                        ");
          ImageIcon tu=new ImageIcon("lishi.png");
          JButton food=new JButton("食物信息管理");
          //JButton food=new JButton("食物信息管理",tu);
          JButton people=new JButton("人事信息管理");
          background=new ImageIcon("sea.png");
          JLabel ll=new JLabel(background);
          /*Image temp = tu.getImage().getScaledInstance(food.getWidth(),  
                  food.getHeight(),tu.getImage().SCALE_DEFAULT);  
          tu=new ImageIcon(temp);                  图片适应按钮的大小,但是按钮的大小要确定*/
          food.setIcon(tu);
          food.setHorizontalTextPosition(SwingConstants.CENTER);
          food.setContentAreaFilled(false); //只须加上此句,使按钮透明化。
          ImageIcon t=new ImageIcon("齿轮2.png");
          Image te=t.getImage().getScaledInstance(100,100, t.getImage().SCALE_DEFAULT);
          t=new ImageIcon(te);
          people.setIcon(t);
          people.setHorizontalTextPosition(SwingConstants.CENTER);
          people.setContentAreaFilled(false); 
          ll.setBounds(0,0,background.getIconWidth(),background.getIconHeight());
          imagePanel=(JPanel)supermarket.getContentPane();
          imagePanel.setOpaque(false);
          imagePanel.setLayout(new FlowLayout());
          imagePanel.add(la);
          imagePanel.add(food);
          imagePanel.add(people);  
          supermarket.setVisible(true);  
          supermarket.getLayeredPane().setLayout(null);
          supermarket.getLayeredPane().add(ll,new Integer(Integer.MIN_VALUE));
          supermarket.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          supermarket.setSize(background.getIconWidth(),background.getIconHeight());  
          supermarket.setResizable(false);  
       
	      food.addActionListener(new ActionListener (){

			public void actionPerformed(ActionEvent e) {
			
				 new bfood();
	     	}
        });
	    people.addActionListener(new ActionListener(){

			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
			     new bpeople();
			}
	    	
	    });
	 
     }
}

 

 

连接数据库:

 
 
class connection{
	    
		private Connection conn=null;
		PreparedStatement statement=null;
		void connsql() {
			String url="jdbc:mysql://127.0.0.1:3306/supermarket?"
					+"user=root&password=Wzz927&useUnicode=true&characterEncodeing=utf8&useSSL=true";
		   try{
			   Class.forName("com.mysql.jdbc.Driver");
			   conn=(Connection) DriverManager.getConnection(url);
			   
		   }catch(ClassNotFoundException cnfex){
			   System.err.println("装载JDBC驱动器失败");
			   cnfex.printStackTrace();
		   }catch(SQLException sqlex){
			   System.err.println("无法连接数据库");
			   sqlex.printStackTrace();
		   }
		   
		}
		void deconnsql(){
		try{
			if(conn!=null)
				 conn.close();
			
		}catch(Exception e){
			System.out.println("关闭数据库问题");
			e.printStackTrace();
		}
	  }
		ResultSet selectsql(String sql){
			ResultSet rs =null;
			try{
				statement=conn.prepareStatement(sql);
				rs= statement.executeQuery(sql);
				
			}catch(SQLException e){
			     e.printStackTrace();
			     
			}
			return rs;
		}
		void insertsql(String sql)
		{
			try{
				statement=conn.prepareStatement(sql);
				statement.executeUpdate();
				
			}catch (SQLException e) {  
	            System.out.println("插入数据库时出错:");  
	            e.printStackTrace();  
	        } catch (Exception e) {  
	            System.out.println("插入时出错:");  
	            e.printStackTrace();  
	        }  
			
			
		}
    void deletesql(String sql){
     	try{
            statement=conn.prepareStatement(sql);
            statement.executeUpdate();
         
      	} catch(SQLException e){
      		System.out.println("删除数据库时出错");
      		e.printStackTrace();
      	}catch(Exception e){
      		System.out.println("删除数据时出错:");
      		e.printStackTrace();
      	}
 		
     	 
      }
    void updatasql(String sql){
      	try{
             statement=conn.prepareStatement(sql);
             statement.executeUpdate();
            
       	} catch(SQLException e){
       		System.out.println("更新数据库时出错");
       		e.printStackTrace();
       	}catch(Exception e){
       		System.out.println("更新数据时出错:");
       		e.printStackTrace();
       	}
  	
      	 
       }
}




效果展示:

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 技术工厂 设计师:CSDN官方博客 返回首页