1. Дела
Суть пружинных транзакций на самом деле заключается в поддержке базы данных транзакций. Без поддержки транзакций базы данных Spring не может предоставить функции транзакции. В конце концов, все это называется подключением к базе данных для завершения открытия транзакции, совершения и отката.
2. Модуль
Таким образом, для весенних транзакций несколько незаменимых модулей являются источниками данных, менеджерами транзакций и программированием транзакций.
3. Конфигурация XML
<!-Transaction Manager-> <bean id = "SpringtransactionManager"> <name = "dataSource" ref = "dataSource" /> < /bean> <!-Источник данных-> <bean id = "dataSource"> <name = "driverClassName" value = "com.mysql.jdbc.driver" /> <property name = "url" value="jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8" /> <property name="username" value="root" /> <property name="password" value="123456" /> </bean> <bean id="sqlSessionFactory"> <property name="dataSource" ref="dataSource" /> <!- Укажите файл общей конфигурации SQLMAPConfig. Индивидуальная среда не эффективна в пружинном контейнере-> <!-Укажите файл сопоставления класса объекта. Вы можете одновременно указать указанный пакет и все файлы конфигурации в подпакете. Есть один карт и конфигурация. Когда вам нужно указать псевдоним для класса Entity, вы можете указать свойство configlocation, а затем использовать Mapper, чтобы представить файл сопоставления класса объекта в файле Mybatis Total Configuration-> <!-<name = "configlocation" value = "classpath: fwportal/beans/dbconfig/mybatis.xml"/> <property "mapper-"/dbconfig/mybatis.xml "/> <property" mapper-"/> <property". value = "classpath: mapper/*. xml"/> </bean> <!-Регистрация интерфейса DAO как Bean-> <Bean> <name = "basepackage" value = "transaction.dao"/> </bean>
4. Программирование транзакций
@Test public void testdelete () throws exception {ApplicationContext context = new ClassPathxMlapplicationContext ("mysqltransaction.xml"); dataSourCetransactionManager SpringTransactionManager = (dataSourcetransactionManager). DefaultTransactionDefinition (); DEF.SetPropagationBehavior (TransactionDefinition.Propagation_Required); // Открыть транзакцию status = springtransactionmanager.gettransaction (def); final StudentDao dao = (studentDao) контекст. {SpringTransActionManager.Rollback (status); // Обратный бросок транзакции ex;} springTransactionManager.commit (status); // Коммит транзакций}5. Резюме
Выше приведено краткий случай использования mybatis и пружины для завершения операций транзакций. Уровень изоляции транзакции базы данных может быть настроен, а уровень изоляции базы данных MySQL находится в измерении подключения.
Вы также можете установить время ожидания транзакции, то есть транзакция тайм -аута автоматически откатится назад.
Выше приведено все содержание этой статьи об анализе кода транзакций Mybatis, я надеюсь, что это будет полезно для всех. Заинтересованные друзья могут продолжать ссылаться на другие связанные темы на этом сайте. Если есть какие -либо недостатки, пожалуйста, оставьте сообщение, чтобы указать это. Спасибо, друзья, за вашу поддержку на этом сайте!