user类

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.mapper.UserMapper">

<resultMap id="userMap" type="User"> //user对象映射
<id property="userId" column="user_id" javaType="int"></id>//user的Id
<result property="userName" column="user_name" javaType="string"/> //user的属性
<result property="userMoney" column="user_money" javaType="string"/>
</resultMap>

<resultMap id="userAndInfoMap" type="User">
<id property="userId" column="user_id" javaType="int"></id>
<result property="userName" column="user_name" javaType="string"/>
<result property="userMoney" column="user_money" javaType="string"/>
<!-- <association property="info" resultMap="com.mapper.UserInfoMapper.infoMap" javaType="UserInfo"/> -->  // user对象包含的对象的配置方式一(user的sql里面写join连接info表)

<association property="info" column="user_id" javaType="UserInfo"   //user对象包含的对象的配置方式一(各查各的互补影响)
select ="com.mapper.UserInfoMapper.findUserInfoByUserId"> 
</association>

</resultMap>

<insert id="addUser" parameterType="User">
insert into user values(null,#{user.userName},#{user.userMoney})
</insert>

<delete id="deleteUserByuserId">
delete from user where user_id = #{id}
</delete>

<update id="updateUser" parameterType="User">     //parameterType="User" 表示传递的参数的类型   //id="updateUser"使用的方法名
update user set user_name=#{user.userName},user_money=#{user.userMoney
} where user_id=#{user.userId}
</update>

<select id="selectUserByuserId" resultMap="userAndInfoMap">   // resultMap="userAndInfoMap"返回值的类型,如果返回值是List<UserInfo>也用这个类型
select * from user u left join userInfo i on u.user_id = i.user_id where u.user_id = #{id}
</select>

<select id="findAllUser" resultMap="userMap">
select * from user
</select>

<select id="findUserCount" resultType="int">
select count(*) from user where user_id !=2
</select>

<select id="findUserByuserNameLike" resultMap="userMap">
select * from user where user_name like '%${userName}%'
</select>

</mapper>

          userInfo类

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.mapper.UserInfoMapper">

<resultMap id="infoMap" type="UserInfo">//对象映射
<id property="infoId" column="info_id" javaType="int"></id>
<result property="infoName" column="info_name" javaType="string"/>
</resultMap>

<select id="findUserInfoByid" resultMap="infoMap">
select * from userInfo where info_id =#{id}
</select>
<select id="findUserInfoByUserId" resultMap="infoMap">
select * from userInfo where user_id =#{id}
</select>
</mapper>

mybatis一简单one2one关系xml配置的更多相关文章

  1. MyBatis入门程序(基于XML配置)

    创建一个简单的MyBatis入门程序,实现对学生信息的增删改查功能(基于XML配置) 一.新建一个Java工程,导入MyBatis核心jar包.日志相关的jar包以及连接Oracle数据库所需驱动包, ...

  2. Spring Boot 框架下使用MyBatis访问数据库之基于XML配置的方式

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...

  3. android动画(1)各种动画属性表,简单代码,xml配置

    1.动画的属性表 1.1 常用属性 它们可以通过代码setXXX,getXXX,也可在xml中配置. 属性[类型] 功能 备注 Duration[long] 属性为动画持续时间 时间以毫秒为单位 fi ...

  4. MyBatis学习笔记3--使用XML配置SQL映射器

    <resultMap type="Student" id="StudentResult"> <id property="id&quo ...

  5. Spring和mybatis整合后的mybais-config.xml配置

    <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC & ...

  6. struts2 mybatis spring hibernate 框架 pom.xml配置 下载地址

    访问以下地址:搜索需要框架的配置  选择需要的版本 http://mvnrepository.com

  7. 单独使用MyBatis的简单示例

    单独使用MyBatis的简单示例:mybaties-config.xml:MyBatis配置文件 <?xml version="1.0" encoding="UTF ...

  8. Spring注解配置和xml配置优缺点比较

    Spring注解配置和xml配置优缺点比较 编辑 ​ 在昨天发布的文章<spring boot基于注解方式配置datasource>一文中凯哥简单的对xml配置和注解配置进行了比较.然后朋 ...

  9. springboot中xml配置之@ImportResource

    springboot中进行相关的配置往往有java配置和xml配置两种方式. 使用java的方式配置只需要使用@configuration注解即可,而使用xml的方式配置的话需要使用@ImportRe ...

随机推荐

  1. 关于pandas 调用mongodb出Memory error错误

    其实就是内存不够了,我加载的数据是800多万,数据量太大出错下面试错误提示 C:\Users\souwayai\Miniconda3\python.exe D:/www/use_pandas/pd7. ...

  2. 1、SpringBoot bean,list,map Json返回

    1.Bean public class User { private int id; private String username; private String password; public ...

  3. 分布式事务、多数据源、分库分表中间件之spring boot基于Atomikos+XADataSource分布式事务配置(100%纯动态)

    本文描述spring boot基于Atomikos+DruidXADataSource分布式事务配置(100%纯动态),也就是增加.减少数据源只需要修改application.properties文件 ...

  4. 设计模式理解(十)结构型——享元(Flyweight)

    最后一个结构型,享元.没有太多的项目经验,对这种模式只有一种概念上的理解,就是为了节约内存等资源,把可重用的东西只申请一次,然后处处调用,同时用Hash进行管理. 直接上图: 代码: /******* ...

  5. JSP页面静态包含和动态包含的区别与联系

    ---恢复内容开始--- JSP页面静态包含和动态包含的区别与联系: 1.<%@ include file=" " %> 是指令元素,<jsp:include p ...

  6. 图像旋转与图像缩放及Matlab代码实现

    本周的作业是自己通过公式编写图像旋转与缩放的代码.今天先通过调用函数的方法来实现. 图像的旋转: A=imread('2.jpg'); J=imrotate(A, 30); subplot(1,2,1 ...

  7. Python3 tkinter基础 Scale orient 横竖 resolution单步步长 length 长度 tickinterval 指示刻度

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  8. C#Razor模板引擎简单使用

    引用 install-package RazorEngine 使用 public class TestDemo { private string name; public int Age { get ...

  9. Ubuntu 18.04 LTS 常用软件安装杂记

    之前个人笔记本装的是 Linux Mint,用了一段时间但是体验不佳,所以打算换成 Ubuntu .作为一个 Linux 小白,当时配置一些软件环境费了不少时间.这次打算简单记录下,和大家分享一下我的 ...

  10. Thinkphp5背景图片的引入~ 以及图片的引入

    将图片信息从数据库查询 再渲染于前台页面