目录
- <select id="selectByIn" resultType="com.zking.model.Book" parameterType="java.util.List">
- select
-
"Base_Column_List" /> - from t_mvc_book
- where bid in
- <foreach collection="bookIds" open="(" close=")" separator="," item="bid">
- #{bid}
- foreach>
- select>
-
- // 通过in关键字进行查询,讲解foreach标签的使用
- // 如果说参数是非实体类(book,Order,...),那么集合加上注解 @param
- List
selectByIn(@Param("bookIds") List bookIds);
List<Book> selectByIn(List bookIds);
- public List<Book> selectByIn(List bookIds){
- return bookMapper.selectByIn(bookIds);
- }
- @Test
- public void selectByIn(){
- bookBiz.selectByIn(Arrays.asList(new Integer[]{31,32,33})).forEach(System.out::println);
- }

#{...}
${...}
Concat
注意:#{...}自带引号,${...}有sql注入的风险
- @Test
- public void selectBooksLike1() {
- bookBiz.selectBooksLike1("%圣墟%").forEach(System.out::println);
- }
-
- @Test
- public void selectBooksLike2() {
- bookBiz.selectBooksLike2("%圣墟%").forEach(System.out::println);
- }
-
- @Test
- public void selectBooksLike3() {
- bookBiz.selectBooksLike3("圣墟").forEach(System.out::println);
- }
-
- @Test
- public void list1() {
- bookBiz.list1().forEach(System.out::println);
- }
-
- @Test
- public void list2() {
- bookBiz.list2().forEach(System.out::println);
- }
- @Test
- public void list3() {
- BookVo vo=new BookVo();
- vo.setBookIds(Arrays.asList(new Integer[]{31,32,33}));
- bookBiz.list3(vo).forEach(System.out::println);
- }
-
- @Test
- public void list4() {
- bookBiz.list4().forEach(System.out::println);
- }
-
- @Test
- public void list5() {
- Map map=new HashMap();
- map.put("bid",32);
- System.out.println(bookBiz.list5(map));
- }
- List<Book> selectBooksLike1(@Param("bname") String bname);
- List<Book> selectBooksLike2(@Param("bname") String bname);
- List<Book> selectBooksLike3(@Param("bname") String bname);
-
- // list1 list2的结论是:对于单表查询而言,可以用它ResultMap/resultType接收,但是多表必须用ResultMap接收
- List<Book> list1();
- List<Book> list2();
- List
list1() ; - List
list2() ; - // 如果要传入多个查询参数,必须以对象的方式传递
- List
list3(BookVo vo) ; - List;
- Map list5(Map map);
- @Override
- public List<Book> list1() {
- return bookMapper.list1();
- }
-
- @Override
- public List<Book> list2() {
- return bookMapper.list2();
- }
-
- @Override
- public List<Book> list3(BookVo vo) {
- return bookMapper.list3(vo);
- }
-
- @Override
- public List<Map> list4() {
- return bookMapper.list4();
- }
-
- @Override
- public Map list5(Map map) {
- return bookMapper.list5(map);
- }
- <select id="selectBooksLike1" resultType="com.zking.model.Book" parameterType="java.lang.String">
- select * from t_mvc_book where bname like #{bname}
- select>
- <select id="selectBooksLike2" resultType="com.zking.model.Book" parameterType="java.lang.String">
- select * from t_mvc_book where bname like '${bname}'
- select>
- <select id="selectBooksLike3" resultType="com.zking.model.Book" parameterType="java.lang.String">
- select * from t_mvc_book where bname like concat('%',#{bname},'%')
- select>
- <select id="list1" resultMap="BaseResultMap">
- select * from t_mvc_book
- select>
-
- <select id="list2" resultType="java.zking.model.Book">
- select * from t_mvc_book
- select>
-
- <select id="list3" resultType="com.zking.model.Book" parameterType="java.zking.model.BookVo">
- select * from t_mvc_book where bid in
- <foreach collection="bookIds" open="(" close=")" separator="," item="bid">
- #{bid}
- foreach>
- select>
-
- <select id="list4" resultType="java.util.Map">
- select * from t_mvc_book
- select>
-
- <select id="list5" parameterType="java.util.Map" resultType="java.util.Map">
- select * from t_mvc_book where bid=#{bid}
- select>

- public void listPager(){
- Map map=new HashMap();
- map.put("bnam","圣墟");
- // bookBiz.listPager(map).forEach(System.out::println);
-
- PagerBean pagerBean=new PagerBean();
- pagerBean.setPage(2);
- pagerBean.setRows(20);
-
- bookBiz.listPager(map,pagerBean).forEach(System.out::println);
- }
List<Map> listPager(Map map);
List<Map> listPager(Map map, PagerBean pagerBean);
- <select id="listPager" resultType="java.util.Map" parameterType="java.util.Map">
- select * from t_mvc_book where bname like concat(concat('%',#{bname}),'%')
- select>
- @Override
- public List<Map> listPager(Map map, PagerBean pagerBean) {
- // pagerHelper分页插件相关代码
- if(pagerBean !=null && pagerBean.isPagination()){
- pageHelper.startPage(pagerBean.getPage(),pagerBean.getRows());
- }
-
- List<Map> maps=bookMapper.listPager(map);
- if(pagerBean !=null && pagerBean.isPagination()){
- // 处理查询结果的前提是,需要分页的
- PageInfo info =new PageInfo(maps);
- pagerBean.setTotal(info.getTotal()+"");
- }
-
- return maps;
- }

- @Test
- public void list6() {
- BookVo vo =new BookVo();
- vo.setmax(45);
- vo.setmin(35);
- bookBiz.list6(vo).forEach(System.out::println);
- }
-
- @Test
- public void list7() {
- BookVo vo =new BookVo();
- vo.setmax(45);
- vo.setmin(35);
- bookBiz.list7(vo).forEach(System.out::println);
- }
- List<Book> list6(BookVo bookVo);
-
- List<Book> list7(BookVo bookVo);
- <select id="list6" resultType="com.javaxl.model.Book" parameterType="com.javaxl.model.BookVo">
- select * from t_mvc_book
- <where>
- <if test="null != min and min != ''">
-
- if>
- <if test="null != max and max != ''">
- price ]]>
- if>
- price ]]>
- where>
- select>
-
- <select id="list7" resultType="com.zking.model.Book" parameterType="com.zking.model.BookVo">
- select * from t_mvc_book
- <where>
- <if test="null != min and min != ''">
- and #{min} < price
- if>
- <if test="null != max and max != ''">
- and #{max} > price
- if>
- where>
- select>
- List<Book> list6(BookVo bookVo);
- List<Book> list7(BookVo bookVo);
- @Override
- public List<Book> list6(BookVo bookVo) {
- return bookMapper.list6(bookVo);
- }
-
- @Override
- public List<Book> list7(BookVo bookVo) {
- return bookMapper.list7(bookVo);
- }

- public class BookVo extends Book{
- private List bookIds;
- private int min;
- private int max;
-
- public int getmin(){
- return min;
- }
-
- public void setmin(int min){
- this.min=min;
- }
- public int getmax(){
- return max;
- }
-
- public void setmax(int max){
- this.max=max;
- }
- <select id="list6" resultType="com.javaxl.model.Book" parameterType="com.javaxl.model.BookVo">
- select * from t_mvc_book
- <where>
- <if test="null != min and min != ''">
-
- if>
- <if test="null != max and max != ''">
- price ]]>
- if>
- price ]]>
- where>
- select>
-
- <select id="list7" resultType="com.zking.model.Book" parameterType="com.zking.model.BookVo">
- select * from t_mvc_book
- <where>
- <if test="null != min and min != ''">
- and #{min} < price
- if>
- <if test="null != max and max != ''">
- and #{max} > price
- if>
- where>
- select>