mybatis用来干嘛的(什么是mybatis 为什么要使用my batis)

2025-03-22 07:50:01 0

mybatis用来干嘛的(什么是mybatis 为什么要使用my batis)

本文目录

什么是mybatis 为什么要使用my batis

1、定义MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。2、使用原因MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。3、总体流程(1)加载配置并初始化触发条件:加载配置文件处理过程:将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。(2)接收调用请求触发条件:调用Mybatis提供的API传入参数:为SQL的ID和传入参数对象处理过程:将请求传递给下层的请求处理层进行处理。(3)处理操作请求触发条件:API接口层传递请求过来传入参数:为SQL的ID和传入参数对象处理过程:(A)根据SQL的ID查找对应的MappedStatement对象。(B)根据传入参数对象解析MappedStatement对象,得到最终要执行的SQL和执行传入参数。(C)获取数据库连接,根据得到的最终SQL语句和执行传入参数到数据库执行,并得到执行结果。(D)根据MappedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果。(E)释放连接资源。(4)返回处理结果将最终的处理结果返回。

java中的mybatis是做什么用的

mybatis和hibernate的区别:mybatis是把sql语句与java代码分离了sql语句在xml文件配置的hibernate是ORM框架,它对jdbc进行了封装,在分层结构中处于持久化层,它能建立面向对象的域模型和关系数据模型之间的映射.它大大简化了dao层的编码工作

spring mvc中的mybatis怎么使用

