Can't make a comparison of struts and springs. They serve different purposes that are combined to achieve a desired response. Tat is, a spring is designed to hold the weight of the vehicle while providing compliance so that the tires can follow the road as well as allowing some level of comfort to the occupants. A strut is basically a shock absorber that. A shock absorber's job is to damp the motions of the vehicle. Without the damper, the car would just bounce along the road everytime you hit a bump. Ask anyone who's driven a car with shocks that were completely blown about this one. A shock differs from a strut in that a shock is only loaded along the axis of the shock (the compressive forces). A strut is a geometrically locating member of the suspension, and will be subjected to lateral loads. Easy way to tell, is if you remove a shock, the suspension will still be able to move along the intended path. If you remove a strut, the wheel and tire will essentially fall out only being held onto the car with the lower ball joint.
That said, I'd suspect in general cases,. shocks outlast struts. The lateral loads put a side load on the piston which may wear one side out more prematurely. But more specifically, its impossible to say for sure as there are many variances in engineering design and quality between different struts or different shocks. So a well engineered strut can easily outlast a poorly engineered shock.