public synchronized static Product[] findAll() throws SQLException
	{
		ArrayList<Product> result = new ArrayList<Product>();
		Connection connection = null;
		Statement stmt = null;

		try 
	    {
			connection = DB.getConnection();
			connection.setAutoCommit(true);

			stmt = connection.createStatement();
			ResultSet rs = stmt.executeQuery("SELECT * FROM Product;");

			while (rs.next()) 
			{
				Product product = new Product();

				product.ProductID 			= rs.getInt("ProductID");
				product.SupplierID 			= rs.getInt("SupplierID");
				product.Price 				= rs.getDouble("Price");
				product.ProductName 		= rs.getString("ProductName");
				product.ProductDescription 	= rs.getString("ProductDescription");
				product.InStock				= rs.getBoolean("InStock"); 

				result.add(product);
			}
			rs.close();
			stmt.close();
			DB.closeConnection();

			return result.toArray(new Product[result.size()]);
		}
		catch (Exception e) 
		{
	    	throw e;
		}
	}