mybatis注解

MyBatis 介绍

久未见 提交于 2020-02-07 15:06:09
MyBatis 介绍 MyBatis 是一款优秀的 ORM(Object Relational Mapping,对象关系映射)框架,它可以通过对象和数据库之间的映射,将程序中的对象自动存储到数据库中。它是 Apache 提供的一个开源项目,之前的名字叫做 iBatis,2010 年迁移到了 Google Code,并且将名字改为我们现在所熟知的 MyBatis,又于 2013 年 11 月迁移到了 Github。 MyBatis 提供了普通 SQL 查询、事务、存储过程等功能,它的优缺点如下。 优点 : 相比于 JDBC 需要编写的代码更少 使用灵活,支持动态 SQL 提供映射标签,支持对象与数据库的字段关系映射 缺点 : SQL 语句依赖于数据库,数据库移植性差 SQL 语句编写工作量大,尤其在表、字段比较多的情况下 总体来说,MyBatis 是一个非常优秀和灵活的数据持久化框架,适用于需求多变的互联网项目,也是当前主流的 ORM 框架。 MyBatis 重要组件 MyBatis 中的重要组件如下: Mapper 配置:用于组织具体的查询业务和映射数据库的字段关系,可以使用 XML 格式或 Java 注解格式来实现; Mapper 接口:数据操作接口也就是通常说的 DAO 接口,要和 Mapper 配置文件中的方法一一对应; Executor:MyBatis 中所有的

整合SSM2

喜你入骨 提交于 2020-02-06 18:38:32
SSM框架的搭建 注意: 1.SpringMVC和Spring 不需要什么特殊的配置就可以结合 2.MyBatis和Spring 1)需要引入额外的jar包:mybatis-spring-1.3.2.jar 2)配置数据源 3)把MyBatis中的SqlSessionFactory配置给Spring管理 4)在spring中配置需要扫描的MyBatis映射接口所在包的位置 3.Spring中配置SqlSessionFactory 1)可以在MyBatis的mybatis-config.xml中把MyBatis的信息配好,然后再让spring读取这个mybatis-config.xml文件 2)可以删除mybatis-config.xml文件,然后MyBatis的信息都配置到Spring中 4.spring配置文件中的重要信息 可以写在外部的资源文件中,然后再使用spring的标签读出来使用 例如: <context:property-placeholder location="classpath:db.properties"/> 取值使用的形式:${key} ${driverClassName} 5.事务配置 1)事务的开启和提交需要配置在service层方法的俩端 2)配置事务需要三步 配置事务管理器 使用jdbc的事务管理器 配置事务拦截器 使用tx前缀的标签

MyBatis学习笔记

廉价感情. 提交于 2020-02-06 08:47:34
mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。 HelloWorld 基本流程 1、创建全局配置文件,配置mybatis的一些操作 2、创建sql映射文件,该文件中配置了每个sql,以及sql的封装规则 3、将该sql映射文件注册到全局配置文件中 4、根据全局配置文件创建SqlSessionFactory对象,并且获取SqlSession对象 5、使用SqlSession对象执行写好的sql操作 mybatis全局配置文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> < configuration > < environments default = " development " > <

MyBatis1:MyBatis入门

*爱你&永不变心* 提交于 2020-02-05 17:30:39
MyBatis是什么   MyBatis是什么,MyBatis的jar包中有它的官方文档,文档是这么描述MyBatis的: MyBatis is a first class persistence framework with support for custom SQL, stored procedures and advanced mappings. MyBatis eliminates almost all of the JDBC code and manual setting of parameters and retrieval of results. MyBatis can use simple XML or Annotations for configuration and map primitives, Map interfaces and Java POJOs (Plain Old Java Objects) to database records.   翻译过来就是: MyBatis是一款支持普通SQL查询、存储过程和高级映射的持久层框架 。MyBatis消除了几乎所有的JDBC代码、参数的设置和结果集的检索。MyBatis可以使用简单的XML或注解用于参数配置和原始映射,将接口和Java POJO(普通Java对象)映射成数据库中的记录。  

