1 6 package com.ibatis.jpetstore.persistence.sqlmapdao; 7 8 import com.ibatis.common.util.PaginatedList; 9 import com.ibatis.dao.client.DaoManager; 10 import com.ibatis.jpetstore.domain.Product; 11 import com.ibatis.jpetstore.persistence.iface.ProductDao; 12 13 import java.util.ArrayList ; 14 import java.util.List ; 15 import java.util.StringTokenizer ; 16 17 public class ProductSqlMapDao extends BaseSqlMapDao implements ProductDao { 18 19 public ProductSqlMapDao(DaoManager daoManager) { 20 super(daoManager); 21 } 22 23 public PaginatedList getProductListByCategory(String categoryId) { 24 return queryForPaginatedList("getProductListByCategory", categoryId, PAGE_SIZE); 25 } 26 27 public Product getProduct(String productId) { 28 return (Product) queryForObject("getProduct", productId); 29 } 30 31 public PaginatedList searchProductList(String keywords) { 32 Object parameterObject = new ProductSearch(keywords); 33 return queryForPaginatedList("searchProductList", parameterObject, PAGE_SIZE); 34 } 35 36 37 38 public static class ProductSearch { 39 private List keywordList = new ArrayList (); 40 41 public ProductSearch(String keywords) { 42 StringTokenizer splitter = new StringTokenizer (keywords, " ", false); 43 while (splitter.hasMoreTokens()) { 44 keywordList.add("%" + splitter.nextToken() + "%"); 45 } 46 } 47 48 public List getKeywordList() { 49 return keywordList; 50 } 51 } 52 53 } 54 | Popular Tags |