dao层代码
import com. baidu. pojo. User;
import org. apache. ibatis. annotations. *;
import java. util. List;
public interface UserDao {
@Select ( "select * from user" )
List< User> getUserList ( ) ;
@Select ( "select * from user where id = #{id}" )
User getUserById ( @Param ( "id" ) int id) ;
@Insert ( "insert into user(id,name,pwd) values (#{id},#{name},#{pwd})" )
int insert ( User user) ;
@Delete ( "delete from user where id = #{id}" )
int deleteUserById ( @Param ( "id" ) int id) ;
@Update ( "update user set name = #{name},pwd = #{pwd} where id = #{id}" )
int updateUser ( User user) ;
}
工具类
package com. baidu. utils;
import org. apache. ibatis. io. Resources;
import org. apache. ibatis. session. SqlSession;
import org. apache. ibatis. session. SqlSessionFactory;
import org. apache. ibatis. session. SqlSessionFactoryBuilder;
import java. io. IOException;
import java. io. InputStream;
public class MyBatisUtils {
private static SqlSessionFactory sqlSessionFactory;
static {
InputStream inputStream = null;
try {
String resource = "mybatis-config.xml" ;
inputStream = Resources. getResourceAsStream ( resource) ;
sqlSessionFactory = new SqlSessionFactoryBuilder ( ) . build ( inputStream) ;
} catch ( IOException e) {
e. printStackTrace ( ) ;
} finally {
if ( inputStream != null) {
try {
inputStream. close ( ) ;
} catch ( IOException e) {
e. printStackTrace ( ) ;
}
}
}
}
public static SqlSession getSqlSession ( ) {
return sqlSessionFactory. openSession ( true ) ;
}
}
测试类
package com. baidu. dao;
import com. baidu. pojo. User;
import com. baidu. utils. MyBatisUtils;
import org. apache. ibatis. session. SqlSession;
import org. junit. Test;
import java. util. List;
public class UserDaoTest {
@Test
public void getUserList ( ) {
SqlSession sqlSession = MyBatisUtils. getSqlSession ( ) ;
UserDao mapper = sqlSession. getMapper ( UserDao. class ) ;
List< User> userList = mapper. getUserList ( ) ;
for ( User user : userList) {
System. out. println ( user) ;
}
sqlSession. close ( ) ;
}
@Test
public void getUserById ( ) {
SqlSession sqlSession = MyBatisUtils. getSqlSession ( ) ;
UserDao mapper = sqlSession. getMapper ( UserDao. class ) ;
User user = mapper. getUserById ( 1 ) ;
sqlSession. close ( ) ;
System. out. println ( user) ;
}
@Test
public void insert ( ) {
SqlSession sqlSession = MyBatisUtils. getSqlSession ( ) ;
UserDao mapper = sqlSession. getMapper ( UserDao. class ) ;
int i = mapper. insert ( new User ( 9 , "辛卫东" , "12456" ) ) ;
sqlSession. close ( ) ;
System. out. println ( i) ;
}
@Test
public void deleteById ( ) {
SqlSession sqlSession = MyBatisUtils. getSqlSession ( ) ;
UserDao mapper = sqlSession. getMapper ( UserDao. class ) ;
int i = mapper. deleteUserById ( 9 ) ;
sqlSession. close ( ) ;
System. out. println ( i) ;
}
@Test
public void updateById ( ) {
SqlSession sqlSession = MyBatisUtils. getSqlSession ( ) ;
UserDao mapper = sqlSession. getMapper ( UserDao. class ) ;
int i = mapper. updateUser ( new User ( 8 , "xwd" , "789460" ) ) ;
sqlSession. close ( ) ;
System. out. println ( i) ;
}
}