MyBatis总结

徘徊边缘 提交于 2020-02-05 10:11:57
本人精心整理,完全手敲的Mybatis学习笔记,我觉得,这篇笔记已经快把Mybatis官方文档都经过我自己理解整过来了。。包括我练习的源码,mybatis底层分析,概念等等,我觉得已经很全了。 虽然有点长,东西比较多,但是只要你细心看完这个Mybatis还不会的找我!! 觉得有用的,请多多支持博主, 点赞关注 ~~ 文章目录 1.简介 1.1、什么是Mybatis? 1.2、持久化 1.3、持久层 1.4、为什么需要Mybatis? 2.第一个Mybatis程序 2.1、搭建环境 2.2、创建一个模块 2.3、编写代码 2.4、测试 3.CRUD 3.1、namespace 3.2、select 3.3、insert 3.4、update 3.5、delete 3.6、常见错误 3.7、万能Map 3.8、模糊查询 4.配置解析 4.1、核心配置文件 4.2、环境配置(environments) 4.3、属性(properties) 4.4、类型别名(typeAliases) 4.5、设置 4.6、其他配置 4.7、映射器 4.8、生命周期和作用域 5.解决属性名和字段名不一致的问题 5.1、问题 5.2、resultMap 6、日志 日志工厂 6.2、Log4j 7、分页 7.1、使用Limit分页 7.2、RowBounds分页 7.3、分页插件 8、使用注解开发 8.1

SSM整合

ぃ、小莉子 提交于 2020-02-04 22:11:29
环境搭建 1、新建SpringMVC项目,添加所需的jar包 spring-core.jar spring-beans.jar spring-context.jar spring-expression.jar spring-aop.jar (使用spring的注解) spring-jdbc.jar (spring-tx.jar依赖spring-jdbc,如果要使用spring的事务管理,需添加此包。就算不使用spring的事务管理,mybatis-spring.jar依赖此包,也必须添加此包) spring-tx.jar (事务一般是用spring的事务管理,如果要使用spring的事务管理,需要添加此包)   (如果要整合AspectJ) spring-aspects.jar aopalliance.jar aspectjweaver.jar mybatis.jar log4j.jar commons-logging.jar mybatis-spring.jar (spring整合mybatis需要的包。springmvc本身就是spring的一部分,本来就要搭配使用,不存在什么整合的说法) 数据库驱动 dbcp的jar包 (也可以使用其它连接池) java web2个jar:servlet、jsp各一个 (需要用到request、response、session等对象) 2

SSM框架--mybatis

醉酒当歌 提交于 2020-02-03 07:15:19
五.mybatis相关 1.jdbc介绍 JDBC是Java制定的接口,数据库产商依照该接口编写与自家数据库配套的实现类。比如MySQL、Oracle、SqlServer等都有自己的不同实现,这些实现类的集合既是我们笼统意义上的“驱动”。 2.preparedstatement和statement的区别 数据库系统会对sql语句进行预编译处理(如果JDBC驱动支持的话),预处理语句将被预先编译好,语法语义解析优化sql语句,指定执行计划执行并返回结果 但是很多情况,我们的一条sql语句可能会反复执行,或者每次执行的时候只有个别的值不同(比如select 的where子句值不同,update的set子句值不同,insert 的values值不同).如果每次都需要经过上面的词法语义解析,语句优化,制定执行计划等,则效率就明显不行了 所谓预编译语句就是将这类语句的值用占位符替代,可以视为将sql语句模板或者说参数化 什么是预编译(将这条sql(解析完成)语句放入缓存执行计划中,如果有相同的sql语句进来,就会直接执行该sql(解析完成)语句,省去解析的过程) 下面列出PreparedStatement的几点优势。 1.PreparedStatement可以写动态参数化的查询用PreparedStatement你可以写带参数的sql查询语句

解决 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 以及MyBatis批量加载xml映射文件的方式

