Also being honest when I say that if you would just take the time to self-review this hand you posted and then post it up here that you will benefit from it a ton. I can sit here and tell you all of this stuff, but it would open your eyes more if you went through the process yourself. So form a realistic range of hands that villain would play that way preflop. Then take that range and apply it to his actions on the flop, turn, and river and eliminate hands that don't fit accordingly.

Also if you were to state what you are hoping to achieve when you make a play on each street you are likely to see why your play in this hand is below average. So you have his range, what hands do a bet here get called by? How does your hand stack up against that range? What hands does your bet fold? Looking at his range does it make sense to 3bet preflop? Does it make sense to bet the flop? All of these you should sit down and consider, and post back here with IMHO.