spring mvc+myBatis配置详解一、spring mvcSpring框架(框架即:编程注解+xml配置的方式)MVC是Spring框架的一大特征,Spring框架有三大特征(IOC(依赖注入),AOP(面向切面),MVC(建模M-视图V-控制器C)。框架一般用于团队开发,使用分层的方式使每个人完成不同的模块,然后再组合在一起,使完成项目。以下是Spring mvc具有的能加速开发的功能列表:Spring mvc中提供了一个DispatchServlet,无需额外开发Spring mvc中使用基于xml的配置文件,可以,而无需重新编译应用程序Spring mvc实例化控制器,并根据用户输入来构造Bean。Spring mvc可以自动绑定用户输入,并正确的转换数据类型。例如,Spring mvc能自动解析字符串,并设置float或decimal类型的属性.Spring mvc可以校验用户输入,若校验不通过,则重定向回输入表单。输入校验是可选的,支持编程方式以及声明。关于这一点,Spring mvc内置了常见的校验器Spring mvc是Spring框架的一部分,可以利用Spring提供的其他能力。Spring mvc支持国际化和本地化。支持根据用户区域显示多国语言Spring mvc支持多种视图技术。最常见的JSP技术以及其他技术包括Velocity和FreeMarker.配置spring mvc1、导入Spring需要的jar 包2、配置spring-mvc.xml复制代码《?xml version=“1.0“ encoding=“UTF-8“?》《beans xmlns=“springframework/schema/beans“xmlns:xsi=“w3/2001/XMLSchema-instance“xmlns:context=“springframework/schema/context“xmlns:jdbc=“springframework/schema/jdbc“xmlns:jee=“springframework/schema/jee“xmlns:tx=“springframework/schema/tx“xmlns:aop=“springframework/schema/aop“xmlns:mvc=“springframework/schema/mvc“xmlns:util=“springframework/schema/util“xmlns:jpa=“springframework/schema/data/jpa“xsi:schemaLocation=“springframework/schema/beans springframework/schema/beans/spring-beans-3.2.xswww.66298899.comrk/schema/context springframework/schema/context/spring-context-3.2.xswww.66298899.comrk/schema/jdbc springframework/schema/jdbc/spring-jdbc-3.2.xswww.66298899.comrk/schema/jee springframework/schema/jee/spring-jee-3.2.xswww.66298899.comrk/schema/tx springframework/schema/tx/spring-tx-3.2.xswww.66298899.comrk/schema/data/jpa springframework/schema/data/jpa/spring-jpa-1.3.xswww.66298899.comrk/schema/aop springframework/schema/aop/spring-aop-3.2.xswww.66298899.comrk/schema/mvc springframework/schema/mvc/spring-mvc-3.2.xswww.66298899.comrk/schema/util springframework/schema/util/spring-util-3.2.xsd“》《!-- HandlerMapping --》《mvc:annotation-driven/》开启spring mvc注解扫描,如果不基于注解: 该类需要继承 CommandController 或者 其他很多 参见 spring帮助.我用的是基于注解的,这样比较方便《!-- 扫描Controller,Service --》《context:component-scanbase-package=“com.包名“/》开启组件扫描,请确保所有的控制器都在基本包下,并且不要制定一个太宽泛的基本包《/beans》复制代码补充:第一个为开启spring mvc注解扫描,如果不基于注解: 该类需要继承 CommandController 或者 其他很多 参见 spring帮助.我用的是基于注解的,这样比较方便第二个为开启组件扫描Spring使用扫描机制来找到应用程序中所有基于注解的控制器类,为了能保证Spring你那个找到你的控制器,a.需要在Spring mvc中配置spring-contextb.在《context:component-scan base-package=“com.包名“/》元素中指定控制器类的基本包基于此,在Controller中可以方便调用了,实例见最下方3.部署web.xmlDispatcherServlet作为Spring mvc框架中的一级控制器(前端控制器),是浏览器发送请求的入口该Servlet的全称是org.springframework.web.servlet.DispatcherServlet.要使用这个Servlet,需要把他配置在部署描述符(web.xml),应用servlet和servlet-mapping元素如下:相关解释:1、servlet元素内的on-startup元素是可选的。if存在,表示它将在应用程序启动时就装在servlet并调用它的init方法。else,则在该servlet的第一个请求是加载。2、Dispatcher Servlet将会使用spring mvc诸多默认组件。此外,初始化时,它会寻找一个在应用程序下的web-INF目录下 的配置文件,该配置文件的命名规则如下;servletName-servlet.xml其中servletName是在部署描述符中的Dispatcher Servlet的名字。如图所示,本例中的servlet-name为springmvc,则在初始化的时候会找到第二步配置的springmvc.xml文件.3、当然springmvc.xml文件也可以放到应用程序目录中的任何地方,《init-param》《/init-param》元素就是为了实现这个功能的。其中的《param-name》不用改,而《param-value》则包含配置文件的路劲。补充一下:(1)Spring可以通过指定classpath*:与classpath:前缀加路径的方式从classpath加载文件,如bean的定义文件.classpath*:的出现是为了从多个jar文件中加载相同的文件.classpath:只能加载找到的第一个文件(2) url-pattern的写法1 三种写法① 完全匹配《url-pattern》/test/list.do《/url-pattern》② 目录匹配《url-pattern》/test/*《/url-pattern》③ 扩展名匹配《url-pattern》*.do《/url-pattern》2 注意事项容器会首先查找完全匹配,如果找不到,再查找目录匹配,如果也找不到,就查找扩展名匹配。如果一个请求匹配多个“目录匹配”,容器会选择最长的匹配。定义”/*.action”这样一个看起来很正常的匹配会报错?因为这个匹配即属于路径映射,也属于扩展映射,导致容器无法判断。“/” 是用来定义default servlet映射的。*.do它不是一个文件,并没有一个真正的.do文件存在,只是一个servlet映射.意思是URL里一切以.do结尾的URL都驱动servlet里设置的那个类;而*则是所有请求都交由servlet里设置的那个类处理!二、MyBatis的配置和使用Spring与MyBatis结合,主要是由Spring管理数据库访问组件Dao,数据库访问组件主要是基于MyBatis实现,在Spring环境中使用MyBatis实现数据库访问组件过程是:首先需要引入一个Spring和MyBatis整合的开发包 mybatis-spring-1.2.2.jar。在Spring配置中定义SqlSessionFactoryBean,等价于SqlSessionFactory放入Spring容器管理。(不需要开发者利用手工创建SqlSessionFactory对象,需要开发者定义式注入连接信息和SQL定义的XML信息)在Spring配置中定义MapperFactoryBean,可以根据指定的Mapper接口生成一个Mapper实现类接口。需引入引入开发包:spring ioc,spring aop,dbcp,mybatis,驱动,mybatis-spring.jar。添加Spring框架的配置文件主要有applicationContext.xml,根据user表编写实体类User,编写UserMapper.xml(定义SQL语句),并且编写UserMapper接口(与UserMapper.xml映射),在applicationContext.xml中配置组件SqlSessionFactoryBean,Mapper FactoryBean。最后测试MapperFactoryBean生成的UserMapperDao实例。MyBatis的两个特点:1.MyBatis采用SQL与Entity映射,对JDBC封装程度较轻2.MyBatis自己写SQL,更具有灵活性配置MyBatis(1)导入jar包(2)创建数据库(3)添加MyBatis.xml配置文件复制代码《?xml version=“1.0“ encoding=“UTF-8“?》《beans xmlns=“springframework/schema/beans“xmlns:xsi=“w3/2001/XMLSchema-instance“xmlns:context=“springframework/schema/context“xmlns:jdbc=“springframework/schema/jdbc“xmlns:jee=“springframework/schema/jee“xmlns:tx=“springframework/schema/tx“xmlns:aop=“springframework/schema/aop“xmlns:mvc=“springframework/schema/mvc“xmlns:util=“springframework/schema/util“xmlns:jpa=“springframework/schema/data/jpa“xsi:schemaLocation=“springframework/schema/beans springframework/schema/beans/spring-beans-3.2.xswww.66298899.comrk/schema/context springframework/schema/context/spring-context-3.2.xswww.66298899.comrk/schema/jdbc springframework/schema/jdbc/spring-jdbc-3.2.xswww.66298899.comrk/schema/jee springframework/schema/jee/spring-jee-3.2.xswww.66298899.comrk/schema/tx springframework/schema/tx/spring-tx-3.2.xswww.66298899.comrk/schema/data/jpa springframework/schema/data/jpa/spring-jpa-1.3.xswww.66298899.comrk/schema/aop springframework/schema/aop/spring-aop-3.2.xswww.66298899.comrk/schema/mvc springframework/schema/mvc/spring-mvc-3.2.xswww.66298899.comrk/schema/util springframework/schema/util/spring-util-3.2.xsd“》《bean id=“dbcp“class=“org.apachemons.dbcp.BasicDataSource“》《property name=“username“ value=“****“》《/property》《property name=“password“ value=“***“》《/property》《property name=“driverClassName“value=“com.mysql.jdbc.Driver“》《/property》《property name=“url“value=“jdbc:mysql:///cloud_note“》《/property》《!-- 《property name=“url“ value=“jdbc:mysql://localhost:3306/cloud_note?useUnicode=true&characterEncoding=utf-8“》《/property》 --》《/bean》《bean id=“ssf“class=“org.mybatis.spring.SqlSessionFactoryBean“》《property name=“dataSource“ ref=“dbcp“》《/property》《property name=“mapperLocations“value=“classpath:com/niuniu/sql/*.xml“》《/property》《/bean》《bean id=“mapperscanner“class=“org.mybatis.spring.mapper.MapperScannerConfigurer“》《property name=“sqlSessionFactory“ ref=“ssf“》《/property》《property name=“basePackage“value=“com.niuniu.dao“》《/property》《/bean》《/beans》复制代码(4)定义表所对应的实体类,如下图所示代码如下:复制代码package com.niuniu.entity;import java.io.Serializable;public class User implements Serializable {private String cn_user_id;private String cn_user_name;private String cn_user_password;private String cn_user_token;private String cn_user_nick;public String getCn_user_id() {return cn_user_id;}public void setCn_user_id(String cnUserId) {cn_user_id = cnUserId;}public String getCn_user_name() {return cn_user_name;}public void setCn_user_name(String cnUserName) {cn_user_name = cnUserName;}public String getCn_user_password() {return cn_user_password;}public void setCn_user_password(String cnUserPassword) {cn_user_password = cnUserPassword;}public String getCn_user_token() {return cn_user_token;}public void setCn_user_token(String cnUserToken) {cn_user_token = cnUserToken;}public String getCn_user_nick() {return cn_user_nick;}public void setCn_user_nick(String cnUserNick) {cn_user_nick = cnUserNick;}}复制代码(5)定义操作users表的sql映射文件UserMapping.xml复制代码《?xml version=“1.0“ encoding=“UTF-8“ ?》《!DOCTYPE mapper PUBLIC “-//ibatis.apache//DTD Mapper 3.0//EN““使用时机:返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

mybatis 生成的example类是做什么使用的在哪里调用

简单来说就是example就是sql语句的一部分,就是简化你书写sql语句的

给你个参考吧

通过用户名查找用户登陆吧,随便写的,卸载serviceimpl中

注入Mapper

mybatis-spring-boot-starter怎么使用

spring主要用来管理对象关系的,mybatis是链接数据库的。这两个单独也可以使用的,整合是因为现在ssh ssi比较流行也就是spring Struts2 hibernate mybatis也叫ibatis。

mybatis用来干嘛的(什么是mybatis 为什么要使用my batis)

本文编辑:admin

更多文章:


click15杨策出什么事了(杨策为什么退出click15)

click15杨策出什么事了(杨策为什么退出click15)

本文目录杨策为什么退出click15杨策和ricky出什么事了click15杨策出什么事了click15解散原因是什么《乐队的夏天》click15的杨策为什么这么招人喜欢他是个什么样的人《披荆斩棘的哥哥》里有RICKY,click15解散了

2025年2月21日 13:10

asp毕业设计源代码(ASP毕业设计)

asp毕业设计源代码(ASP毕业设计)

本文目录ASP毕业设计那位好心人有asp的毕业设计源码加论文,可以发给我参考一下吗,网名块毕业答辩了ASP做毕业设计!!!求 毕业设计 ASP+SQL 全的源码 学生信息管理系统!ASP毕业设计介绍本书你参考一下吧,相信对你的设计帮助会很大

2025年2月12日 17:40

colspan的用法(html中colspan什么意思)

colspan的用法(html中colspan什么意思)

本文目录html中colspan什么意思easyui datagrid 的 rowspan怎么用表格的使用方法,需要文字格式的html中关于td使用colspan的问题colspan rowspan 能一起使用吗html中colspan什么

2025年3月12日 13:30

thumbdata(.thumbdata3-1763508120是什么文件)

thumbdata(.thumbdata3-1763508120是什么文件)

本文目录.thumbdata3-1763508120是什么文件怎么打开thumbdata文件手机里的thumbdata是什么.thumbdata3-1763508120是什么文件是媒体存储的缓存文件。.thumbdata3- 开头的文件和.

2025年3月2日 00:20

oracle数据库客户端安装(怎样安装oracle数据库服务器)

oracle数据库客户端安装(怎样安装oracle数据库服务器)

本文目录怎样安装oracle数据库服务器oracle12g数据库怎么安装怎么安装oracle的客户端oracle数据库和客户端有安装顺序吗如何在windows系统上安装oracle数据库怎样安装oracle数据库服务器1找台服务器,安装or

2025年2月26日 15:40

delphi 安卓(大家觉得用delphi 开发安卓程序有前途么)

delphi 安卓(大家觉得用delphi 开发安卓程序有前途么)

本文目录大家觉得用delphi 开发安卓程序有前途么delphi xe 可以实现所有android功能吗delphi2010可以开发安卓程序吗delphi android蓝牙4.0开发请问delphi android如何调用so文件delp

2025年3月15日 07:20

java语言程序设计第四版(自学java编程有什么好的教程吗)

java语言程序设计第四版(自学java编程有什么好的教程吗)

本文目录自学java编程有什么好的教程吗自学Java,有哪些书籍推荐大学教材《java语言程序设计》哪个版本比较好自学java编程有什么好的教程吗JAVA入门就比较宽泛了,市面上很多书,推荐《JAVA大学教程》,外国大学的JAVA教程,翻译

2025年4月2日 15:20

堡垒机作用?为什么要用堡垒机,堡垒机能给公司带来什么

堡垒机作用?为什么要用堡垒机,堡垒机能给公司带来什么

本文目录堡垒机作用为什么要用堡垒机,堡垒机能给公司带来什么堡垒机是干什么的堡垒机的作用是什么堡垒机的作用堡垒机的基本功能什么是堡垒机堡垒机如何使用运维安全审计系统与堡垒机啥关系堡垒机是什么业界有哪些知名的堡垒机品牌堡垒机作用堡垒机的作用堡垒

2025年3月1日 17:30

computer science(计算机科学课(computer science)是否应该成为国内中学生的主课之一)

computer science(计算机科学课(computer science)是否应该成为国内中学生的主课之一)

本文目录计算机科学课(computer science)是否应该成为国内中学生的主课之一即将入读墨尔本大学的science(computer science)可以怎么准备保研是继续读石油勘探还是跨到computer science计算机科学

2025年2月17日 20:20

prc是什么意思中文(PRC的中文意思是什么)

prc是什么意思中文(PRC的中文意思是什么)

本文目录PRC的中文意思是什么PRC中文意思PRC全称是什么PRC的中文意思是什么PRC 中华人民共和国 PRC Postal Rate Commission (美国)邮资委员会 PRC Planned Retirement Commu

2025年3月15日 10:50

教师法心得体会(教育政策法规与教师职业道德规范的学习心得,500字,谢谢)

教师法心得体会(教育政策法规与教师职业道德规范的学习心得,500字,谢谢)

本文目录教育政策法规与教师职业道德规范的学习心得,500字,谢谢法律知识心得体会作文教师的权利和义务的认识如何写师风师德心得体会学习法律课的心得体会学习法律事务的体会通过学习《教育法》、《教师法》、《九年义务教育法》、《中小学教师职业道德规

2025年3月8日 21:40

原码 反码 补码(计算机的原码,反码,补码是怎么回事可以举例说明吗)

原码 反码 补码(计算机的原码,反码,补码是怎么回事可以举例说明吗)

本文目录计算机的原码,反码,补码是怎么回事可以举例说明吗原码、补码和反码的概念计算机的原码,反码,补码是怎么回事可以举例说明吗原码、反码和补码是计算机中对数字二进制的三种表示方法。1、原码原码(true form)是一种计算机中对数字的二进

2025年3月7日 08:30

jsp教程pdf(在JSP中怎么实现网页直接浏览PDF和WORD文件)

jsp教程pdf(在JSP中怎么实现网页直接浏览PDF和WORD文件)

本文目录在JSP中怎么实现网页直接浏览PDF和WORD文件如何在jsp中直接打开本地硬盘上的pdf等文件在JSP中怎么实现网页直接浏览PDF和WORD文件pdf 在html5规范中可以直接看(微网站不行,IOS被微信给限制了),word转化

2025年2月20日 07:40

欢迎页面图片(U盘启动进PE装系统的那个欢迎界面图片怎么改)

欢迎页面图片(U盘启动进PE装系统的那个欢迎界面图片怎么改)

本文目录U盘启动进PE装系统的那个欢迎界面图片怎么改如何修改欢迎界面的图片win7开机时欢迎界面怎么改壁纸XP怎么修改开机时欢迎界面的图片怎样修改电脑开机欢迎页面的图片如题 谢谢了win7欢迎界面图片在哪设置win10欢迎界面图片在哪里wi

2025年3月27日 12:20

filterconfig(请问如何在Filter中获取ServletConfig对象)

filterconfig(请问如何在Filter中获取ServletConfig对象)

本文目录请问如何在Filter中获取ServletConfig对象怎样创建filterconfig对象请问如何在Filter中获取ServletConfig对象首先讲config类放入servletContext中其中config是负责存储

2025年2月22日 07:00

load是什么意思中文(load是什么意思)

load是什么意思中文(load是什么意思)

本文目录load是什么意思load什么意思load是什么意思 load的英文意思电路图中load什么意思load是什么意思及反义词LoAD和soURCE分别单词的中文意思是什么load是什么意思load:n.

2025年3月30日 18:40

数据库去重distinct(distinct去重多个字段)

数据库去重distinct(distinct去重多个字段)

本文目录distinct去重多个字段elasticSearch Java API 怎么将查询出来的数据类似sql 一样的distinct 去重某个字段求助大神,数据库查询结果的去重除了distinct关键字,还有什么别的方法没distinc

2025年3月23日 00:30

动画制作软件电脑版(电脑做动画用啥软件)

动画制作软件电脑版(电脑做动画用啥软件)

本文目录电脑做动画用啥软件有什么可以在电脑端做gif图的软件吗动画制作软件电脑flash动画制作软件怎么下载电脑做动画用啥软件你可以先去【绘学霸】网站找“动画制作技术”板块的【免费】视频教程-【点击进入】完整入门到精通视频教程列表: www

2025年2月8日 21:50

奥鹏教师教育网官网(奥鹏远程教育的成绩怎么查询在哪个网站查)

奥鹏教师教育网官网(奥鹏远程教育的成绩怎么查询在哪个网站查)

本文目录奥鹏远程教育的成绩怎么查询在哪个网站查奥鹏教育学生登录新平台怎样登录在奥鹏教育报考教师资格证拿到的是真证还是假证奥鹏教育学生登录平台应该怎么登录奥鹏教师教育网怎么下载学时证书奥鹏远程教育的成绩怎么查询在哪个网站查远程开放教育是教育,

2025年2月11日 14:50

定时关机命令(定时关机命令win10)

定时关机命令(定时关机命令win10)

本文目录定时关机命令win10电脑定时关机在设置怎样给电脑设置定时关机怎样能设置电脑定时关机怎么让电脑定时关机请问电脑定时关机的命令是什么如何让电脑每天定时关机定时关机的命令是什么电脑定时关机怎么设置win7设置定时关机命令定时关机命令wi

2025年2月9日 21:50

近期文章

million billion(million,billion和thousand之间应该怎么转化 要举例的那种 谢谢)
2025-04-05 17:30:01
本站热文

harbor,port,pier的区别?谁能解释“harbour“(港口)与“pier“(码头)的区别
2025-02-22 17:40:03 浏览:18
ibatis foreach(ibatis 批量update操作)
2025-02-10 23:40:06 浏览:7
endless rain(endless rain表达什么情感)
2025-02-14 06:00:02 浏览:6
标签列表

热门搜索