In code, when inserting data into a database, if you do not use transactions, it can result in very slow

Source: Internet
Author: User

Today test, 150 data, call Jdbctemplate.batchupdate statement, the case of not open transaction, 6m or so to execute, after the transaction, hundreds of milliseconds to execute, the gap is very large.

Because it is executed in a pool of threads, the task is new and cannot be processed as a bean, so the transaction manager can only be invoked manually by using the injected transaction.

First, get the transaction manager bean from the bean

ApplicationContext (). Getbean (Datasourcetransactionmanager.class);

Second, a new transaction defines

Defaulttransactiondefinition def = new Defaulttransactiondefinition ();
Def.setpropagationbehavior (transactiondefinition.propagation_requires_new); Things isolation level, opening new transactions

Open transaction
Transactionstatus status = Datasourcetransactionmanager.gettransaction (Def); Get transaction status

Commit a transaction

Datasourcetransactionmanager.commit (status);

Rolling back a transaction

Datasourcetransactionmanager.rollback (status);

As to why the matter has affected so much, wait for it to be researched later

In code, when inserting data into a database, if you do not use transactions, it can result in very slow

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.