Is there a general way to predict products of a chemical reaction
Often times it is possible due to previous data. Trends appear and you can make deductions from such trends. Reactions may not happen at all. There may be deviations from the trends as well. The deviations may be for unknown reasons or there may be unproven theories that are included in textbooks. Inorganic chemistry reactions are not as clear cut as organic chemistry reactions. You don't have to memorize all the reactions. Know the trends, conduct the experiment, and if your prediction fails, try to think hard about the conditions in which the experiment took place. Sometimes the explanation may lay in the container that you used for the reaction, or it may be stoichiometry. 

As in all sciences, you need experiments.