当前位置: 首页 > news >正文

浙江省公路建设发票网站香港seo公司

浙江省公路建设发票网站,香港seo公司,一级消防工程师考试科目,东莞市网站建设目录 1、查询一个实体类对象 2、查询一个List集合 3、查询单个数据 5、查询多条数据并存储在Map集合中 5.1 方法一:将数据存储在map集合中,再将map集合存储在List集合中 5.2 方法二:将数据存储在map集合中 6、MyBatis中为Java中常用的…

目录

1、查询一个实体类对象

2、查询一个List集合

3、查询单个数据

5、查询多条数据并存储在Map集合中

5.1 方法一:将数据存储在map集合中,再将map集合存储在List集合中

5.2 方法二:将数据存储在map集合中

6、MyBatis中为Java中常用的类型设置了类型别名


在之前的博客中介绍了MyBatis实现了数据库基本的增删改查,博客中使用的实体类为User类,相关内容可查看博客:NO.2 MyBatis框架:创建Mapper接口和映射文件,实现基本增删改查_qq_46053741的博客-CSDN博客

对于MyBatis的查询功能,都需要指明查询结果的返回类型,通常使用resultType和resultMap属性指定结果类型。接下来介绍MyBatis的各种查询功能。

1、查询一个实体类对象

 查询实体类对象,若参数为实体类的对象,则在查询语句中只需要使用${}和#{}访问实体类的属性名即可获得对应的属性值;若参数是Map集合,则在查询语句中使用${}和#{}访问Map集合的键即可获得对应的value值;若参数是一个字面量时,可以使用@Param注解的方式,通过${}和#{}访问形参获取形参的值。注意:使用${}获取属性值时,两边要加单引号,需要指定查询的结果返回类型

例如:

使用@Param注解的方式获取形参的值,在mapper接口中声明getUserByUsername方法,如下

    //根据用户名查询用户信息User getUserByUsername(@Param("username") String username);

在映射文件中实现Sql语句,使用resultType指明结果类型为User类型。

<!-- User getUserByUsername(@Param("username") String username)-->
<select id="getUserByUsername" resultType="User">select *from t_user where username=#{username}
</select>

2、查询一个List集合

查询多条数据时,不能使用实体类作为函数的返回值,要使用List集合作为方法的返回值,存储的类型为实体类类型(例如:List<User>),此时映射文件中查询结果类型为实体类型。

例如:

在Mapper接口中声明getAllUser方法,查询所有用户信息,将查询到的用户信息存储到List集合中返回。

//查询所用用户,并存储在List集合中
List<User> getAllUser();

在映射文件中实现Sql语句,使用resultType指定结果类型。

<!--    List<User> getAllUser();--><select id="getAllUser" resultType="User">select *from t_user</select>

3、查询单个数据

单个数据的查询主要用于查询数据的总条数,属于特殊值查询,此时resultType的结果类型指定为_integer。

例如:

在Maperr接口中声明getCount()方法。

    //获取总记录数int getCount();

在映射文件中实现Sql语句,resultType的结果类型为_integer。

<!--    int getCount();--><select id="getCount" resultType="_integer">select count(*) from t_user</select>

 4、查询一条数据为map集合

查询一条数据存储在Map集合中时,方法的返回值为Map,其中Map的键为String类型,值为Object类型。在映射文件中,结果类型指定为map类型。

例如:

在Mapper接口中声明getUserToMapByUsernameAndPassword(@Param("username") String username,@Param("password") String password)方法,将查询到的用户信息存储到Map集合中返回。

    //根据用户名和密码查询用户信息为map集合Map<String,Object> getUserToMapByUsernameAndPassword(@Param("username") String username,@Param("password") String password);

在映射文件中实现Sql语句,结果类型指定为map

<!--    Map<String,Object> getUserToMapByUsernameAndPassword(@Param("username") String username,@Param("password") String password);--><select id="getUserToMapByUsernameAndPassword" resultType="map">select *from t_user where username=#{username} and password=#{password}</select>

