关于JAVA中如何通过判别语句选择不同的table

@GET
@Path("findByNameANDCode/{studname}/{studpostcode}")
@Produces({"application/json"})
public List findByNameANDCode(@PathParam("studname") String
studname, @PathParam("studpostcode") Integer studpostcode) {
Query query = em.createNamedQuery("Student.findByNameANDCode");
query.setParameter("studname", studname);
query.setParameter("studpostcode", studpostcode);
return query.getResultList();
}

在这段代码中,我想将{studname}/{studpostcode}改为一个{choice},如果用户在choice中输入studname,将自动选择studname table;输入studpostcode的时候将自动选择studpostcode table,请问该如何通过if语句实现呢?
原本运行后的截图
想改为这个

原本的接收两个参数要改成只有一个参数choice。那你的studname和studpostcode是有什么规律吗?还是只有几个特定的值?
如果是只有几个特定值,那就判断是否在那几个特定值内(有规律也一样)。
如果没有的话,你可以要求调用方在调用时,在原本参数上加上",studname"或者",studpostcode"来区分,在接收之后,用split(",")拆分,然后判断。
最后,其实我觉得你做成两个接口更好。

最好是设置两个接口,名字和学号分别通过不同的接口来获取。如果一定要一个接口,通过名字和学号的不同点:一个是纯数字,一个是纯字符,来区分它们。

改成单选框或者下拉选让客户进行选择,这些选项有共同的name,然后服务端获取时,根据这个name获取,再用if语句判别,如果是studname要怎么样,如果是studpostcode要怎么样进行处理