The Joint Load Properties object is used to specify joint motion and restriction values. It can be applied to a joint object whose type is Revolute , Translational or Cylindrical. This is the only joint loading type that will allow you to apply joint restriction values. The joint vector load allows to apply force and torque values in 6 directions. A joint force is allowed to apply a joint scalar force in single direction. Therefore, it depends on the type of joint load you have to apply. For instance, if you want to apply translational force in the X direction, you can use any of them. However, if you want to apply a joint restriction to a translational joint, then you have to use joint load properties only.
A spring connection is used to connect two bodies, similar to mechanical. However, joint springs are used to provide stiffness and damping between the joints. Here, you will find more options like preload, coil diameter, etc. that are related to motion solvers.
For further information, please check out the motion documentation.