mybatis通过jdbc连接330版本数据库,插入数据报错?

mybatis通过jdbc连接330版本数据库,插入数据报错?,第1张

java.lang.NoSuchFieldError: exceptionOverride 是一个常见的 Java 错误。通常,这个错误是由于在编译应用程序时使用的类库版本与运行时使用的类库版本不同导致的。

MyBatis 是一个持久层框架,可以通过 JDBC 连接到不同类型的数据库。在连接 GBase330 数据库时,您需要确保在编译应用程序时使用的 MyBatis 类库版本与运行时使用的 MyBatis 类库版本相同。如果两者不同,则可能会出现上述错误。

除此之外,还有一些其他因素可能会导致这个错误,例如在编译应用程序时,您引用了一个不存在的字段或方法。如果您遇到了这个错误,建议您检查您的代码,确保所有类库版本一致,并检查您的代码是否引用了不存在的字段或方法。

mybatis不能向数据库里面插入数据原因可能是执行了插入动作,但是没有最终commit到数据库服务器导致。

mybatis插入数据的例子如下:

package com.mybatis.demo

import java.io.Reader

public class Test {

private static SqlSessionFactory sqlSessionFactory

private static Reader reader

static{

try{

reader = Resources.getResourceAsReader("Configuration.xml")

sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader)

}catch(Exception e){

e.printStackTrace()

}

}

public static SqlSessionFactory getSession(){

return sqlSessionFactory

}

//添加用户

public void addUser(){

User user = new User()

user.setId(4)

user.setUserAddress("人民广场")

user.setUserName("Birds")

user.setUserAge("102")

SqlSession session = sqlSessionFactory.openSession()

try{

IUserOperation userOperation = session.getMapper(IUserOperation.class)

session.commit()

System.out.println("当前增加的用户id为:"+user.getId())

}

finally{

session.close()

}

}

public static void main(String[] args) {

Test testUser = new Test()

testUser.addUser()

}

}

当执行到 testUser.addUser()后执行到session.commit()数据就会插入表。

问题:运行 mybatis-generator 是报错: Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.5Access denied for user ‘root‘@‘localhost‘ (using password: NO)

前提是:我在DOS命令下等正常连接mysql,那就排除mysql服务是否启动相关的问题;我是新手,常常犯的错误就是单词拼写错误,那接下来我就比对两个有做mysql配置相关的文件做了检查,一个是application.properties,另一个是 mybatis-generator.xml ,在对比的过程中我就发现这两个文件的mysql密码是对不上的,瞬间six屎啦!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6661169.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存