`
carlosfu
  • 浏览: 581569 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Ba8b5055-9c58-3ab0-8a1c-e710f0495d2c
BigMemory实战与理...
浏览量:31127
53b2087e-c637-34d2-b61d-257846f73ade
RedisCluster开...
浏览量:150899
C9f66038-7478-3388-8086-d20c1f535495
缓存的使用与设计
浏览量:125033
社区版块
存档分类
最新评论

MyBatis系列目录--3. Mybatis注解

阅读更多

转载请注明出处哈:http://carlosfu.iteye.com/blog/2238662


 

1. PlayerDao注解方式实现

package com.sohu.tv.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.apache.ibatis.annotations.Insert;
import com.sohu.tv.bean.Player;
/**
 * 注解方式实现PlayerDao
 * @author leifu
 * @Date 2015年7月28日
 * @Time 上午10:16:39
 */
public interface PlayerAnnotationDao {
    @Insert("insert into players(name, age) values(#{name}, #{age})")
    public int savePlayer(Player player);
  
    @Delete("delete from players where id=#{id}")
    public int deletePlayer(int id);
     
    @Update("update players set name=#{name},age=#{age} where id=#{id}")
    public int updatePlayer(Player player);
     
    @Select("select id,name,age from players where id=#{id}")
    public Player getPlayerById(int id);
     
    @Select("select id,name,age from players")
    public List<Player> selectAllPlayers();
}

 

2. mybatis-base.xml添加注解相关配置

<mappers>
    <mapper class="com.sohu.tv.mapper.PlayerAnnotationDao"/>
</mappers>

 

3. 单元测试:

package com.sohu.tv.test.mapper;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import com.sohu.tv.bean.Player;
import com.sohu.tv.mapper.PlayerAnnotationDao;
/**
 * mybatis-annotation实现方式配置
 * 
 * @author leifu
 * @Date 2015年7月28日
 * @Time 上午9:54:07
 */
public class PlayerMapperAnnotationTest extends BaseTest {
    private SqlSession sqlSession;
    @Before
    public void before() {
        sqlSession = sessionFactory.openSession(true);
    }
    @After
    public void after() {
        sqlSession.close();
    }
    @Test
    public void testGetPlayer() {
        PlayerAnnotationDao playerAnnotationDao = sqlSession.getMapper(PlayerAnnotationDao.class);
        Player player = playerAnnotationDao.getPlayerById(1);
        System.out.println(player);
    }
    @Test
    public void testInsertPlayer() {
        PlayerAnnotationDao playerAnnotationDao = sqlSession.getMapper(PlayerAnnotationDao.class);
        playerAnnotationDao.savePlayer(new Player(-1, "carlos", 34));
    }
    @Test
    public void testDeletePlayer() {
        PlayerAnnotationDao playerAnnotationDao = sqlSession.getMapper(PlayerAnnotationDao.class);
        playerAnnotationDao.deletePlayer(4);
    }
    @Test
    public void testUpdatePlayer() {
        PlayerAnnotationDao playerAnnotationDao = sqlSession.getMapper(PlayerAnnotationDao.class);
        playerAnnotationDao.updatePlayer(new Player(3, "ronaldo", 39));
    }
    @Test
    public void testSelectAllPlayers() {
        PlayerAnnotationDao playerAnnotationDao = sqlSession.getMapper(PlayerAnnotationDao.class);
        List<Player> playerList = playerAnnotationDao.selectAllPlayers();
        if (playerList != null && !playerList.isEmpty()) {
            System.out.println("playerList size: " + playerList.size());
            for (Player player : playerList) {
                System.out.println(player);
            }
        }
    }
}

  

2
2
分享到:
评论

相关推荐

    mybatis-3-config.dtd mybatis-3-mapper.dtd

    MyBatis是一个流行的Java持久层框架,它简化了数据库操作,通过XML或注解的方式将SQL与Java代码绑定,提供了一种直接操作结果集的方法。在MyBatis中,`mybatis-3-config.dtd` 和 `mybatis-3-mapper.dtd` 是两个至关...

    mybatis-plus-annotation-3.5.3.2.jar

    mybatis-plus-annotation.jar MP 注解 jar 包 mybatis-plus 的注解 jar 包,包含了 mybatis-plus 注解功能 各个版本

    mybatis-3-mapper.rar

    MyBatis是一个流行的Java持久层框架,它简化了数据库操作,通过XML或注解的方式将SQL与Java代码绑定,使得开发者能够更专注于SQL本身。在处理`mybatis-3-mapper.dtd`这个问题时,我们需要深入理解MyBatis的Mapper...

    mybatis-3-mapper.dtd.zip

    MyBatis是一个流行的Java持久层框架,它简化了数据库与Java应用之间的交互,通过XML或注解的方式将SQL语句映射为Java方法。在MyBatis中,`mybatis-3-mapper.dtd`文件扮演着至关重要的角色,它是MyBatis XML映射文件...

    mybatis-plus-annotation-3.5.3.jar

    mybatis-plus-annotation.jar MP 注解 jar 包 mybatis-plus 的注解 jar 包,包含了 mybatis-plus 注解功能 各个版本

    mybatis-spring-1.3.0.jar 下载

    3. **SqlSessionFactoryBean**:MyBatis-Spring提供了一个SqlSessionFactoryBean,它是Spring的Bean工厂,用于创建SqlSessionFactory,这是MyBatis的核心对象,负责管理SqlSession和配置信息。 4. **...

    mybatis-spring-1.3.1.jar下载

    5. **事务管理**:在Service层,使用@Transactional注解开启事务,MyBatis-Spring会自动管理事务的开始、提交或回滚。 总的来说,MyBatis-Spring 1.3.1.jar的使用极大地简化了MyBatis与Spring的集成,使得开发人员...

    mybatis-3-mybatis-3.3.0.zip

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在"Mybatis-3-mybatis-3.3.0.zip"这个压缩包中,我们可以找到MyBatis...

    mybatis-3.2.8 mybatis-3.3.0-SNAPSHOT.jar

    1. **动态SQL增强**:MyBatis允许在映射文件或接口方法注解中编写动态SQL,使得SQL可以根据条件动态生成,提高了代码的可读性和可维护性。 2. **参数映射优化**:3.2.8版本进一步优化了参数映射机制,提高了参数...

    mybatis-spring-1.3.3.jar官方下载

    MyBatis 可以使用简单的 XML 或注解进行配置和原始映射,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录。 Spring 框架则是一个开源的应用框架,它提供了一个全面的企业级...

    实体类带注释、支持lombok的mybatis-generator-core-1.3.7.jar

    mybatis-generator-core-1.3.7.jar 带注释,支持lombok,如 @Data public class Person { /** * 自增ID */ private Long id; }

    mybatis-generator-core-1.3.2.rar

    3. **mybatis.jar**:MyBatis框架的主要库,MBG生成的代码依赖于MyBatis,因此需要包含这个JAR。MyBatis是一个轻量级的持久层框架,它允许开发者通过SQL语句直接操作数据库,将SQL与Java代码分离,提供更灵活的控制...

    mybatis-3.0.3-SNAPSHOT-bundle.zip

    3. **mybatis-3.0.3-SNAPSHOT-javadoc.jar**:包含MyBatis API的Java文档,提供了详细的方法和类的说明,是编写MyBatis应用时的重要参考资料。 4. **pom.xml**:如果是Maven项目,这个文件是项目的配置文件,列出了...

    mybatis-3-mybatis-3.3.0.rar

    在压缩包子文件的文件名称列表中,出现了"mybatis-3-mybatis-3.3.0.zip"和"mybatis-3-mybatis-3.3.0.tar.gz"两个文件,这通常是MyBatis源码的不同压缩格式,分别对应ZIP和GZ压缩。解压这些文件后,开发者可以查看...

    mybatis-3.2.2-src.rar 源码

    2. **XML配置与注解**:Mybatis 使用XML或注解的方式定义SQL映射文件,这些文件包含了SQL语句及其参数绑定、结果映射等信息。开发者可以灵活地编写复杂的SQL,同时避免了大量DAO层的代码。 3. **动态SQL**:Mybatis...

Global site tag (gtag.js) - Google Analytics