Mybatis執行SQL語句的方式

首先實現mapper接口: java

import org.apache.ibatis.annotations.Select; public interface UserMapper { @Select("SELECT * FROM table01 WHERE id = #{id}") User selectUser(int id); } 

XML中配置SQL apache

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="mybatisModule.UserMapper"> <select id="xmlSelectUser" parameterType="int" resultType="User"> select name,password from table01 where id = #{id} </select> <select id="xmlSelectUsers" resultType="User"> select * from table01 order by id </select> </mapper> 

因而咱們就有了三句SQL,能夠經過下面的方式執行這三句SQL: session

public static void main(String[] args) throws SQLException, IOException{ SqlSessionFactory sessionFactory = SessionFactorySingleton.getSessionFactory(); SqlSession session = sessionFactory.openSession(); try{ //method 1: session.getMapper()調用接口 UserMapper mapper = session.getMapper(UserMapper.class); User user1 = mapper.selectUser(6); if(user1 != null){ System.out.println("user name:"+user1.getName()); } else{ System.out.println("selected 0 row"); } //method 2: session.selectOne()調用接口 User user2 = (User)session.selectOne("mybatisModule.UserMapper.selectUser",9); if(user2 != null){ System.out.println("user name:"+user2.getName()); } else{ System.out.println("selected 0 row"); } //method 3: session.selectOne()調用XML配置文件 User user3 = (User)session.selectOne("mybatisModule.UserMapper.xmlSelectUser",6); if(user3 != null){ System.out.println("user name:"+user3.getName()); } else{ System.out.println("selected 0 row"); } //查詢獲得多組數據 ArrayList<User> users = (ArrayList<User>)session.selectList("mybatisModule.UserMapper.xmlSelectUsers"); for(User u : users){ System.out.println(u.getId()+" : "+u.getName()+" : "+u.getPassword()); } }finally{ session.close(); } } 
相關文章
相關標籤/搜索