记录问题-spring整合mybatis时,得到Dao接口的代理对象,但sql语句无法执行

问题:

在整合spring整合mybatis时,在业务层可以获得dao接口的代理对象,但是此代理对像无法执行sql。甚至程序依旧在执行,不报一点错误。

原因:

在编译mybatis时,使用了测试类测试mybatis的功能可行性,之后撇掉测试类整合spring时,target目录没有按程序的改变而自动更新,造成项目执行时一直有此前测试时的代码。所以报错。

也就是项目中target没有同步更新目录文件及资源。

解决:
  1. 可以直接删除target目录,然后运行项目时,会重新生成一个新的target目录,此目录已经同步。
  2. 在pom.xml中添加配置:
<build>    
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
</build>
<!-- 
此处代码引自:https://www.cnblogs.com/caiba/p/8651791.html
-->
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring 整合 MyBatis 可以通过以下步骤完成: 1. 引入相关依赖:在项目的 pom.xml 文件中添加 SpringMyBatis 的依赖,例如: ``` <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.3.3</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency> ``` 2. 配置数据源:在 Spring 的配置文件中配置数据源,例如: ``` <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/test" /> <property name="username" value="root" /> <property name="password" value="password" /> </bean> ``` 3. 配置 MyBatis:在 Spring 的配置文件中配置 MyBatis,例如: ``` <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="typeAliasesPackage" value="com.example.model" /> <property name="mapperLocations" value="classpath:mapper/*.xml" /> </bean> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.example.mapper" /> </bean> ``` 4. 编写 Mapper:创建 Mapper 接口并编写 SQL 语句,例如: ``` public interface UserMapper { @Select("SELECT * FROM user WHERE id = #{id}") User findById(Long id); } ``` 5. 注入 Mapper:在 Service 中注入 Mapper 并调用相应方法,例如: ``` @Autowired private UserMapper userMapper; public User findById(Long id) { return userMapper.findById(id); } ``` 完成以上步骤后,SpringMyBatis 就成功整合了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值