【java – Spring JDBC中的对象映射?】教程文章相关的互联网学习教程文章

java-JDBC:如果丢失对Connection对象的引用,连接是否断开?【代码】

如果我有以下方法-public static void C() {Connection con = DriverManager.getConnection();.... // codereturn; }而且我不调用con.close(),一旦方法返回,连接会自动终止吗?解决方法:…will the connection terminate automatically once the method returns?不,不会.它最终可能会关闭,也可能不会最终关闭,但是如果有的话,距离它还需要很长的时间.如果连接类的终结器处于打开状态,则它可能会关闭该连接,但是在很多情况下,终结器...

java-具有alter table的Spring Jdbc原子性【代码】

我正在尝试使用Spring Jdbc编写等效的Rails数据模型演化/回滚机制. Spring Jdbc transactionnal插入/替换工作得很好(在InnoDB mysql 5下具有PROPAGATION_REQUIRED的DataSourceTransactionManager):// Transaction begins getJdbcTemplate().execute("replace into aTable ..."); getJdbcTemplate().execute("wrong request"); getJdbcTemplate().execute("replace into aTable ..."); // none are commited但是alter不会:// Tran...

java-使用JDBC DAO的ORM多对多和多对多关系【代码】

我正在写一个用于培训目的的小工具.主要范围是了解如何在不使用ORM工具的情况下使用持久性数据.因此,有一个带有表的小数据库:users(id, login, password, group_id) groups(id, name, description) roles(id, name, description) // for many-to-many relationship between groups and roles. groupsroles(group_id, role_id)因此,我实现了一个DAO模式,其中包含3个实体:用户,角色,组.问题是:用关系实施工作的最佳方法是什么?如...

java-此jdbc资源是否关闭?【代码】

回顾我的代码,我发现我偶尔写过:ResultSet rs = conn.createStatement().executeQuery("select * from main"); //snip rs.close();有时我写了Statement st = conn.createStatement(); ResultSet rs = st.executeQuery("Select * from main"); //snip rs.close(); st.close();在第二个代码段中,更明显的是该语句是关闭的,但是在第一个语句中它也是关闭的吗? conn.createStatement()返回一个语句对象,但是像这样实例化时,完成后我看...

Java JDBC UPDATE添加数字?【代码】

因此,假设我在MySQL中有一个int列.我想通过添加到该列来更新该列,而无需运行SELECT查询来获取编号并添加它.这可能吗?解决方法:update tablename set field = field + 1 where condition这是直接执行MySql的更新命令.您没有提到是否使用了特定的ORM,例如Hibernate或其他任何东西,但是可以在HQL等中应用相同的概念.

java-尝试将BLOB读取为InputStream,但出现Connection Closed错误. Spring3 getJdbcTemplate()【代码】

我正在移动一个应用程序以使用Spring3框架,并且我有从Oracle数据库读取BLOB列的代码: 这有效:String fileSqlStr ="select file_id, file_content from cpm_file where file_id = 4";PreparedStatement ps = conn.prepareStatement(fileSqlStr);ResultSet rs = ps.executeQuery();rs.next();int fileId = rs.getInt("file_id");InputStream fis = rs.getBinaryStream("file_content");ExlBOMImporter ei = new ExlBOMImporter(fis...

java-JDBC 4是否完全兼容JDBC 3?

程序员A使用JDBC 3(db2jcc.jar)编写了一个应用程序,并将其部署在WebSphere App Server上. 可以将JDBC连接更改为使用JDBC 4(db2jcc4.jar)而不是JDBC 3吗? JDBC 4是否与JDBC 3完全兼容?解决方法:JDBC 4应该与JDBC 3向后兼容,并且替换驱动程序没有问题. 引用JDBC 4.0 specification 2.2目标概述部分,JDBC 4.0的目标之一是8) Maintain backward compatibility with existing applications and drivers Existing JDBC technology-enab...

java-寻求JDBC驱动程序必须实现的接口(类和函数)的简洁规范

我被要求编写包装非SQL 3rd-party数据API的JDBC驱动程序. 为了了解我的自定义JDBC驱动程序必须实现的接口(类和函数),我做了以下工作: >试图从Oracle’s JDK documentation开始为JDBC驱动程序开发人员(而非用户)查找信息,但文档并未明确说明JDBC驱动程序开发人员规范的位置-它集中于JDBC用户(据我所知)>在jdk1.7.0_09安装源代码的/ java / sql目录中查找.但是,在此目录中的数十个源代码文件中,尚不清楚哪个实际代表了必须实现的必需...

java-如何使用JDBC来最大化Netty的性能?

我正在使用Netty 4和JDBC(用于连接池的BoneCP)开发HTTP应用程序服务器. 到目前为止,我正在一个处理程序上完成所有工作(涉及数据库连接,HttpAsyncClient等的工作).每个作业完成后,我将关闭所有I / O. 据我所知,只要没有任何东西阻塞工作者线程,Netty就会表现良好. 但是,我read JDBC连接创建了阻塞的I / O. 是否有将JDBC与Netty一起使用以改善可伸缩性和性能的良好实践?解决方法:确保您有足够的数据库连接,如果您的池没有连接,显然您...

java-使用JDBC时使用字符串还是char []作为密码?【代码】

从安全角度来看.最佳实践是不要使用String存储密码,而要使用char [].这是否适用于随时使用密码?例如,使用JDBC时可以使用字符串来保存密码吗?public final void Login(String username, String password){ ... conn = DriverManager.getConnection(url, username, password); ... }还是可以在这里使用char []代替String?解决方法:我不知道我是否接受您的假设,即在系统资源(例如JDBC数据库连接)的上下文中,char []比String更安全....

java-使用JDBC检索给定表的所有索引【代码】

我想编写一个SpringBatch Tasklet,它可以自动激活或停用给定数据库表的所有索引.该代码需要独立于DBMS工作(需要SQL Server,Oracle和HSQLDB). 到目前为止,这是我尝试过的:DatabaseMetaData dbMetaData = connection.getMetaData(); ResultSet rs = dbMetaData.getIndexInfo(null, null, tableName, true, false); while (rs.next()) {// work with ResultSet }但是,我没有得到索引的名称或任何有用的信息. 因此,谁能仅通过JDBC连接...

java-Spring-JDBC batchUpdate不提交更改.这是一个臭虫吗?【代码】

我正在研究的项目使用以下依赖项<dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>3.2.0.RELEASE</version></dependency>我正在使用以下方法调用(1)template.batchUpdate(INSERT_SQL, instance of BatchPreparedStatementSetter);查看Spring JDBCTemplate中的源代码,似乎(因为驱动程序支持批处理更新)PreparedStatement上的executeBatch()被调用.但是,我看不到数据库中更新的影响...

java-用户必须提供JDBC连接【代码】

我有一个DispactherServlet.xml文件,其中的休眠文件配置为<bean id="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><property name="mappingResources"><list><value>com/dibya/hbm/resource/model.hbm.xml</value></list></property><property name="hibernateProperties"><props><prop key="hibernate.username">root</prop><prop key="hibernate.password"></prop><prop key="hibernate....

java-在JdbcTemplate中处理列空值

我正在使用JdbcTemplate来获取查询结果.在数据库表中,某些列的值为空.但是我收到转换异常,抱怨无法将null转换为long类型. 如果在列中找到空值,如何告诉spring将空值放入变量? 我的数据类型为Long类型.解决方法:如果有人遇到相同的问题并且不阅读评论(因此这个问题作为搜索结果中的答案出现),则将其发布为答案. 问题是使用了long而不是Long.由于long不能为null,因此无法转换数据库中找到的任何null.

java-半多线程JDBC连接【代码】

我有下面的Callable实例,在这里将SQLException抛出:public long[] call() throws Exception {long[] stats = new long[6];try {executer.acquire();PreparedStatement statement =connection.prepareStatement("SELECT `War`.`EndTime` FROM `WarSim`.`War` WHERE `War`.`WarName` = ?");statement.setString(1, warName);ResultSet res = statement.executeQuery(); //<--------------SQLEXCEPTION HEREif (res.first()) {Timest...

映射 - 相关标签