1、我们经常在前端传递一些参数,进行模糊或者条件查询,可以采用的方式有
1> url传递参数 后台直接接收,但是要求命名一样,比如/query/select?username=123
则后台参数名也应该是username,如果不是,可以使用Param("username" user_name)这样来解决
2>直接拼接成url 比如 querybyid/123 而不是querybyid?id=123
这样的话 后台使用@pathvariable注解 解析url地址里的值
postmapping("querybyid/{id}")
3>使用requestbody 直接传递json字符串 后者requestparam 通过请求头传递参数。
在返回前端的时候,我们经常查询出来对应成一个类对象,直接返回。我们也可以查询出来的结果对应成一个Map。
@Select("<script>"+
"SELECT a.id,a.full_name ship_name,b.full_name ship_type_name from lng_b_ship a " +
"LEFT JOIN lng_b_tanker_type b on a.ship_type_id=b.ID"+
"<if test='shipName != null and shipName !=\" \" '>" +
"where a.full_name like CONCAT('%',#{shipName},'%')"+
"</if>"+
"</script>")
List<Map<String, Object>> selectShipMaps(String shipName);