mybactis多对一
来源:互联网 发布:2017手机淘宝主图尺寸 编辑:程序博客网 时间:2024/06/05 18:06
Mybactis多对一
mybactis的多对一的思想与一对多的思想并没有太大的差别,只不过是将期反过来,具体代码变化也不大,只是将实体映射类中的collection属性改为association属性,并将对应的值改变
需要的jar包:1、mybatis-3.2.3.jar
2、 mysql-connector-java-5.1.25-bin.jar
具体代码如下:
Users实体类:
package com.huweiyang.bean;
import java.io.Serializable;
importjava.util.List;
publicclassUsersimplements Serializable{
privateintid;
private Stringusername;
private Stringmain;
publicint getId() {
returnid;
}
publicvoid setId(intid) {
this.id =id;
}
public String getUsername() {
returnusername;
}
publicvoid setUsername(Stringusername) {
this.username =username;
}
public String getMain() {
returnmain;
}
publicvoid setMain(Stringmain) {
this.main =main;
}
}
Post实体类:
package com.huweiyang.bean;
import java.io.Serializable;
publicclassPostimplements Serializable{
privateintpost_id;
private Usersuser;
publicint getPost_id() {
returnpost_id;
}
publicvoid setPost_id(intpost_id) {
this.post_id =post_id;
}
public Users getUser() {
returnuser;
}
publicvoid setUser(Usersuser) {
this.user =user;
}
public String getPsrt() {
returnpsrt;
}
publicvoid setPsrt(Stringpsrt) {
this.psrt =psrt;
}
public String getMoter() {
returnmoter;
}
publicvoid setMoter(Stringmoter) {
this.moter =moter;
}
private Stringpsrt;
private Stringmoter;
}
实体类的映射:
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEmapper PUBLIC "-//mybatis.org//DTDMapper 3.0//EN" "mybatis-3-mapper.dtd">
<mappernamespace="com.huweiyang.bean.Post">
<resultMapid="resultuserMap"type="Post">
<resultproperty="post_id"column="post_id"/>
<resultproperty="psrt"column="psrt"/>
<resultproperty="moter"column="moter"/>
<associationproperty="user"javaType="Users">
<resultproperty="id"column="usersid"/>
<resultproperty="username"column="username"/>
<resultproperty="main"column="main"/>
</association>
</resultMap>
<selectid="getUser"resultMap="resultuserMap"parameterType="int">
SELECTu.*,p.*
FROMusers u, post p
WHEREu.id=p.usersid AND p.post_id=#{id}
</select>
</mapper>
Mybactis配置:
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEconfiguration PUBLIC"-//mybatis.org//DTDconfig 3.0//EN" "mybatis-3-config.dtd">
<configuration>
<typeAliases>
<typeAliasalias="Users"type="com.huweiyang.bean.Users"/>
<typeAliastype="com.huweiyang.bean.Post"alias="Post"/>
</typeAliases>
<environmentsdefault="development">
<environmentid="development">
<transactionManagertype="JDBC"/>
<dataSourcetype="POOLED">
<propertyname="driver"value="com.mysql.jdbc.Driver"/>
<propertyname="url"value="jdbc:mysql://127.0.0.1:3306/mybaits"/>
<propertyname="username"value="root"/>
<propertyname="password"value="lookme"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapperresource="com/huweiyang/bean/post.xml"/>
</mappers>
</configuration>
测试类:
package com.huweiyang.mapping;
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.huweiyang.bean.Post;
import com.huweiyang.bean.Users;
publicclassMapping {
publicstaticvoid main(String[]args) throws IOException {
// 获取sqlsession对象
Readersr = Resources.getResourceAsReader("config.xml");
SqlSessionFactorysqlsessionf=newSqlSessionFactoryBuilder().build(sr);
SqlSessionsqlsesion =sqlsessionf.openSession();
// 指定路径
Postpost=sqlsesion.selectOne("com.huweiyang.bean.Post.getUser",1);
// 输出post表中对应的id
System.out.println(post.getPsrt());
// 获取users实体类的对象
Usersuser=post.getUser();
// 输出users表中对应的username
System.out.println(user.getUsername());
}
}
- mybactis多对一
- mybactis的一对多的思想与代码
- spring和mybactis的整合
- 单向多对一
- 多对一映射
- GoldenGate--多对一
- 多对一映射
- 多对一
- 多对一
- 多对一
- 单向多对一
- Hibernate多对一
- 多对一
- 多对一 检索
- hibernate多对一
- hibernate多对一
- Mybatis多对一
- hibernate多对一...
- 24时区来源,CST,CET,UTC,DST,Unix时间戳概述、关系、转换
- Android8.0 WIFI ap Tethering 相关知识
- Android 文本视图TextView
- 洛谷P2045:方格取数加强版
- android播放swf文件
- mybactis多对一
- window 安装 sass compass 记录
- Idea环境下SpringBoot发布war
- HBase之get方法
- 如何改进脚本下载
- maven 配置 ueditor
- Windows下Python开发环境搭建及Pycharm安装
- MySQL 8小时了
- 什么是Servlet容器