He Cheated a lot Over The 3 Years...
Leave! he obviously doesn't care for you nor does he have respect for you. Why would you stay with a dude who cheats? I guess if he cheated ONCE and you forgave him that's understandable..but cheating numerous times OBVIOUSLY shows that he doesn't care..and if yer still with him that shows that YOU don't care. If you were smart youd break up with him.
leave no one deserves to be cheated on and if he truly loved you he would be happy with just you and no one else. you deserve better much much better
He cheats on you for so many years and you try to accept it,not a relationship you want to be in,leave him and find someone better.
LEAVE. cheating is NOT okay