mysql的mapper.xml文件请教大家

mysql的mapper.xml文件中写增删改查的sql的时候,是怎么找到数据库的?里面也没写数据库地址和名称呀?

7个回答

是在spring + mybtis 整合文件中配置 的

<!-- 加载配置属性文件 -->

<!--数据源配置-->
<bean id="dataSource0" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
    <!-- 基本属性 url、user、password -->
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
    <!-- 配置初始化大小、最小、最大 -->
    <property name="initialSize" value="1"/>
    <property name="minIdle" value="1"/>
    <property name="maxActive" value="250"/>
    <!-- 配置获取连接等待超时的时间 -->
    <property name="maxWait" value="60000"/>
    <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
    <property name="timeBetweenEvictionRunsMillis" value="60000"/>

    <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
    <property name="minEvictableIdleTimeMillis" value="300000"/>
    <property name="validationQuery" value="${jdbc.validate}"/>
    <property name="testWhileIdle" value="true"/>
    <property name="testOnBorrow" value="false"/>
    <property name="testOnReturn" value="false"/>

    <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
    <property name="poolPreparedStatements" value="true"/>
    <property name="maxPoolPreparedStatementPerConnectionSize" value="20"/>
    <property name="filters" value="stat,log4j,wall"/>
    <property name="removeAbandoned" value="true"/>
    <!-- 打开removeAbandoned功能 -->
    <property name="removeAbandonedTimeout" value="1800"/>
    <!-- 1800秒,也就是30分钟 -->
    <property name="logAbandoned" value="true"/>
    <!-- 关闭abanded连接时输出错误日志 -->
</bean>

<!-- mapper配置 -->
<!-- 让spring管理sqlsessionfactory 使用mybatis和spring整合包中的 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 数据库连接池 -->
    <property name="dataSource" ref="dataSource0" />
    <property name="mapperLocations" value="classpath:/mappings/**/*.xml"/>
    <!-- 加载mybatis的全局配置文件 -->
    <property name="configLocation" value="classpath:mybatis.xml" />

    <property name="typeAliasesPackage" value="com.kingsan"/>
    <property name="typeAliasesSuperType" value="com.kingsan.base.common.parent.BaseEntity"/>
</bean>

从配置文件中会读取相关数据库登陆信息

数据源,你在启动的时候都会配置 DataSource的。
你想如果在mapping里面写数据库地址的话,那是不是都是数据库地址之类的东西了。。

spring-mybatis 的官方配置文档
http://www.mybatis.org/spring/getting-started.html

在spring和mybatis进行整合的时候,是由spring建立数据库连接。
例如在spring的配置文件applicationContext.xml中:

<bean id="c3p0DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="driverClass" value="${jdbc.driverClassName}"></property>
    <property name="jdbcUrl" value="${jdbc.url}"></property>
    <property name="user" value="${jdbc.username}"></property>
    <property name="password" value="${jdbc.password}"></property>


    <!-- 连接池中保留的最大连接数。默认为15 -->
    <property name="maxPoolSize" value="${c3p0.pool.maxPoolSize}"></property>
    <!-- 连接池中保留的最小连接数。默认为15 -->
    <property name="minPoolSize" value="${c3p0.pool.minPoolSize}"></property>
    <!-- 初始化时创建的连接数,应在最大连接数与最小连接数 之间取值 -->
    <property name="initialPoolSize" value="${c3p0.pool.initialPoolSize}"></property>
    <!-- 定义从数据库获取新连接失败后重复尝试获取连接的次数,默认为30 -->
    <property name="acquireIncrement" value="${c3p0.pool.acquireIncrement}"></property>

</bean>


<!-- 配置MyBatis相关信息 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 注入数据源 -->
    <property name="dataSource" ref="c3p0DataSource"></property>
    <!-- 加载mybatis配置文件 -->
    <property name="configLocation" value="classpath:mybatis-config.xml"></property>
</bean>
<!-- 配置Mapper扫描 -->
<mybatis-spring:scan base-package="com.fruitsalesplatform.mapper"/>

<!-- 事务管理 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="c3p0DataSource"></property>
</bean>

<!-- 事务通知 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
    <tx:attributes>
        <tx:method name="insert*" propagation="REQUIRED"/>
        <tx:method name="update*" propagation="REQUIRED"/>
        <tx:method name="delete*" propagation="REQUIRED"/>
        <tx:method name="save*" propagation="REQUIRED"/>
        <tx:method name="find*" read-only="false"/>
        <tx:method name="get*" read-only="false"/>
        <tx:method name="view*" read-only="false"/>
    </tx:attributes>
</tx:advice>

mapper是负责对应POJO和数据库中的映射的

而dataSource在其他xml里加载的,比如applicationContent.xml,自定义的xml

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
定位mapper.xml文件的错误
概述 1. 定位mapper.xml中的错误一直是个比较尴尬的问题,很多时候,只能确定是xml除了问题,却不知道是哪一个。 2. 具体错误: Logging initialized using 'class org.apache.ibatis.logging.stdout.StdOutImpl' adapter. 2019-05-06 17:09:37,059 [RMI TCP Connec...
Mapper.xml文件详解
Mapper.xml映射文件属性 parameterType(输入类型) resultType(输出类型) parameterMap() resultMap(结果集) 认识Mapper.xml映射 Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。 映射文件中有很多属性,常用的就是paramet
找不到mapper.xml文件
Request processing failed; nested exception is java.lang.RuntimeException: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.pk.manager.mapper.TbItemMapper.selectByExample
mybatis热部署加载*Mapper.xml文件,手动刷新*Mapper.xml文件
由于项目已经发布到线上,要是修改一个Mapper.xml文件的话,需要重启整个服务,这个是很耗时间的,而且在一段时间内导致服务不可用,严重影响用户 的体验度。所以希望可以有一个机制可以,当修改某个mapper.xml的时候,只要重新加载这个mapper.xml就好了,参考网上的一些资料和demo,加上一些 自己的总结,下面的代码是通过测试的,可以供你们参考和使用。 import java.i
mybatis自动生成mapper.xml文件
springboot整合mybatis,自动生成mapper.xml文件以及dao和model
扫描mapper.xml文件问题
@MapperScan(basePackages = {“com.cybertron.barcode.service.dao”“})//扫描mapper.java和mapper.xml文件。 如果Mapper.xml与Mapper.class在同一个包下且同名,spring扫描Mapper.class的同时会自动扫描同名的Mapper.xml并装配到Mapper.class。 如果Mapper...
Mapper.xml
使用springboot框架,进行开发持久层时,需要使用到的mapper配置文件。
自动生成实体类、Mapper、Mapper.xml文件
自动生成实体类、Mapper、Mapper.xml文件搭建Spring Boot + Mysql + MyBatis 项目核心配置pom.xml创建表配置文件生成文件结果项目结构 搭建Spring Boot + Mysql + MyBatis 项目 idea 可直接创建相应的项目及配置 核心 配置pom.xml &amp;amp;lt;dependencies&amp;amp;gt; &amp;amp;lt;!--驱动--&amp;amp;gt; ...
【ibatis】自定义mapper.xml文件(#与$的详解)
1、图例 2、说明 整形取值 可以用  #{名称} 字符型必须用       ${名称} 大与小与符号用转移字符  (&gt;) >     (&lt;)<
自动生成类,接口,mapper.xml文件
添加插件pom.xml &amp;amp;amp;amp;amp;lt; plugins &amp;amp;amp;amp;amp;gt;里面添加 &amp;amp;amp;amp;amp;lt;plugin&amp;amp;amp;amp;amp;gt; &amp;amp;amp;amp;amp;lt;groupId&amp;amp;amp;amp;amp;gt;org.mybatis.generator&amp;amp;amp;amp;amp;lt;/groupId&am
mybatis mapper.xml 文件修改后自动刷新
import java.io.IOException; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java....
MyBatis的mapper.xml文件中$和#的区别
#将传入的值当做一个字符串,自动添加双引号例如: where id=#id# ,此时传递的值为10 的话会解析成 where id="10"$将传递的值原封不动的显示在SQL中,例如 order by $ode$ ,此时传递的值为 time 那么会解析成order by time#方式能够很大程度防止sql注入 $方式无法防止Sql注入 动态sql中使用排序的时候注意用$而不是#,这边还是会存
MyBatis Mapper.xml文件中 MySql的SQL语句比较大小
&amp;amp;lt;       &amp;lt;   小于号 &amp;amp;gt;      &amp;gt;  大于号 &amp;amp;amp;     &amp;amp; 和 &amp;amp;apos;     ’ 单引号 &amp;amp;quot;     &quot;  双引号                       MyBatis 中的 #...
mysql 语法 的一些问题 请教大家 大家帮帮忙!!
mysql 语法 给一个表的某个字段加上 非空约束!! rn比如 我建立一个表时候 用的是 //create table test (id int(4), name varchar(20) ); rn建立表后 我想把 id 这个字段设置为非空 sql语句是什么? rnrn问题2: rn我给一个表的某个字段设置了主键 但是之前没设置非空约束! 那么设置主键后 该字段是非空的么? rnrnrn问题3: rn表中设置主键的列, 用 desc table_name; 语句后 null 项 显示为 NO 但为什么我在向表插入数据时依然可以不输入该项数据而不抱错! 该字段明明显示带有非空约束 但实际上又没有, 我可以不插入该列 数据 依然 能成功插入数据; rnrn小弟 刚学 mysql ! 希望各位大哥帮帮忙!! 先谢谢大家了!
请教大家一个mysql的问题
我用php操纵mysql数据库的,但是装了mysql服务器以后不能连接数据库(php正常)rn谁能说说有什么地方该注意阿!user 和pass都对阿 rn
向大家请教MYSQL的问题?
1。请问大家建表一般是多少个字段。rn2。请问大家字段一般用什么类型的,如数字一般用什么类型的,字符串一般用什么的,希望那为大虾能详细列出。rn3。请问mysql 各表之间怎么建立关联。rn4。请问索引与 关键字 到底有什么区别。rn谢谢各位大虾了。rn
MySQL一个小问题请教大家!
题目是这样的:rn 已知:供应量表SPJ,包含四个列:SNO(供应商号),PNO(零件号),QTY(供应量);rn 求这样的供应商号,对于该供应商供应的每个项目,其所供应的零件的数量都达到或超过200,并且该供应商供应零件两种以上(含两种)。rn 我是这样写的:SELECT SNOrn FROM SPJrn GROUP BY SNOrn HAVING COUNT(DISTINCT PNO)>=2rn HAVING QTY>200;rn 最后有错误,请大家帮帮忙,我的错在哪,另外正解是怎样的?(刚开始学,很什么都不会,大家见笑了)
如何去掉mybatis自动生成的mapper.xml文件背景色
在IDEA中使用mybatis逆向工程生成的Mapper.xml文件会有背景色,看着很不舒服。alt加enter,选择 un-inject Language/refence即可
【mybatis】mapper.xml文件自动扫描注入的方法
1、结构如下 2、配置好项目后在applicationContext-dao.xml中的  session 工厂配置里加入  mapperLocations  项 即可自动扫描目录下所有xml映射文件 classpath:com/gfan/account/check/mapper/*.xml 3、mybatis.xml可以直接这
mybatis的mapper.xml文件扫描注册问题
把mapper文件放在包里面可能不会被编译,必须放在Source folder文件夹里,详见: http://blog.csdn.net/hmily_hui/article/details/70313735
关于mybatis引用mapper.xml文件的路径问题
我是看 https://www.cnblogs.com/xdp-gacl/p/4261895.html 的入门例子照着写的:rnrn先是定义了User类,然后写一个conf.xml的myBatis配置文件,再写一个sql映射文件命名为userMapper.xml,最后再conf.xml中用resource标签引入userMapper.xml。rnrn**但博客里是普通的java项目,路径引用我知道怎么写。而我创建的是maven-webapp项目,不知道怎么写路径地址了。**rnrnrn项目结构如下:rnrnrn![图片说明](https://img-ask.csdn.net/upload/201901/02/1546408643_318957.jpg)rn# rnrn在mybatis-config.xml文件里添加了mapper,是这么引用的:rnrn rn能正常运行,但是有几个问题:rn rn -rn rn rn rn**1. 我看到网上说在src/main/resources下的xml文件,在配置文件里引用时,好面可以写上classpath,如:** rnrn rnrn但我试了,却找不到userMapper.xml。想请问下,classpath代表什么,是怎么用的呢? rnrn-rnrnrn**2. 同样写这句:**rnrn rn由于src/main/java 和 src/main/resources的output folder都是mybatis/target/classes,但我把userMapper.xml移到src/main/java下,运行却提示找不到userMapper.xml呢?rnrn-rnrnrn**3. 我现在是把mybatis-config.xml文件放在src/main/resources下,Test类中是这么写的资源地址:**rnrnString resource = “mybatis-config.xml”;rn但如果我要把xml放到src/main/java下,要怎么写呢?rnrn**补充:**rnrnrnrn求助各位,谢谢啦。
springboot配置扫描第三方jar的mapper.xml文件
springboot如何配置扫描第三方jar的mapper.xml文件?n使用nnn```n ##指向mapper的xml文件位置nmybatis.mapper-locations=classpath:com.weixinmall.mallweb.dao/*Mapper.xml,com.weixinmall.malluser.dao/*Mapper.xmln```n不生效.在classpath下面根本没有第三方jar的包名.这种情况应该如何配置?nn
mybatis中mapper.xml文件参数问题
mapper.xml中的参数date,integer,string等一个的参数,可都修改为_paramete,或者在mapper.java的接口文件中的参数上添加@Param(value=&quot;xxxx&quot;),xxxx为xml中对应的参数,不然会报错:There is no getter for property named 'xxxx' in 'class java.lang.String(参数str...
单个和批量加载mybatis的mapper.xml文件
一,单个引用mapper.xml文件 创建完操作数据库表的mapper.xml文件后,需要在项目中进行引用,格式如下 然后在spring-db-config.xml文件中引用mappers所在的文件,格式如下 二,批量引入mapper.xml文件 单个引入mapper.xml文件的弊端就是太麻烦,每个mapper.xml文件都需要在中进行添加,如果忘记添加还报
SSM 框架 Mapper.xml 文件 配置一对多关联
select : 关联的Mapper的方法名称ofType: 关联的查询语句property: 关联的表实体List,用List&amp;lt;T&amp;gt; agencymiddletableList column: 关联的字段名称
去掉mybatis plus插件生成的mapper.xml文件
前言:使用mybatis自动生成mapper.xml文件,同时自己写的sql放在mapperExt.xml中,随着表的增加,启动越来越慢,为减少加载xml的时间,去掉生成的mapper.xml文件,步骤如下 1.重写AutoSqlInjector的inject(...)方法 /** * 自定义方法,注入点(子类需重写该方法) */ public void inject(Confi...
mybatis mapper.xml文件中$和#的使用区别
#{}表示一个占位符即?,可以有效防止sql注入。在使用时不需要关心参数值的类型,mybatis会自动进行java类型和jdbc类型的转换。 #{}可以接收简单类型值或pojo属性值,如果传入简单类型值,#{}括号中可以是任意名称。<!-- 根据名称模糊查询用户信息 --> <select id="findUserById" parameterType="String" resultTyp
mybatis mapper.xml文件里怎么调用静态方法
刚用mybatis时,当时想要在mapper.xml文件里调用静态方法,比如某个对象的id是由工具类的静态方法生成的,所以想在insert语句里调用那个工具类的静态方法,不过当时搜索了半天没有解决,最近在另一个项目组无意中看到其他同事写的mapper文件发现里面就有这个用法,所以记一篇博客,以免忘记。 写法见下图红框里所示,使用${}取值,里面类名前加@,方法名前也加@
mybatis框架的mapper.xml文件中sql的使用方法:
1. select * from test_tb_info where 1=1  and info.id=#{id} .......   //主键与其他字段有区别,需要注意     //column表示字段在数据库中对应的名称,property表示在实体bean中对应的名称 parameterType表示给sql语句传入的参数的类型,如上j
解决mapper.xml文件不发布问题
&amp;lt;!-- 如果不添加此节点mybatis的mapper.xml文件都会被漏掉。 --&amp;gt;  &amp;lt;build&amp;gt;    &amp;lt;resources&amp;gt;    &amp;lt;resource&amp;gt;    &amp;lt;directory&amp;gt;src/main/java&amp;lt;/directory&amp;gt;    &amp;lt;includes&amp;gt;    &amp;lt;inclu
在mapper.xml文件中 &lt;= 与&lt;的区别
Mybatis中的sql语句中的“&amp;lt;”浩和“&amp;gt;”号要用转义字符“&amp;amp;lt;”和”&amp;amp;gt;“,否则会报错! &amp;amp;lt;=  小yu等于   &amp;amp;gt;= 大于等于
【Mybatis】如何继承Mybatis中的Mapper.xml文件
最近在写一个 Mybatis 代码自动生成插件,用的是Mybatis来扩展,其中有一个需求就是 生成javaMapper文件和 xmlMapper文件的时候 希望另外生成一个扩展类和扩展xml文件。原文件不修改,只存放一些基本的信息,开发过程中只修改扩展的Ext文件 形式如下: SrcTestMapper.java package com.test.dao.mapper.srctest;...
mapper和mapper.xml文件不在同一个包下
&amp;lt;!-- mybatis文件配置,扫描所有mapper文件 --&amp;gt; &amp;lt;bean id=&quot;sqlSessionFactory&quot; class=&quot;org.mybatis.spring.SqlSessionFactoryBean&quot; p:dataSource-ref=&quot;dataSource&quot; p:mapperLocations=&quot;class...
IDEA中mybatis映射mapper.xml文件找不到
maven项目在pom文件中加入如下配置即可解决 &amp;lt;build&amp;gt; &amp;lt;resources&amp;gt; &amp;lt;!--拷贝xml文件到classpath下--&amp;gt; &amp;lt;resource&amp;gt; &amp;lt;directory&amp;gt;src/main/java&amp;lt;/directory&amp;gt; ...
加载自定义包下的 Mapper.xml 文件的一些问题
mapper-locations 对应的 value 的配置 情况描述: 想要将 *Mapper.xml 都放在 java 下的相应的包中 在这个路径上,也被折磨了很久,java 目录也是我们自己创建的,但是配置路径只需要从 java 下面的目录开始配置,前面使用 classpath*: 代替 配置方式一: 正确配置路径: 配置方式二: 使用变量的形式在 properties 文件中定义(需...
关于spring mvc 循环加载mapper.xml 文件
一个spring mvc 的项目,启动时发现一直 循环加载mapper.xml 文件, 后来发现mapper.xml 文件中,resultMap 的type 属性设置的类不对,所以一直报错,导致spring ,一直循环加截 mapper.xml文件
请教mysql存文件的问题
mysql可以存文件吗?比如aa.txt aa.confrnaa.jpgrn怎么插入?
eclipse中的maven项目自动生成mapper.xml文件的方法
#1目的 实际项目开发中,一般操作数据库的SQL语句和实体类是分开编辑的,而关联SQL语句和实体类中的属性,以及dao层的操作数据库的方法,需要一个mapper.xml来衔接,而手动敲写这个mapper.xml是重复又烦躁的事情,所幸,mybaits给我们构建了一个自动生成这个文件的功能,下面将详细介绍如何使用这个功能。 #2配置 ##1首先在pom.xml中导入依赖包 &lt;dependen...
maven项目编译mybatis的mapper.xml文件未生成
在maven项目当中,我们有时候会用maven clean清理项目的编译结果,然后在eclipse中build的时候项目可以启动,但是只要操作数据库就会抛出异常表示mybatis找不到相应ID的sql语句。这时候查看classes发现mybatis相应的mapper.xml根本没有生成。此时我们需要在[color=red]maven的pom.xml中[/color]中添加 ...
idea项目中添加mapper.xml文件样例
1.点击File ---&gt;Settings ---&gt;Editor---&gt;File and Code Templates 这个时候在新建就有了。
相关热词 c# login 居中 c# 考试软件 c# 自然语言分析 c# 分段读取文件 c# 泛型反射 c#打断点 c# 时间转多少秒 c# 线程函数加参数 c# modbus 读取 c#查询集合表