```
SPSite spsite1=new SPSite(SPContext.Current.Web.URL);

SPSite spsite2=SPContext.Current.Site;

```

What is the difference and when do we decide which one to use?

I feel both give us the site collection object.

Example: `SPWeb spweb=spsite1.RootWeb;` will mean same as `spsite2.RootWeb;` Then why are there 2 ways to do it?