java b2b2c social e-commerce spring cloud distributed microservice springboot enables declarative transaction

E-commerce social platform source code Please add Penguin: 103874626. springboot is very simple to start a transaction, only one annotation is needed @Transactional Just fine. Because in springboot, events have been enabled for jpa, jdbc and mybatis by default. When they are introduced, things will be enabled by default. Of course, if you need to use other orm, such as beatlsql, you need to configure the relevant transaction manager yourself.

Preparation stage

The code in the above article is an example, that is, spring boot integrates mybatis. The previous article implemented the data access layer of mybatis based on annotations. This article implemented it based on xml and opened declarative transactions.

Environmental dependence

To introduce the mybatis startup dependency in the pom file:

<dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.0</version>
</dependency>

Introduce mysql dependency

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.0.29</version>
        </dependency>

Initialize database script

-- create table `account`
# DROP TABLE `account` IF EXISTS
CREATE TABLE `account` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT NULL,
  `money` double DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO `account` VALUES ('1', 'aaa', '1000');
INSERT INTO `account` VALUES ('2', 'bbb', '1000');
INSERT INTO `account` VALUES ('3', 'ccc', '1000');

Configure data sources

spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
mybatis.mapper-locations=classpath*:mybatis/*Mapper.xml
mybatis.type-aliases-package=com.forezp.entity

By configuring mybatis.mapper-locations to indicate the location of mapper's xml file, I put it under the resources/mybatis file. mybatis.type-aliases-package to indicate the package of the entity mapped with the database.

After the above steps, springboot can access the database through mybatis.

Create entity class

public class Account {
    private int id ;
    private String name ;
    private double money;
 
    getter..
    setter..
 
  }

The source code of B2B2C e-commerce platform built by JAVASpring Cloud distributed microservice cloud for large enterprises: 103874626

Tags: Programming Mybatis Spring MySQL SpringBoot

Posted on Fri, 08 Nov 2019 16:23:00 -0500 by ed01