I've traveled pretty widely and experienced a small amount of mistreatment. In Oaxaca, some faceless person threw a rock at me from a building across the street (missed, fortunately). That doesn't change the fact that almost everyone I met in Oaxaca was wonderful and I look forward to going back.
I've been to Barcelona recently. I have friends who live there. It's a pretty great place to be a tourist! Although personally, I'd recommend the north (especially Pamplona & Logroño) because the wine is better and cheaper :-)