5、查询多条数据并存储在Map集合中

将多条数据存储在Map集合中有两种实现方式。方式一:将数据先存储在Map集合中,再将Map存储在List集合中输出。方式二:直接将数据存储在Map集合中输出。

5.1 方法一:将数据存储在map集合中,再将map集合存储在List集合中

将表中的数据以Map集合的方式查询,一条数据对应一个Map;若有多条数据,就会产生多个Map集合,此时将这些Map放在一个List集合中获取。

例如:

在Mapper接口中实现getAllUserByMapAndList()方法,方法的返回类型为List<Map<String ,Object>>.

    //方法一:List<Map<String,Object>> getAllUserByMapAndList();

在映射文件中实现Sql语句,resultType的结果类型为map

<!--    List<Map<String,Object>> getAllUserByMapAndList();--><select id="getAllUserByMapAndList" resultType="map">select *from t_user</select>

5.2 方法二:将数据存储在map集合中

将表中的数据以map集合的方式查询,一条数据对应一个map;若有多条数据,就会产生多个map集合,并且最终要以一个map的方式返回数据,此时需要通过@MapKey注解设置map集合的键,值是每条数据所对应的map集合

例如:

在Mapper接口中声明getAllUserToMap()方法,用@MapKey注解该方法,使用用户的id作为Map集合的键,用户信息作为Map的值。

    //方法二@MapKey("id")Map<String,Object> getAllUserToMap();

在映射文件中实现Sql语句,resultType指定为map

<!--    Map<String,Object> getAllUserToMap();--><select id="getAllUserToMap" resultType="map">select *from t_user</select>

6、MyBatis中为Java中常用的类型设置了类型别名

对于实体类型resultType的结果类型通常指定为实体类类型,或在MyBatis的核心配置文件中通过typeAliases标签中的typeAlias标签的type属性指定实体类的路径,alias指定实体类的别名,或通过包设置类型别名,指定包下所有的类型将全部拥有默认的别名,即类名且不区分大小写(<package name="包的路径"/>)。

MyBatis自定义以下类的类型别名如下:

Integer:Integer,int

int:_int,_integer

Map:map

String:string

http://www.tj-hxxt.cn/news/10265.html

相关文章:

  • 石家庄小学网站建设营销计划书7个步骤
  • 网站域名更换云搜索app
  • 摄影旅游网站源码seo关键词优化软件app
  • 专业做冻货的网站厦门seo公司到1火星
  • 网站建设项目规划书案例品牌seo推广
  • 做外贸现在一般都通过哪些网站互联网营销师是做什么的
  • 记事本做网站怎么插图合肥正规的seo公司
  • 西城区住房和城乡建设委员会网站找精准客户的app
  • 网站建设办公软文营销文案
  • 网站视觉规范广州seo团队
  • wordpress只作为前端seo中文
  • 青岛网络科技公司排名seo sem优化
  • 网站后台怎么建设电商平台怎么加入
  • 常州做网站麦策快速网站轻松排名
  • 网站地址英文网络的推广方式有哪些
  • 东莞订制网站建设产品怎么在网上推广
  • 天津营销网站建设联系方式北京环球影城每日客流怎么看
  • wordpress the7 使用超级优化
  • 二维码生成器加logoseo关键词优化排名公司
  • 受欢迎的免费建站杭州seo推广优化公司
  • 北苑做网站的公司最新国际新闻热点事件
  • 成都网站建设外包服务外包平台
  • 做网站的软件多少钱seo网站排名厂商定制
  • 网站开发与维护的岗位特点职责宁波seo关键词排名
  • 建设部网站 自住房网站网络推广服务
  • 单位网站建设和维护哈尔滨百度关键词优化
  • 廊坊网站建设系统宁波网站推广方式怎么样
  • 和狗做视频那一个网站外贸seo软文发布平台
  • 浏览器官网入口湖南企业seo优化
  • 做建设网站的活的兼职软件测试培训机构哪家好