Is there a way to hibernate macbook then switch to windows?
OS X does not natively hibernate like Windows.

For maximum effectiveness, apply both of these methods:


Install rEFIt.
Start Terminal 
Run /efi/refit/enable.sh
Put the Mac to deep sleep.
When you power up the Mac, the efi menu will appear and you are able to select to boot OS X or Bootcamp.


But, since you have Mac hardware, you should be able to VM OSX.



Secondly, you can try pmset.  You can change it with sudo pmset -a hibernationmode 25.

The pmset man page also recommends using 25 instead of 1.

0000 1000 (bit 3) encourages the dynamic pager to page out inactive pages
prior to hibernation, for a smaller memory footprint.

0001 0000 (bit 4) encourages the dynamic pager to page out more
aggressively prior to hibernation, for a smaller memory footprint.

We do not recommend modifying hibernation settings. Any changes you make
are not supported. If you choose to do so anyway, we recommend using one 
of these three set- tings. For your sake and mine, please don't use 
anything other 0, 3, or 25.

[...]

hibernatemode = 25 (binary 0001 1001) is only settable via pmset. The 
system will store a copy of memory to persistent storage (the disk), and
will remove power to memory. The system will restore from disk image. If
you want "hibernation" - slower sleeps, slower wakes, and better battery 
life, you should use this setting.