public void populate_with_freebase() throws GeneralSecurityException, IOException{
		try{
			Connection connection = DriverManager.getConnection(connectionString);
			Statement s = connection.createStatement();
			s.executeUpdate("CREATE TABLE ingredient(id integer primary key, name text)");
			s.executeUpdate("CREATE TABLE parent(idIngredient integer, idParent integer, primary key(idIngredient, idParent))");
			s.executeUpdate("CREATE TABLE recipe(id integer primary key, name text, numPersons integer, cookingTime integer, restingTime integer, prepTime integer,steps text)");
			s.executeUpdate("CREATE TABLE recipeIngredients(idRecipe integer, idIngredient integer,unit varchar(30),numberOfUnits real,fuzzy integer)");
			
			
			FreebaseUtils freebase = new FreebaseUtils();
			freebase.fetchIngredients();
			freebase.jsonIngredientsToIngredients();
			List<Ingredient> ingredients = freebase.getIngredients();
			
			for(Ingredient ingredient : ingredients){
				PreparedStatement statement = connection.prepareStatement("INSERT INTO ingredient VALUES(?,?)");
				statement.setInt(1, ingredient.getIngredientId());
				statement.setString(2, ingredient.getName());
				statement.executeUpdate();
				for(int parent : ingredient.getParentIngredients()){
					statement = connection.prepareStatement("INSERT INTO parent VALUES (?,?)");
					statement.setInt(1, ingredient.getIngredientId());
					statement.setInt(2, parent);
					statement.executeUpdate();
				}
			}
			
			connection.close();
		}
		catch(SQLException ex){
			ex.printStackTrace();
			System.exit(-1);
		}
	}