public class NewsSort {
private Integer id;
private String sortName;
private String sortDesc;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getSortName() {
return sortName;
}
public void setSortName(String sortName) {
this.sortName = sortName;
}
public String getSortDesc() {
return sortDesc;
}
public void setSortDesc(String sortDesc) {
this.sortDesc = sortDesc;
}
@Override
public String toString() {
return "NewsSort [id=" + id + ", sortName=" + sortName + ", sortDesc=" + sortDesc + "]";
}
}
package com.wskj.eshop.news.dao;
import java.util.List;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectProvider;
import com.wskj.eshop.news.model.NewsSort;
public interface NewsSortDaoMapper {
@Select("select n.id,n.sort_name as sortName,n.sort_desc as sortDesc from news_sort n")
public List<NewsSort> queryAll();
@Insert("insert into news_sort(sort_name,sort_desc) values(#{sortName},#{sortDesc})")
public void addSort(NewsSort sort);
@SelectProvider(type=NewsSortSqlProvider.class,method="getSql")
public List<NewsSort> queryBySearchBean(NewsSort sort);
}
package com.wskj.eshop.news.dao;
import org.apache.commons.lang.StringUtils;
import com.wskj.eshop.news.model.NewsSort;
public class NewsSortSqlProvider {
public String getSql(NewsSort sort){
StringBuffer sql=new StringBuffer("select n.id,n.sort_name as sortName,n.sort_desc as sortDesc");
sql.append(" from news_sort n ");
sql.append(" where 1=1 ");
//isNotEmpty将空格也作为参数,isNotBlank则排除空格参数
if(sort!=null && StringUtils.isNotBlank(sort.getSortName())){
//select * from news_sort n where n.sort_name like '%八卦%'
sql.append(" and sort_name like '%").append(sort.getSortName()).append("%'");
}
if(sort!=null && StringUtils.isNotBlank(sort.getSortDesc())){
//select * from news_sort n where n.sort_name like '%八卦%'
sql.append(" and sort_desc like '%").append(sort.getSortDesc()).append("%'");
}
return sql.toString();
}
}
package com.wskj.test;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.wskj.eshop.news.dao.NewsSortDaoMapper;
import com.wskj.eshop.news.model.NewsSort;
public class TestNews {
public static void main(String[] args) {
// TODO Auto-generated method stub
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
NewsSortDaoMapper newsSortDaoMapper= ctx.getBean(NewsSortDaoMapper.class);
NewsSort sort=new NewsSort();
sort.setSortName("八");
sort.setSortDesc("八卦1");
//sort.setSortDesc("游戏相关新闻");
// newsSortDaoMapper.addSort(sort);
List<NewsSort> sortList = newsSortDaoMapper.queryBySearchBean(sort);
for (NewsSort newsSort : sortList) {
System.out.println(newsSort);
}
}
}