Heres a good trick.
You may of considered isolating the subject then blurring the back ground, and using masks etc. But what you can do is pre-make a mask, and then when you apply the lens blur it will blur more or less depending on the mask. This is a lot more realistic than just using opacity to make areas more or less blurry, it affects the radius of the blur and looks very real, if done right.
To make the mask; Duplicate the layer twice, make the top layer invisible and select the middle layer again. Add your blur to this layer, then make a mask for this layer. Paint in your mask to set the amount of blur on different parts of the image, using gradients is good if you have a surface that is on the z axis (near to far etc). Once you are done, make the top layer visible and select it. Go into blur>lens blur and use the drop down menu to select the mask of the layer underneath (i.e layer_1_copy_mask etc). This will then give you graduated/selective blur in your image.
note: It might be easier in some cases to extract your subject first, so that when you make the mask, you only have to concern yourself with the background, and using gradients is easier that way. If you do this, the blur from the layer underneath will include your subject, this will give a 'halo' effect around your subject, so you might want to clone out a fairly generous part of the subject from the blur layer, before you blur it.