I'm asking if it is possible to use queryDSL to basically make 3 separate queries and union them together so that I can use paging on the unioned list.
No, that's not possible with Querydsl. You can write the query in such a way that it will return Employee instances that match at least one of the constraints, but the result will be a single Employee list.