使用注解模式:
接口:
package com.test; import com.pojo.Goods; import org.apache.ibatis.annotations.Select; import java.util.List; import java.util.Map; public interface IgoodsMapper { /** * 需求: 通过商品名称 (模糊查询)、供应商(供应商id)、是否付款 * 查询到 订单编码,商品名称,供应商名称,账单,金额,是否付款,创建时间 */ @Select("SELECT g.goodsCode,g.goodsName,p.provider_name,g.money, g.payState,g.timeStart FROM goods g,provider p WHERE g.goodsName LIKE concat('%',#{goods_Name},'%') AND p.provider_id = #{provider_id} AND g.payState = #{goods_payState} AND g.goods_id = p.goods_id") List<Goods> getGoodsList(Map<String,String> map); }
测试类:
package com.demo.test; import com.pojo.Demo; import com.pojo.Goods; import com.pojo.Grade; import com.test.DemoMapper; import com.test.IgoodsMapper; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.Test; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import java.util.List; import java.util.Map; public class Test01 { @Test public void test03() throws IOException { //1、读取配置文件 InputStream in = Resources.getResourceAsStream("mybatis-config.xml"); //2、创建SqlSessionFactory工厂 SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory factory = builder.build(in); //3、创建 SqlSession对象 SqlSession sqlSession = factory.openSession(); //4、实现方法 IgoodsMapper mapper = sqlSession.getMapper(IgoodsMapper.class); Map<String,String> map = new HashMap<String, String>(); map.put("goods_Name","机"); map.put("provider_id","10086"); map.put("goods_payState","1"); List<Goods> list = mapper.getGoodsList(map); System.out.println("---------------------------"); for (Goods goods:list){ System.out.println(goods.getGoodsCode()+" "+goods.getGoodsName()+" "+goods.getProvider_name()+ " "+goods.getMoney()+" "+ goods.getPayState()+" "+goods.getTimeStart()); } System.out.println("------------------------"); //5、释放资源 sqlSession.close(); in.close(); } }