操作数据库
目前service层方法,从库借用连接,操作数据库sql,先写操作数据库的代码
1、认识:mybatis-plus源码类是mybatis的增强版,是持久层的框架(mapper标记的接口下面的方法和sql的关系存储):
2、配置:pom.xml配置mybatis-plus-boot-starter
3、源码-注解类
@Mapper 标记在接口上,让此接口作为MyBatis mapper文件,此接口内部可以定义sql @Select 标记在方法上,主要做查询的,变量value=查询的sql @Insert 标记在方法上,主要做插入的,变量value=insert的sql @Delete 标记在方法上,主要做删除的,变量value=delete的sql @Update 标记在方法上,主要做更新的,变量value=update的sql @TableName 标记在类上,变量value=数据库标名,作用是类和表对应 @TableId 标记在属性上,变量value=表主键,type=自增,作用是类属性和表主健对应 @TableField 标记在属性上,变量value=表的某个列,作用是类属性和表某列对应步骤:
1、@mapper标记接口+在spring库下建相关表
2、据service层方法,再结合注解@Select来写代码(使用实体类来定义属性)
配置-在pom文件中
新建mapper类-新建的是接口类
引入@mapper 注解,因这个注解需要在新的类上,所以新建包新建类
作用:标记在接口上,让此接口作为MyBatis mapper文件,此接口内部可以定义sql
@select注解
UserService的login---->借用连接---->UserMapper操作数据库sql的login
UserService的getinfo---->借用连接---->UserMapper操作数据库sql的getinfologin方法的sql怎么写
根据数据库的内容一一对应
@Select("select count(*) from user where name=#{name} and passwd=#{pwd}") int login(String name,String pwd);
怎么构建实体类
getinfo方法的sql怎么写
因为userservice传入的是int uid,在数据库里id=uid,需要一一对应
为什么不需要上边的样式,是因为这个是对整个表进行查询,所以select 跟*
这个*代表:三列
所以返回值应该写什么,因为*是返回整个表,所以这里的返回值是一整个表
创建一个实体类
映射到一个对象上,需要新建一个model包-这里存放的是模型,所以设置user,对应数据库里表内容(列),因为这三个属性对应的数据类型如下
所以在代码中需要定义属性
设置getset方法,使用@data注解(添加setget方法等)
增加无参空构造@NoArgsConstructor
增加所有参数构造@AllArgsConstructor
增加数据库表名,这里对应spring数据库内的user表
增加表主键标识,因为组建是递增的对应,所以对应user表中的主键id
字符串列,用一个新的注解@tableField是表字段标识,就是列的标识,代码中的name对应数据库的name
总的
所以现在usermapper里的getinfo方法--返回值是这个user类
但存储数据有多种,可以使用map存储数据,也可以使用实体类
总结
原文地址:https://blog.csdn.net/weixin_51482243/article/details/142365534
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!