java动态切换数据库mybatis(使用mybatis的项目,从MySQL数据库换成了Oracle数据库,驱动都修改完了,用MySQL时正常,换成Oracle报错)

本文目录
- 使用mybatis的项目,从MySQL数据库换成了Oracle数据库,驱动都修改完了,用MySQL时正常,换成Oracle报错
- jdbc换成mybatis要怎么改代码
- java 怎么使用注解操作mybatis
- 有两个数据库,一个Java工程,在A数据库下执行就可以,换成B数据库就报表或视图不存在sql
- java中mybatis动态传值,Map中的key与sql语句大小写差一个,但是并不报错,只是不出数据,这是为什么
- java与数据库交互的几种常见方式汇总
使用mybatis的项目,从MySQL数据库换成了Oracle数据库,驱动都修改完了,用MySQL时正常,换成Oracle报错
Cause: java.sql.SQLException: ORA-00933: SQL 命令未正确结束
只有出现sql语法问题才会有这个提示。
jdbc换成mybatis要怎么改代码
运行截图(必填)
《!--配置SqlSessionFactorBean --》
《!--该bean的作用是用来代替MyBatis的配置文件 --》
《bean id="ssfb" class="org.mybatis.spring.SqlSessionFactoryBean"》
《!--指定连接池 --》
《property name="dataSource" ref="ds"/》
《!--指定映射文件位置 --》
《property name="mapperLocations" value="classpath:entity/*.xml"/》
《/bean》
《!--配置SqlSessionTemplate --》
《bean id="sst" class="org.mybatis.spring.SqlSessionTemplate"》
java 怎么使用注解操作mybatis
mybatis是orm框架 java操作它就是执行sql, 貌似没有用注解的吧。 最多就是 事务控制, 可以spring AOP 找一个cut point 全局设定 或者 @Transactional 这个也要在spring文件里面配置 网上有例子。 mybatis的话 直接config文件里面 mapping一些 mapper 然后做resultMap 直接写mybatis标准的可执行sql就ok了 用sqlsessiontemplate 直接调用就好了。
有两个数据库,一个Java工程,在A数据库下执行就可以,换成B数据库就报表或视图不存在sql
这个不是JAVA的问题,是你数据库没有同步好,你把这条(select * from NAR.TB_REGISTER
)在你的oracle环境下运行下,肯定也是ORA-00942: 表或视图不存在,不要在java程序中找错误,应该是数据库里根本就没有这个表!
java中mybatis动态传值,Map中的key与sql语句大小写差一个,但是并不报错,只是不出数据,这是为什么
翻了一下mybatis源码,
1、当你的传的参数类型是map的时候,sql入参的时候根据你写的key去找value,如果找不到mybatis并不会报异常,而是直接返回一个null作为value
2、如果传入的是bean参数,此时mybatis通过反射取值,此时如果没有那个参数,mybatis会抛出异常告诉你在当前对象里面没有你提供的参数
java与数据库交互的几种常见方式汇总
第一种:最普通的方式,利用java原生jdbc连接数据库
第二种:利用properties.properties配置文件形式,利用java原生jdbc连接数据库
第三种:利用c3p0-congig.xml配置文件形式,利用c3p0连接数据库
第四种:利用dbcp.properties配置文件形式,利用dbcp连接数据库
第五种:利用mybatis-config.xml配置文件形式,利用MyBatis连接数据库
第六种:利用hibernate.cfg.xml配置文件形式,利用hibernate连接数据库

更多文章:
sql查询语句表示阶级的(MS SQL 用WIHT CTE展开BOM的阶层,并展出他所在的层次码,母层必须紧跟下层子件!)
2026年7月7日 15:45
anaconda导入numpy库(安装anaconda-换源-安装ipython-安装ipython notebook)
2026年8月27日 09:45
tensorflow提供了那两种执行方式(tensorflow 之 算子与图)
2026年4月18日 11:15
facilitate接什么介词(where后面加定语从句吗)
2026年5月10日 16:45
excel文本框在哪里找(如何在excel文档中如何插入文本框(文本框嵌入excel单元格))
2026年8月31日 19:30
怎么全局安装nodejs(nodejs全局安装和本地安装的区别)
2026年9月2日 07:30
前端开发框架spring(Spring和SpringMVC的区别是什么)
2026年2月18日 16:45
loose woman是什么意思(意思有“放荡、半老徐娘”的词,可能是典故里的人物,听起来像***chy mama 是什么)
2026年7月19日 04:15
tomcat卸载重装(如何卸载linux系统中的tomcat)
2026年3月6日 09:15
matlab画心形函数图像(图形画出来是爱心的函数是什么,用matlab怎么画)
2025年9月5日 12:30
按键精灵 datediff(按键精灵如何让脚本在指定时间运行)
2025年12月27日 22:00
软件开发培训机构选用极客时间(极客时间上的软件测试课程讲的怎么样,内容全面吗)
2026年2月19日 02:00













