使用mybatis链接oracle数据库出现账号密码错误解决

使用mybatis链接oracle数据库步骤

最近oracle老师布置下来了作业,要求使用传统的java代码链接oracle数据库做一个小程序,因为我已经很熟练的掌握了ssm框架的开发,以前用的是mysql,现在就尝试尝试oracle来练练手。

  • 问题一 oracle 的jar包 maven不支持

由于Oracle授权问题,Maven3不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库
oracle 的坑来了 不能直接方便的导入依赖必须,手动添加,没事咱们一步步解决
首先下载oracle 的jar包 我的云服务器装的是oracle 12c 12.1.0.2.0版本 因此我选择ojdbc7版本的jar包
查看 oracle 版本的 select 语句如下
select * from v$version;
然后想办法搞到ojdbc的jar包 如同这样
在这里插入图片描述
然后执行maven的这条命令 把此jar包发布到 本地仓库

mvn install:install-file -Dfile=/e:/ojdbc7.jar -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.2.0 -Dpackaging=jar

删除线表示自己需要更改的,这句话的意思是把你的本地jar包按照指定的groupId,artifactId,Dversion
发布到本地仓库
然后在maven 引用
在这里插入图片描述

问题二 oracle 的链接驱动和mysql的也有区别

配置数据库连接数据
在这里插入图片描述
在spring中配置数据源

<!-- 2.配置数据源  主要是sqlsessionfactory里要使用  设置数据源   com.alibaba.druid.pool.DruidDataSource -->
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
		<property name="driverClassName" value="${jdbc.driver}"></property>
		<property name="url" value="${jdbc.url}"></property>
		<property name="username" value="${jdbc.username}"></property>
		<property name="password" value="${jdbc.password}"></property>
		<property name="maxActive" value="10" />
	</bean>

这是需要的链接信息 我把它放到一个.perproties文件中以便修改,实际开发也是这样写的,但坑就是在这里出现的
随后就开始一些小的测试用例,发现一直报这个错误
在这里插入图片描述
耿直的我一直调试账号密码,网上说账号被锁定之类的问题都没有解决。
我的情况是这样,我的sqldeveloper可以登录,用老师的原生jdbc的代码也可以查询运行的出来,就是到mybatis这里死活说我账号密码错误,崩溃中,我甚至怀疑mybatis是不是支持oracle。
经过5个小时的测试和排查,我突然意识到,是不是字符编码问题,我的.perproties是GBK编码,是不是有问题
然后就改编码为utf-8,然而还是不行。。。

问题的解决

在这里插入图片描述

运行成功 请和上边的黑色代码块对比,这里没有用“”${XXX}“”来动态的获取数据库连接信息,而是写死这样的,极不推荐这样做(代码修改扩展的时候十分的头疼),但是在这里就莫名其妙的没有异常,并且运行成功。。。心累。
oracle。你这么坑,你让我怎么爱上你。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值