If employers have a hard time keeping their employees, who's fault is that? The employers or the employees?
Consider that not long ago, people were working the same job for their entire career. People, by their nature, prefer stability (that's why many go through all that effort of getting a good degree, and why government job preference has been on the uptick for some time).
If employers don't want employees to jump ship they need to make their employees feel like their jobs aren't in danger and provide them competitive pay. People don't leave a good job for 5% more: they leave for significant lumps of cash; they leave due to business instability; they leave for (inter)personal reasons. They also leave because they know the company doesn't hold them in high esteem as a person, more than likely, and that if push comes to shove, the company's going to dump them.
Ultimately, it's a cycle - but a cycle which companies started. God bless the Business Management types.