博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
笔记之_java整理ORM框架
阅读量:4350 次
发布时间:2019-06-07

本文共 3501 字,大约阅读时间需要 11 分钟。

MyBatis的xml文件中处理特殊字符方法一:<
<小于号 >>
大于号&&和'’单引号""双引号方法二:用进行说明 ORM:对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术.用于实现面向对象编程语言里不同类型系统的数据之间的转换 。从效果上说,它其实是创建了一个可在编程语言里使用的--“虚拟对象数据库”。使用反射可以做到,但有以下考虑:零基础的人能懂吗?它写的代码能支持所有数据库吗?对对象中的对象能够自动去填充吗?java中常用的ORM框架有哪些?hibernate:全自动的框架(不懂数据库的人也能操作)Mybatis:半自动的框架(懂数据库的人 才能操作) 必须要自己写sqlJPA:JPA全称Java Persistence API、JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,是Java自带的框架如何来学习ORM框架 看官方文档:http://www.mybatis.org/mybatis-3/zh/getting-started.html看博客园Mybatis框架:支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。 MyBatis 避免了 1)、JDBC 代码 (连接数据库,关闭数据库,打开PreparedStatement) 2)、手动设置参数 (prep.setString........) 3)、手动获取结果集(while(rst.next()){ ..填充值到对象中 })调用方法:SqlSession session = MyBtaisUtil.openSession();MajorMapper majorMapper = session.getMapper(MajorMapper.class);int result = majorMapper.insert(major);mybatis中设定映射关系N:1多对一
1:N 一对多
resultMapconstructor - 类在实例化时,用来注入结果到构造方法中 idArg - ID 参数;标记结果作为 ID 可以帮助提高整体效能arg - 注入到构造方法的一个普通结果id – 一个 ID 结果;标记结果作为 ID 可以帮助提高整体效能result – 注入到字段或 JavaBean 属性的普通结果association – 一个复杂的类型关联;许多结果将包成这种类型 嵌入结果映射 – 结果映射自身的关联,或者参考一个 collection – 复杂类型的集 嵌入结果映射 – 结果映射自身的集,或者参考一个discriminator – 使用结果值来决定使用哪个结果映射 case – 基于某些值的结果映射 嵌入结果映射 – 这种情形结果也映射它本身,因此可以包含很多相 同的元素,或者它可以参照一个外部的结果映射。 注意
控制台输出sql的log4j.properties文件配置:log4j.rootLogger=DEBUG, Console#Consolelog4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%nlog4j.logger.java.sql.ResultSet=INFOlog4j.logger.org.apache=INFOlog4j.logger.java.sql.Connection=DEBUGlog4j.logger.java.sql.Statement=DEBUGlog4j.logger.java.sql.PreparedStatement=DEBUGMyBatis.properties配置:
MyBatisUtil.java内容:public class MyBtaisUtil { private static SqlSessionFactory sessionFactory=null; //二级缓存,用它来产生SqlSession( 打开数据库,创建PreparedStatement) static{ //1、加载mybatis-config.xml文件 InputStream in=MyBtaisUtil.class.getResourceAsStream("/mybatis-config.xml"); //2、生成sessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(in); } public static SqlSession openSession(){ return sessionFactory.openSession(); } public static SqlSession openSession(boolean autoCommit){ return sessionFactory.openSession(autoCommit); }}MarjorMapper.xml配置:
insert into major (majorName) values (#{majorName})
update major set majorName=#{majorName} where majorId=#{majorId}

 

转载于:https://www.cnblogs.com/by-1642146903/p/7860242.html

你可能感兴趣的文章
小D课堂 - 新版本微服务springcloud+Docker教程_4-05 微服务调用方式之feign 实战 订单调用商品服务...
查看>>
技术分析淘宝的超卖宝贝
查看>>
Azure云服务托管恶意软件
查看>>
C#检测驱动是否安装的问题
查看>>
web-4. 装饰页面的图像
查看>>
微信测试账户
查看>>
类中的静态函数和非静态函数的区别
查看>>
windows 下安装Apache
查看>>
Fedora14 mount出现错误时解决办法【亲测有效】
查看>>
Linux----常用操作
查看>>
sequence
查看>>
Delphi错误:Stack overflow的解决方法
查看>>
取消chrome(谷歌浏览器)浏览器下最小字体限制
查看>>
模板方法模式
查看>>
什么是ECC内存?
查看>>
使用Visual Studio 2013进行UI自动化测试
查看>>
13-集体照
查看>>
读了曾国藩家书,,心态逐渐平和起来。搞技术的如果缺乏信念的指引,生活会很乏味无聊!...
查看>>
160809308周子济第六次作业
查看>>
大型Web应用运行时 PHP负载均衡指南
查看>>