Ibatis搭建及配置

       Ibatis持久层框架是MyBatis的前身, 在springMVC中Ibatis与MyBatis使用不同,必须实现dao层,之前由于dao层没有实现出现了许多bug,这个地方比较容易出错。MyBatis中mapper接口与xml文件之间通过namespace一一对应进行绑定,Ibtis中namespace不是必要的通过id将方法与xml文件sql语句的执行相关联,Ibatis中dao层方法的return语句写法上也有讲究。

        pom配置文件:

                
		
			org.apache.ibatis
			ibatis-sqlmap
			2.3.4.726
		

		
		
			mysql
			mysql-connector-java
			5.1.38
		

    db.properties数据库配置文件

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/sim?useUnicode=true&characterEncoding=utf8
username=root
password=uroot

    dao层配置

    
	

	
	
		
		
		
		
	

	
	
		
			
		
		
	

	
	
		
			
		
	

SqlMapConfig.xml

       

BaseDao 重要 不实现会报错

public class BaseDao extends SqlMapClientDaoSupport{
	//通过bean名称注入   
    @Resource(name="sqlMapClient")  
    private SqlMapClient sqlMapClient; 
    
    //完成sqlMapClient初始化工作   
    @PostConstruct  
    public void initSqlMapClient(){  
        super.setSqlMapClient(sqlMapClient);  
    }  
}

UserDao继承BaseDao

@Component  //将UserDao类注入到bean里面 
public class UserDao extends BaseDao{
	//找到所有未删除的用户
	//告诉编译器忽略指定的警告,不用在编译完成后出现警告信息。
	@SuppressWarnings("unchecked")  
	public List selectUsers() throws Exception{  
		return getSqlMapClientTemplate().queryForList("selectUsers");
	}
	//根据用户名寻找用户
	public User getUserByName(String name) throws Exception{  
		return (User) getSqlMapClientTemplate().queryForObject("findUserByName",name);  
	}  
	//根据id删除用户
	public boolean deleteUser(int id) throws Exception{  
		int result = getSqlMapClientTemplate().delete("deleteUser", id);  
		return result > 0 ? true : false;  
	} 
}

映射文件UserMapper.xml


 

	
	
	
	
	     
	
	    
        update 
        	querry  
        set
            is_delete=1  
        where 
        	id=#id#  
      

附:项目链接 点击打开链接


SqlMapConfig.xml 中配置数据库连接不一样




	
	
	
	 
		
			
			
			
			
		
	
	
	
 

你可能感兴趣的:(Ibatis搭建及配置)