mybatis 注解方式

在spring 的配置文件中添加配置

<!--配置Mapper扫描模式,所有Mapper都继承SqlMapper接口  -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.lovo.mapper" />
        <property name="markerInterface" value="com.lovo.mapper.SqlMapper" />
    </bean>

包名为"com.lovo.mapper; 在包中有标志接口SqlMapper

package com.lovo.mapper;

public interface SqlMapper {

}

所有的mapper 继承于标志接口

  public interface OutContractMapper extends SqlMapper {

  .....................................

}

一、查询

1、

@Select("select * from c_cbdcarport limit #{param1},#{param2}")
    @Results(value={
            @Result(property="id",column="id",id=true),
            @Result(property="address",column="address"),
            @Result(property="carportnumber",column="carportnumber"),
            @Result(property="areanumber",column="areanumber"),
            @Result(property="status",column="status"),
            
    })
    public List<CBDCarportEntity> getAllCdbcarport(int pageNum,int rowNum);

2、

   @Select("select count(*) as rows from c_cbdcarport")
      @ResultType(value=int.class)
      public int getRows();

3、

        @Select("<script>"
            + " select count(*) as rows from c_contract where 1=1 "
            + "<if test=\"param1 != null and param1 !=‘‘\">"
            + "and contractnumber like concat(‘%‘,#{param1},‘%‘) "
            + "</if>"
            + "<if test=\"param2 != null and param2 !=‘‘\">"
            + "and startTime &gt;= #{param2} "
            + "</if>"
            + "<if test=\"param3 != null and param3 !=‘‘\">"
            + "and endTime &lt;= #{param3} "
            + "</if>"
            + "</script>")
    @ResultType(value = int.class)
    public int getRows(String number,String startTime,String endTime);

4、

    @Select("<script>"
            +"select * from c_publishinfo where status=‘0‘"
            + "<if test=\"param1!=null and param1 !=‘‘\">"
            + "and starttime &gt;=#{param1}"
            +"</if>"
            +"<if test=\"param2 !=null and param2 !=‘‘\">"
            +"and endtime &lt;=#{param2}"
            +"</if>"
            + " limit #{param3},#{param4}"
            +"</script>")
    @Results(value={
            @Result(property="id",column="id",id=true),
            @Result(property="address",column="address"),
            @Result(property="carportnum",column="carportnumber"),
            @Result(property="permitnumber",column="permitnumber"),
            @Result(property="carportpic",column="carportpic"),
            @Result(property="starttime",column="starttime"),
            @Result(property="endtime",column="endtime"),
            @Result(property="price",column="price"),
            @Result(property="status",column="status"),
            @Result(property="lender_id",column="lender_id"),
            @Result(property="time",column="time"),
            @Result(property="lender",column="lender_id",
            [email protected](select="com.lovo.mapper.LenderMapper.getLenderEntityById"))
           
    })
    public List<PublishinfoEntity> getAllPublish(String starttime,String endtime,int page,int pageSize);

二、添加

  @Insert("insert into c_cbdcarport values(null,#{address},#{carportnumber},#{areanumber},#{status},null,null)")
      @Options(useGeneratedKeys=true,keyProperty="id")
    public void addCdbcarport(CBDCarportEntity Cdbcarport);

三、删除

@Delete("delete from c_cbdcarport where id = #{id}")
    public void delCdbcarportById(int id);

四、修改

  @Update("update c_cbdcarport set address=#{address},carportnumber=#{carportnumber}"
        +",areanumber=#{areanumber},status=#{status} where id=#{id}")
    public void updateCdbcarport(CBDCarportEntity Cdbcarport);

时间: 2024-11-09 02:46:34

mybatis 注解方式的相关文章

MyBatis从入门到精通(第3章): MyBatis注解方式的基本使用

MyBatis 注解方式就是将 SQL 语句直接写在DAO层的接口上. 在黑马2018年录制的双元视频课:\08 SSM整合案例[企业权限管理系统]\07.订单操作  有使用mybatis注解进行多表关联查询的案例,在下文会有使用注解的补充说明. 这种方式的优点是 , 对于需求比较简单的系统,效率较高.缺点是 ,当 SQL 有变化时都需要重新编译代码, 一般情况下不建议使用MyBatis的注解方式 . 因此, (原书)本章不会进行深入讲解. 在 MyBatis 注解 SQL 中,最基本的就是@S

mybatis注解方式和xml方式的使用

Mybatis的注解方式的使用: Mybatis的xml的使用 原文地址:https://www.cnblogs.com/xjatj/p/9277426.html

Mybatis(三)MyBatis 注解方式的基本 用法

在 MyBatis注解 SQL 中,最基本的就是@Select.@Insert.@Update 和@Delete 四种. 原文地址:https://www.cnblogs.com/cuiqq/p/11155227.html

5、springcloud整合mybatis注解方式

公众号:java乐园 1.上一篇学习了服务提供者provider,但是并不是单单就学习了服务提供者.中间还穿插使用了Hikari数据源和spring cloud整合mybatis.但是上篇使用mybatis时还是沿用了老的方式,需要配置mapper对应的xml文件.先来看看上篇使用mybatis的主要步骤一. pom.xml文件引用 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis

MyBatis应用开发(3)应用之开发方式注解方式篇

1.1. 注解方式 1.1.1. 开发步骤 目标:使用MyBatis从数据库中查询t_person表的全部记录. MyBatis还可以使用注解来配置数据库中的记录与Java对象之间的映射关系.此时SQL语句出现在Mapper接口的方法的注解中.优点是不再需要编写独立的Mapper配置文件. 使用MyBatis 的注解方式开发数据库应用的步骤如下所示: (1)编写POJO类Person. (2)编写Mapper接口PersonMapper. (3)编写业务接口PersonService. (4)编

从零开始学JAVA(09)-使用SpringMVC4 + Mybatis + MySql 例子(注解方式开发)

项目需要,继续学习springmvc,这里加入Mybatis对数据库的访问,并写下一个简单的例子便于以后学习,希望对看的人有帮助.上一篇被移出博客主页,这一篇努力排版整齐,更原创,希望不要再被移出主页了. 原创文章,后面附上源码,转载请注明出处http://www.cnblogs.com/lin557/p/6179618.html 一.运行环境 Eclipse Neon.1a Release (4.6.1) 官网下载 mysql-5.7.16-winx64(http://cdn.mysql.co

mybatis之注解方式实现

* 使用mybatis举例,使用注解方式实现* 不需要针对UserMapperI接口去编写具体的实现类代码,这个具体的实现类由MyBatis帮我们动态构建出来,我们只需要直接拿来使用即可.* 1.导入jar包:mybatis和mysql-connector* 2.mybatis配置文件:mybatis-config.xml,加载Mapper接口路径* 3.编写JavaBean类:UserBean* 4.编写执行sql接口* 5.编写测试类进行测试 mybatis-config-zhujie.xm

springboot整合mybatis(映射文件方式和注解方式)

springboot作为一个微服务框架,给我们开发人员提供极大的便利,秉着约定大于配置的原则,通过starter包的形式为我们做了许多默认的配置,在进行数据持久化到关系型数据库时,我们一般都会首选spring data jpa,springboot为我们提供了starter包,只需配置很少的参数,就能满足我们的需求,非常方便.但是当我们遇到一些比较复杂的查询.多表关联查询及动态sql时,mybatis则在这方面更出色,并且在使用mybatis时我们可以通过sql优化来提高查询效率,springb

mybatis(4)--使用注解方式配置sql语句

使用注解方式配置sql语句,不需要写对应的UserMapper.xml package com.mapper; import java.util.List; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations