SpringMVC在配置文件中配置实体类映射文件路径的时候,mybatis包下面有N个xml文件,请问怎么配置?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMVC在配置文件中配置实体类映射文件路径的时候,mybatis包下面有N个xml文件,请问怎么配置?相关的知识,希望对你有一定的参考价值。
在配置文件中配置实体类映射文件路径的时候,mybatis包下面有N个xml文件,请问怎么配置:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<!-- mybatis配置文件路径-->
<property name="configLocation" value=""/>
<!-- 实体类映射文件路径-->
<property name="mapperLocations" value="classpath:mybatis/UserMapper.xml"/>
</bean>
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org./dtdt/mybatis-3-config.dtd">
<configuration>
<mappers>
<mapper resource="mybatis/UserMapper.xml"/>
<mapper resource="mybatis/VoteMapper.xml"/>
</mappers>
</configuration>
然后用sqlMapConfig.xml文件替换你接图中的文件UserMapper.xml文件,别把文件的路径名写错了。追问
谢谢,已解决
参考技术A <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"p:dataSource-ref="dataSource"
p:mapperLocations="classpath:common-mappers/*.xml"
p:typeAliasesPackage="com.lrlz.integral.dto.model"
p:configLocation="classpath:common-config/mybatis-config.xml"/>
<!-- 统一使用基类DAO -->
<bean id="sqlSession" class="com.lrlz.integral.common.dao.BaseDao">
<constructor-arg index="0" ref="sqlSessionFactory" />
<!--<constructor-arg index="1" value="BATCH" />-->
</bean>
comm-mappers 是我的实例关系xml路径,你改成你的就好了
SpringBoot注解配置文件映射属性和实体类
配置文件加载
方式一
- Controller上面配置@PropertySource({"classpath:pay.properties"})
- 添加属性@Value("wxpay.appid") private String payAppid;
pay.properties
# 微信支付的appid
wxpay.appid=w23232323
# 支付密钥
wxpay.sercret=abd
# 微信支付商户号
wx.mechid=1234
TestController.java
package net.cyb.demo.controller; import net.cyb.demo.utils.JsonData; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.PropertySource; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.Map; @RestController @RequestMapping("/api/v1/test") @PropertySource({"classpath:pay.properties"}) public class TestController { @Value("wxpay.appid") private String payAppid; @Value("wxpay.sercret") private String paySecret; @GetMapping("get_config") public JsonData testConfig(){ Map<String,String> map=new HashMap<>(); map.put("appid",payAppid); map.put("secret",paySecret); return JsonData.buildSuccess(map); } }
方式二
- 添加@Component注解
- 使用PropertySource注解指定配置文件位置
- 使用@ConfigurationProperties注解,设置相关属性
- 必须通过注入IOC对象Resource进来,才能在类中使用获取的配置文件值。@Autowired private WXConfig wxConfig;
pay.properties
# 微信支付的appid
wxpay.appid=w23232323
# 支付密钥
wxpay.sercret=abd
# 微信支付商户号
wx.mechid=1234
WXConfig.java
package net.cyb.demo.config; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import java.io.Serializable; @Configuration @PropertySource({"classpath:pay.properties"}) public class WXConfig implements Serializable { @Value("wxpay.appid") private String payAppid; @Value("wxpay.sercret") private String paySecret; @Value("wx.mechid") private String payMechId; public String getPayAppid() { return payAppid; } public void setPayAppid(String payAppid) { this.payAppid = payAppid; } public String getPaySecret() { return paySecret; } public void setPaySecret(String paySecret) { this.paySecret = paySecret; } public String getPayMechId() { return payMechId; } public void setPayMechId(String payMechId) { this.payMechId = payMechId; } }
TestController.java
package net.cyb.demo.controller; import net.cyb.demo.config.WXConfig; import net.cyb.demo.utils.JsonData; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.PropertySource; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.Map; @RestController @RequestMapping("/api/v1/test") public class TestController { @Autowired private WXConfig wxConfig; @GetMapping("get_config") public JsonData testConfig(){ Map<String,String> map=new HashMap<>(); map.put("appid",wxConfig.getPayAppid()); map.put("secret",wxConfig.getPaySecret()); map.put("mechid",wxConfig.getPayMechId()); return JsonData.buildSuccess(map); } }
以上是关于SpringMVC在配置文件中配置实体类映射文件路径的时候,mybatis包下面有N个xml文件,请问怎么配置?的主要内容,如果未能解决你的问题,请参考以下文章