springboot是一个后端开发框架。众所周知,后端在整个项目中的作用是接受前端的参数,并从数据库中做指定的处理后返回前端需要的参数传给前端。springboot对上述的过程做了下面的分层,使得数据传输满足工业开发的需求。本文将介绍一个实现充值卡业务的功能模块,通过这个载体来叙述每个层在其中的作用。
1、web层(controller)
这一层负责读取前端传来的参数,并且实现相应功能的接口,向前端返回他们需要的参数。在本文中的充值卡业务中,前端传来充值卡兑换码以及用户id和店铺id,后端返回充值卡价值以及充值状态(若不存在对应充值卡,则返回0,否则返回1)
下面是代码示例:
在这段代码中,CardController的属性实例化了一个cardService类(位于Service)层,并利用这个对象的方法实现了充值卡接口的三大功能,即获取相应充值卡信息、得到充值状态以及更新用户账户余额。最后返回了一个字符串,显示充值卡金额和充值状态。
2、service层
这一层用来写具体的业务代码,接受web层Controller类的调用。同时,为了实现具体业务,会调用来自dao层关于数据库内容操作。
在这段代码中,CardService类实例化了两个dao层的类,并调用了dao层对数据库进行操作的方法,用来实现返回对应充值卡金额数值的方法。
3、dao层
这一层用来对数据库进行具体操作,包括增删改查等等。在这一层中要定义Mapper接口方法,再写一个对应的xml文件,里面是对数据库进行操作的sql语句。
第一张图片中的代码定义了CardMapper接口并定义了SelcardByCode方法,第二张图片写了SelcardByCode的具体sql语句,查询数据库card中符合条件的充值卡的信息。
另外,CardMapper接口中的Card类是一个自定义的实体类,它与数据库中card表的结构相对应。因为SelcardByCode需要返回充值卡的对应信息,即数据库中的一行,所以Card类需要建立与数据库card表中字段对应的属性,如下图:
以上就是springboot框架中实现业务的整个后端架构。关于其他配置文件的编写方式,我将在其他文章中尝试阐述清楚。