♀尐吖头ヾ 提交于 2020-02-02 23:14:23
  错误 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 的出现,意味着项目需要xml文件来映射SQL语句,如果只使用接口进行SQL映射,不在本文讨论范围内。   我的项目的环境是IDEA下的Maven工程,而IDEA下的MAVEN工程中有一个特点就是,在src/main/java中,只有.java文件默认会被编译,而xml文件不会被编译。( 出处 )   的确这样的做法也比较符合Maven目录框架的初衷:即在src/main/java中只存放.java的源码文件。   在使用MyBatis Generator进行逆向生成时是可以指定mapper接口和对应的xml文件的位置的,有的人也喜欢把它们指定在java目录下的同一个包(如:src/main/java/com/abc/mapper)中,而我就喜欢指定在不同的目录下(接口文件:src/main/java/com/abc/mapper,xml文件:scr/mian/resources/mapper)。我们分开讨论 一、Mapper接口文件和对应的XML在同一个目录下   一般来说,接口文件和XML文件是同名一一对应的。   这种情况就是要改变IDEA中MAVEN工程默认不编译src/main/java中的xml文件的行为

MyBatis入门到自定义MyBatis框架

纵然是瞬间 提交于 2020-02-02 18:32:33
第一个 MyBatis 程序(XML配置) 在上一篇中,简单总结了一下原生 JDBC 的一些局限性,同时引出了 MyBatis 这个框架,算较为详细的整理如何搭建 MyBatis 的工作环境 这一篇,我们在开篇,现在搭建好工作环境的基础上,开始我们的第一个例程,但是,简单的让程序跑起来以后,我们却要讲解如何自定义 MyBatis 框架,它的意义是什么呢? 虽然第一个例程虽然比较简单,但是其中有很多点却是容易引起疑惑的,例如为什么用工厂模式后还有构建者对象,通过自定义框架,可以让自己对于 MyBatis 的理解更加深刻,从而更好的应用这个框架 首先,我们想让我们的第一个程序运行起来 1、搭建好环境,在主配置文件 (SqlMapConfig.xml) 中指定映射配置文件的位置 <!-- 指定映射配置文件的位置 --> < mappers > < mapper resource = " cn/ideal/mapper/UserMapper.xml " /> </ mappers > 2、在test文件夹下,创建一个如图结构测试类 由于我们的 mapper 接口中写的方法是一个 查询所有信息的方法,所以我们直接如下图所写就行了,这就是第一个例程,后面我们会详细的讲到其中的点,先让自己的程序跑起来看看 public class MyBatisTest { public static void

Spring之路(34)–使用xml配置Spring+SpringMVC+MyBatis(SSM)项目完整实例

被刻印的时光 ゝ 提交于 2020-02-02 03:06:44
概述 本篇介绍下如何使用xml配置SSM项目(如果要表达的更加严谨,其实除了xml配置,还有注解配置),并实现对单表(还是之前一直举例的blog表)增删改查操作。 因为需要配置的东西比较多,所以还是要简单的说下思路,先理顺了整体思路,才容易理解每个局部是在干什么。 首先需要新建一个 网站项目 ,然后引入相关的jar包,因为SSM框架是别人封装好的,所以需要引入别人的jar。 因为是网站项目,所以需要配置 web.xml ,这个配置文件是网站项目配置文件。当网站启动时,会加载其中的配置。 需要配置 spring-config.xml ,我需要对spring容器进行配置,包括控制器组件、服务组件、数据库操作、数据源组件、MyBatis组件,都需要容器进行管理,spring配置是整个项目的核心配置。从此处可以看出MyBatis是通过spring集成进来的,在Spring一切皆组件的思想下,集成一个第三方框架是一个很简单事情。 配置 mybatis-config.xml ,此处是对mybatis进行配置,mybatis组件在进入容器管理时,携带该配置信息进入。spring负责管理mybatis组件,mybatis组件初始化时需要的配置信息就在 mybatis-config.xml 。 依次开发数据库操作层、服务层、控制器层,前端视图页面,然后进行操作验证。