Java课题笔记~ Spring事务的程序举例环境搭建

  举例:购买商品 trans_sale 项目

 

本例要实现购买商品,模拟用户下订单,向订单表添加销售记录,从商品表减少库存。

实现步骤:

Step0:创建数据库表

创建两个数据库表 sale , goods

sale 销售表:

Java课题笔记~ Spring事务的程序举例环境搭建_第1张图片

 goods 商品表:

Java课题笔记~ Spring事务的程序举例环境搭建_第2张图片

 goods 表数据:

Java课题笔记~ Spring事务的程序举例环境搭建_第3张图片

 Step1: maven 依赖 pom.xml


    
        junit
        junit
        4.12
        test
    
    
        org.springframework
        spring-context
        5.3.26
    
    
        org.springframework
        spring-tx
        5.3.26
    
    
        org.springframework
        spring-jdbc
        5.3.26
    
    
        org.mybatis
        mybatis
        3.5.11
    
    
        org.mybatis
        mybatis-spring
        2.1.0
    
    
        mysql
        mysql-connector-java
        8.0.29
    
    
        com.alibaba
        druid
        1.2.8
    
	
 

    
        
            src/main/java
            
                **/*.properties
                **/*.xml
            
            false
        
    
    
        
            org.apache.maven.plugins
            maven-compiler-plugin
            3.11.0
            
                1.8
                1.8
            
        
    

Step2:创建实体类

创建实体类 Sale 与 Goods

Java课题笔记~ Spring事务的程序举例环境搭建_第4张图片

 Step3:定义 dao 接口

定义两个 dao 的接口 SaleDao , GoodsDao

SaleDao :

Java课题笔记~ Spring事务的程序举例环境搭建_第5张图片

  GoodsDao :

Step4:定义 dao 接口对应的 sql 映射文件

SaleDao.xml

Java课题笔记~ Spring事务的程序举例环境搭建_第6张图片

 

 GoodsDao.xml

Java课题笔记~ Spring事务的程序举例环境搭建_第7张图片

 

Step5:定义异常类

定义 service 层可能会抛出的异常类 NotEnoughException

Java课题笔记~ Spring事务的程序举例环境搭建_第8张图片

 

Step6:定义 Service 接口

定义 Service 接口 BuyGoodsService

Java课题笔记~ Spring事务的程序举例环境搭建_第9张图片

 

Step7:定义 service 的实现类

定义 service 层接口的实现类 BuyGoodsServiceImpl

1)类定义

 

2)Dao 属性

Java课题笔记~ Spring事务的程序举例环境搭建_第10张图片

 

3)Buy 方法

Java课题笔记~ Spring事务的程序举例环境搭建_第11张图片

 Java课题笔记~ Spring事务的程序举例环境搭建_第12张图片

 

Step8:修改 Spring 配置文件内容

声明Mybatis 对象

Java课题笔记~ Spring事务的程序举例环境搭建_第13张图片

  声明业务层对象

Java课题笔记~ Spring事务的程序举例环境搭建_第14张图片

 

Step9:定义测试类

定义测试类 MyTest。现在就可以在无事务代理的情况下运行了

Java课题笔记~ Spring事务的程序举例环境搭建_第15张图片

 

运行程序并查看数据库:

Java课题笔记~ Spring事务的程序举例环境搭建_第16张图片

 测试代码可有三种类型:

① 正常购买【id和amount匹配】

② 无此商品【没有库里面的id】

③ 库存不足【amount大于原有的amount】

Java课题笔记~ Spring事务的程序举例环境搭建_第17张图片

你可能感兴趣的:(Java,java,笔记,spring,AspectJ,的开发环境,数据库)