当前位置 : 主页 > 编程语言 > c++ >

Mybatis中通过注解配置数据库语句

来源:互联网 收集:自由互联 发布时间:2021-07-03
t.text 常用Annotation注解1.select语句@Select("select * from tb_user where tb_id=#{tb_id}")通过在Mapper映射接口方法上声明,进行查询,如果需要进行返回结果单独映射,可以通过Results来进行,如下:
t.text
常用Annotation注解
1.select语句
@Select("select  * from tb_user where tb_id=#{tb_id}")
通过在Mapper映射接口方法上声明,进行查询,如果需要进行返回结果单独映射,可以通过Results来进行,如下:
@Results({
			@Result(id=true,column="tb_id",property="id"),
			@Result(column="tb_name",property="name"),
			@Result(column="tb_sex",property="sex"),
			@Result(column="tb_age",property="age")
	})
在results元素中通过{}包含result元素,在result元素中可以通过id属性指定表中的主键,column指的是数据库表的列名
,property表示类中的属性名,当涉及到多个查询参数时,可以通过Param来给方法中的参数进行名称定义,从而对应相应
的查询条件中的#{参数},如下:
List
 
   findById(@Param("tb_id") int id);
上述代码中将id参数通过Param重新定义成tb_id,之后在查询语句中将参数改为tb_id即可。

2.Options
Options表示在数据库操作时附加的配置,例如插入的时候进行自动增加,将返回主键的参数带入到类的属性中。例如:
@Options(useGeneratedKeys=true,keyProperty="id")
其中keyProperty表示将数据生成的主键设置到id属性中。

3.一对一关系的注解,通过one属性来进行。例子:
@Result(column="card_id",property="card",one=@One(select=""))
上述代码中假设person与card两张表是一对一关系,在person这个返回类中由于card是来自Card属性的,其中card_id表示
引用card的主键做外键,one属性表示是一个一对一的关系,@One注解的select表示关联要执行的语句。

4.一对多关系的注解,通过many属性来进行。例子:
@Result(column="card_id",property="card",many=@many(select=""))
与一对一的区别在于一对多使用many进行,而一对一使用One进行。

5.多对多关系即通过one以及many同时使用,单例使用one,集合使用Many。例子:

	@Select("select * from clazz")
	@Results({
		@Result(id=true,column="id",property="id"),
		@Result(column="code",property="code"),
		@Result(column="id",property="students",
		many=@Many(select="com.mapper.StudentMapper.selectbyId",fetchType=FetchType.LAZY))
		
	})
	List
  
    selectClazz(); 上述代码中通过班级查询到学生的信息,在最后一个result中column="id",表示使用id作为参数传入到@Many中的selectbyId 这个方法中作为函数参数。另一个接口StudentMapper如下: public interface StudentMapper { @Select("select * from student where clazz_id=#{id}") @Results({ @Result(id=true,column="id",property="id"), @Result(column="name",property="name"), @Result(column="sex",property="sex"), @Result(column="age",property="age"), }) List
   
     selectbyId(int id); } 该接口定义一个方法用来查询学生信息,并通过results来进行数据的绑定。
   
  
 
网友评论