MyBatis支持注解和XML两种配置。
1.基于XML的配置
当前新闻页面只显示10条消息的配置代码:
List selectByUserIdAndOffset(@Param("userId") int userId,
@Param("offset") int offset,
@Param("limit") int limit);
News数据库表显示10个新闻数据:(根据用户userId显示,offset为:当前显示为第几个,limit:为当前页面显示几个用户新闻消息。)
XML配置文件(文件路径要与model中DAO的文件目录一样)
/p>
"https://mybatis.org/dtd/mybatis-3-mapper.dtd" >
news
id,title,link,image,like_count,comment_count,created_date,user_id
SELECT
FROM
WHERE user_id = #{userId}
ORDER BY id DESC
LIMIT #{offset},#{limit}
在service中调用这些 SQL 语句:
public class NewsService {
@Autowired
public NewsDAO newsDAO;
public List getLatestNews(int userId,int offset,int limit)
{
return newsDAO.selectByUserIdAndOffset(userId,offset,limit);
}
基于注解的配置
@Insert({"insert into",TABLE_NAME,"(",INSERT_FIELDS,
") values (#{title},#{link},#{image},#{likeCount},#{commentCount},#{createdDate},#{userId})"})
int addNews(News news);
@Select({"select ", SELECT_FILEDS , " from ", TABLE_NAME, " where id=#{id}"})
News getById(int id);
@Update({"update ", TABLE_NAME, " set comment_count = #{commentCount} where id=#{id}"})
int updateCommentCount(@Param("id") int id, @Param("commentCount") int commentCount);
在NewsService调用SQL语言;
public int addNews(News news)
{
newsDAO.addNews(news);
return news.getId();
}
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!