【Java学习之JDBC】教程文章相关的互联网学习教程文章

java – 通过JDBC发送DEFAULT占位符?【代码】

有没有办法,通过JDBC,显式发送DEFAULT占位符,如INSERT INTO sometables VALUES(blah,DEFAULT)? (我几乎可以肯定答案是“不”,但我正在寻找JDBC专家的确认). 假设您有一个PreparedStatement,如:INSERT INTO mytable(a, b) VALUES (?, ?)对于表:CREATE TABLE mytable (a integer,b integer default some_function() );并且您希望在批处理中的某些执行中使用数据库集DEFAULT for mytable.b,而不是其他执行. 在常规SQL中你会写:INS...

java – JDBC返回一个空的ResultSet(rs.isBeforeFirst()== true),尽管该表不为空【代码】

我正在尝试为我的Web服务完成数据库访问方法.服务和数据库访问方法适用于数据库中的所有其他表,但这一特定方法不适用.当我查询DB时,ResultSet总是返回空(意味着isBeforeFirst()== true). 经过多次尝试后,我将查询切换为一个简单的SELECT * FROM VIDEOS,看看问题是我输入的数据与我在查询中使用的数据之间是否存在差异,但即使这个简单的查询选择表格中的所有项目也没有t返回任何结果. 这是我用来从数据库中提取信息的方法:public s...

java – 将spring oauth db从inmemory迁移到jdbc【代码】

