First of all: it's normal to get rejected.
People often expect to get a job within the first 10 interviews, but this is rather an exception.
Also the answer is simple: just lurk more and make some "cool projects". Doesn't have to be the ultimate business idea, but maybe you want to relate it to your future job.
Wanna get WebDev? Put up a CMS system.
Wanna get JavaDev? Oh well, put up your own Tomcat server, put a website on it (of course with Java Backend). And create some frontend with Swing.
And so on.
Also: "fake it till you make it".
Don't tell them big lies, but small lies are OK.
Think about ti this way:
They will also lie to you, or do you expect somebody to say "oh well, your chief is a terrible person. And your coworker is the biggest asshat you'll ever met. An one mor thing: we pay a lot lee than company xyz.."
No, they won't.
Job interviews are like haveing a first date:
You don't want to make things up, but you also want the other person to think you're the coolest guy on this whole fucking planet..
Work with what you have!
did you study long? --> "yeah, I was always programming stuff here and there, could have been more focused. But I'm rather the worker, not the theoretical type"
only few projects in the subject you are appyling? --> "Back in the days I did a lot of frontend development. But recently I got into databases and found out, that's what I was made for!"
Too young? --> "Yeah, I'm young and hungry and I'm burning!"
Too old? --> "Yeah, I have pretty much experience. I can definately help the company."
You understand what I mean? You only need a story that sells. Everybody has flaws, but the important part is that you:
a) got the hard skills (you should REALLY have them)
b) sell yourself (your pros are better than your cons)
c) are an interesting, charming and uncomplicated person, the kind of guy you want in your team