我想在应用程序和Oracle数据库之间建立连接。我没有以下数据库信息:
我使用的配置如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="useGeneratedKeys" value="true"/>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
<typeAliases>
<typeAlias alias="assignment" type="simpleproj.assignment.model.Assignment"/>
<typeAlias alias="assignmentLog" type="simpleproj.assignment.model.AssignmentLog"/>
</typeAliases>
<mappers>
<mapper resource="simpleproj/assignment/model/Assignment.xml" />
</mappers>
</configuration>
这就是我如何获得一个新的SQLSessionFactory
实例:
String resource = "mybatis-config.xml";
Reader reader = Resources.getResourceAsReader(resource);
return new SqlSessionFactoryBuilder().build(reader, "assignment");
之后,我尝试通过以下代码检索会话:
session = sqlSessionFactory.openSession(connection);
但是,SQLSessionFactory.OpenSession(connection)
使用以下堆栈跟踪生成错误:
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException:
### Error opening session. Cause: java.lang.reflect.UndeclaredThrowableException
### Cause: java.lang.reflect.UndeclaredThrowableException
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)
at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromConnection(DefaultSqlSessionFactory.java:102)
at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSession(DefaultSqlSessionFactory.java:67)
at simpleproj.assignment.dao.DatabaseDAO.getSession(DatabaseDAO.java:55)
at simpleproj.assignment.dao.DatabaseDAO.deleteAssignmentList(DatabaseDAO.java:124)
at simpleproj.assignment.AssignmentLoader.importData(AssignmentLoader.java:85)
at simpleproj.assignment.AssignmentLoader.main(AssignmentLoader.java:49)
Caused by: java.lang.reflect.UndeclaredThrowableException
at $Proxy7.getAutoCommit(Unknown Source)
at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromConnection(DefaultSqlSessionFactory.java:99)
... 5 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at blackboard.db.ConnectionManager$ConnectionProxy.invoke(ConnectionManager.java:1419)
... 7 more
Caused by: java.sql.SQLException: Connection oracle.jdbc.driver.LogicalConnection@1627c16 is closed.
at org.apache.commons.dbcp.DelegatingConnection.checkOpen(DelegatingConnection.java:398)
at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:337)
... 11 more
来自这个错误:oracle.jdbc.driver.LogicalConnection@1627c16已关闭。将此连接传递给SqlSessionFactoryBean时将关闭。您可以调用connection.getAutoCommit()来测试连接是否支持事务。
我使用的是用Spring配置的mybatis。一切都很好,但是在这种配置下没有连接池。每次我执行一些SQL语句,它都会创建一个新的连接。有什么简单的方法可以用mybatis+Spring配置连接池吗?
使用JDBC MySQL驱动程序(v5.1.3及更高版本),可以通过前缀来发出“轻量级”ping,而不是提供的SQL语句。 例如: 我正在尝试配置myBatis来使用它,但它不起作用。我可以通过使用xRebel(分析工具)或用非常慢的语句交换来确认原始SQL正在运行,而不是轻量级ping。 有人知道为什么或者如何解决这个问题吗? 从我的myBatisMapperConfig副本中。xml 解释轻量
Mybatis 配置文件 MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录 mybatis官方中文文档
我正在尝试使用现有的虚拟环境设置让PyCharm运行。我已将我的PyCharm项目指向以下路径中现有虚拟环境中的python解释器~/.虚拟环境/myproj/ 文件- 该项目运行良好,但编辑器在作为virtualenv的一部分安装的包上仍然亮起红色。 知道我错过了什么吗?
本文向大家介绍MyBatis-Generator的配置说明和使用,包括了MyBatis-Generator的配置说明和使用的使用技巧和注意事项,需要的朋友参考一下 关于MyBatis: MyBatis Generator (MBG) 是一个Mybatis的代码生成器 MyBatis 和 iBATIS. 他可以生成Mybatis各个版本的代码,和iBATIS 2.2.0版本以后的代码。 他可以内省数
本文向大家介绍Spring Boot集成MyBatis实现通用Mapper的配置及使用,包括了Spring Boot集成MyBatis实现通用Mapper的配置及使用的使用技巧和注意事项,需要的朋友参考一下 什么是通用Mapper 通用Mapper就是为了解决单表增删改查,基于Mybatis的插件。开发人员不需要编写SQL,不需要在DAO中增加方法,只要写好实体类,就能支持相应的增删改查方法。 关