我正在尝试为我的java rest服务添加oauth2支持, 我已经做好了让它在内存中运行:protected static class MyAuthorizationServerConfigurerAdapter extendsAuthorizationServerConfigurerAdapter { ...@Overridepublic void configure(ClientDetailsServiceConfigurer clients) throws Exception {clients.inMemory().withClient("myapp").authorizedGrantTypes("password", "refresh_token").authorities("USER").scopes("read", "...

java – NamedParameterJdbcTemplate的update()和batchUpdate()方法之间的性能和限制问题【代码】

我想知道何时使用Spring框架的NamedParameterJdbcTemplate类中的update()或bacthUpdate()方法. update()有任何行限制吗?有多少行可以处理update()而不会出现性能问题或挂起我的数据库?从batchUpdate()获得良好性能的行数开始? 谢谢.解决方法:贝娄是我的观点:when to use update() or bacthUpdate() method from NamedParameterJdbcTemplate class of Spring framework只要需要同时执行多个sql,就应该使用bacthUpdate().Is ther...

JAVA入门学习基础知识之JDBC

1.JDBC JDBC技术是连接数据库与Java应用程序的纽带 2.JDBC编程六步曲 (1)注册驱动 (2)获取数据库连接 (3)获取数据库操作对象 (4)执行SQL语句 (5)处理查询结果集 (6)关闭资源 3.SQL注入问题 指的是用户在网页中输入的字符串中包含数据库的关键字 4.增删查改,CRUD 分别代表:create/retrive/update/delete 5.多线程下怎么保证安全 JDBC使用行级锁,又称悲观锁 (这是以前写的,存为了草稿,现在还是公开出来,以后会补充...

java – 如何使用自定义id插入记录使用Spring数据jdbc?【代码】

对于Spring Data JPA,我可以使用注释@GeneratedValue(strategy = GenerationType.AUTO)插入带有自定义id的记录,但是对于Spring Data JDBC,如何插入带有自定义id的记录?我曾尝试使用id插入,但没有任何异常抛出,并且记录未插入表中.解决方法:使用Spring Data JDBC的方法是注册一个BeforeSaveEvent ApplicationListener,它创建id并在实体中设置它.@Bean public ApplicationListener<BeforeSaveEvent> idSetting() {return event -> {...

java – JDBC和死锁避免问题(基本)

我正在使用JDBC(通过Spring的JDBCTemplate)来访问数据库中的少量表.虽然我还没有发生任何事情,但我担心会出现死锁的可能性. 我的印象是,有一种方法可以为访问多个表以避免死锁的查询指定锁定顺序,但我不知道这是否是在创建表时在数据库级别设置的类型,或者如果我必须使用我的JDBC查询明确做某事. 即是否存在全局设置或用于指定锁定顺序的东西,或者是否必须在每个查询/更新上完成. 谢谢.解决方法:这将在事务级别进行管理.当鸡蛋问题...

Java:无法使用JDBC ODBC更新Excel【代码】

我可以很好地读取行/列,但我无法更新,插入或删除.try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");String myDB = "jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=myExcelFile.xls;" +"DriverID=22;READONLY=false";con = DriverManager.getConnection(myDB, username, password);stmt = con.createStatement();stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);rs = stmt....

java – org.hibernate.exception.ConstraintViolationException:无法执行JDBC批量更新【代码】

在我正在处理的模块中,我收到此错误,这是由org.hibernate.exception.ConstraintViolationException引起的:无法执行JDBC批量更新和java.sql.BatchUpdateException(完整的堆栈跟踪在这里:click here). 从我从其他帖子中读到的内容来看,这肯定是由于违反主键造成的.但是我甚至无法复制问题,因此我至少可以追踪真正的错误并解决问题.每次我插入一个相同的条目与已经在数据库中的条目,它将只是相互合并,没有错误.但是,我在部署中遇到了...

java – Spring 2.5无法获得JDBC连接【代码】

我正在使用spring 2.5 SimpleJdbcTemplate来访问MySQL数据库.当我尝试经常访问数据库(使用Quartz每分钟访问它)时,我得到了这个堆栈跟踪:org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Communications link failureThe last packet sent successfully to the server wa...

java – JDBC多线程插入是否可行?

我正在研究一个Java项目,我需要准备一个大的(对我来说)mysql数据库.我必须使用Jsoup进行网页抓取并将结果存储到我的数据库中.据我估计,我将插入大约1,500,000到2,000,000条记录.在我的第一次试验中,我只是使用一个循环来插入这些记录,我需要一周的时间来插入大约1/3的所需记录,我认为这太慢了.是否有可能使这个过程成为多线程的,这样我就可以将我的记录分成3组,比如每组500,000条记录,然后将它们插入一个数据库(具体是一个表)?解决...

Java JDBC效率:连接需要多长时间?【代码】

我仍在研究提到here的同样问题.它似乎工作正常,特别是在创建如下所示的AbstractModel类之后:public abstract class AbstractModel {protected static Connection myConnection = SingletonConnection.instance().establishConnection();protected static Statement stmt;protected static ResultSet rs;protected boolean loginCheck; // if userId and userLoginHistoryId are valid - true, else falseprotec...

java – Spring-JDBC中的隔离级别SERIALIZABLE【代码】

也许有人可以帮我解决Spring(3.1)/ Postgresql(8.4.11)中的事务问题 我的交易服务如下:@Transactional(isolation = Isolation.SERIALIZABLE, readOnly = false) @Override public Foo insertObject(Bar bar) {// these methods are just examplesint x = firstDao.getMaxNumberOfAllowedObjects(bar)int y = secondDao.getNumerOfExistingObjects(bar)// comparisonif (x - y > 0){secondDao.insertNewObject(...) }.... }Spring配...

java – 带有BigDecimal的Spring JDBC queryForObject失败【代码】

Java 1.7/Spring 3.1看看下面的代码.BigDecimal value = queryAsObject (BigDecimal.class, "select balance from financial.accounts where account_id = ?", accountId);queryAsObject来自抽象父类,它基本上执行CRUD操作.public <T> T queryAsObject(Class<T> modelClass, String sql, Object... args) {return jdbcTemplate.queryForObject(sql, new HawkBeanPropertyRowMapper<T>(modelClass), args);} 相当直接的春天jdbc电...

java – 每次调用query()时JdbcTemplate都会创建一个新连接吗?【代码】

在下面的示例中,JdbcTemplate是创建两个连接还是一个?public class MyDao {private JdbcTemplate jdbcTemplate;public List<Data1> getData1() {return jdbcTemplate.query(mySql, myParams, myCallback);}public List<Data2> getData2() {jdbcTemplate.query(mySql2, myParams2, myCallback2);} }public class Main {public static void main(String[] args) {MyDao dao = new MyDao();List<Data1> d1 = dao.getData1();List<Dat...

JDBC - 相关标签