在javaSSM中开发中,多种查询解决方案

it2022-05-05  130

在做项目时总会遇到"根据id或者名字进行查找",在每次做完项目时,都会上网查找一下xml文件中的书写格式,做完一个,在做下一个时,就会忘记,还要上网查,做IT啥都好就是忘性大以及掉头发。

不在多说,开始做记录:
//按照手机号或者会员卡号进行多种方式的查询,解决方法: //比如按照id或者名字进行多种方式的查询: //在xml文件中书写代码: <!--根据id或者name进行查询信息--> <select id="selectAllByIdAndTel" parameterType="com.kude.pojo.User" resultType="com.kude.pojo.User"> <--最好不要像我这样写select * 最好写出查询具体字段--> select * from user <where> <--注意这个if test中的userId和name,这两个字段是user实体类中的变量,and 后面的User_id和Name是数据库User表中的字段--> <if test="userId!= null and userId!=''"> and User_id=#{userId} </if> <if test="name!= null and name!=''"> and Name LIKE '%' #{name} '%' </if> </where> </select> //mapper层也就是Dao层 List<User> selectAllByIdAndTel(User user);
Service层以及ServiceImpl实现层
//Servcie层 List<User> selectAllByIdAndTel(User user); // ServiceImpl实现层 @Override public List<User> selectAllByIdAndTel(User user) { List<User> users=userMapper.selectAllByIdAndTel(user); return users; }
Controlle控制器
@RequestMapping("/test/selectAllByIdAndTel.do") @ResponseBody public List<User> selectAllByIdAndTel(User user){ return testService.selectAllByIdAndTel(user); } //进行测试的接口: //http://localhost:8080/user/test/selectAllByIdAndTel.do?name=张三 //或者测试 //http://localhost:8080/user/test/selectAllByIdAndTel.do?userId=1 //特别注意接口中的name和userId也是属于User实体类中的变量。

最新回复(0)