网站开发一般用,网站开发详细流程图,男周志做网站,faq页面设计模板services层
我的理解#xff0c;services层是编写逻辑代码语句最多的一个层#xff0c;非常重要#xff0c;在实际的项目中#xff0c;负责调用Dao层中的mybatis#xff0c;在我的项目中它调用的是这两个文件 举例代码如下
package com.example.sfdeliverysystem.servic…services层
我的理解services层是编写逻辑代码语句最多的一个层非常重要在实际的项目中负责调用Dao层中的mybatis在我的项目中它调用的是这两个文件 举例代码如下
package com.example.sfdeliverysystem.service;
import com.example.sfdeliverysystem.dao.mybatis.StashMapper;
import com.example.sfdeliverysystem.model.StashPO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;Service//加载service方法的包
Slf4j//加载log方法的包
public class StashService {//创建一个方法private StashMapper stashMapper;//调用接口并创建StashMapper类型的对象这个类是Dao层的接口里的/*** 新增Stash* param stashPo*/public int insertStash(StashPO stashPo) { //调用接口中的insertStash方法//这个是方法名方法体在StashMapper.xml里边定义了try{//实际写项目的时候每个方法体里边都应该写try和//TODO 后续应该在mybatis中加上返回值确定是否插入成功(1成功0失败)stashMapper.insertStash(stashPo);//用stashMapper.来调用它体内的方法return 1;}catch (NullPointerException e){//如果出错终止try的运行进入catch分支运行方法体log.error(有部分属性为空,{0},e);return 0;}};/*** 查询Stash返回我查询的值成功返回查询的值失败就不用返回了* return selectStash()*/public StashPO selectStash() {//定义返回值类型为StashPO调用接口中的selectStash方法StashPO stashpo new StashPO();//新建局部变量为了承接selectStash方法的返回值结果try {stashpo stashMapper.selectStash();//承接selectStash方法的返回值结果}catch (Exception e) {log.error(有部分属性查询不到,{0}, e); //有部分属性查询不到nullException}return stashpo;};/*** 更新Stash成功返回1失败返回0* param stashPo* return*/public int updateStash(StashPO stashPo){try{stashMapper.updateStash(stashPo);return 1;}catch (Exception e) {log.error(有部分属性无法更新,{0}, e);return 0;}};/*** 删除Stash成功返回1失败返回0* param cid* return*/public int deleteStash(String cid) {try{stashMapper.deleteStash(cid);return 1;}catch (Exception e) {log.error(有部分属性无法删除,{0}, e);return 0;}};
}controller层
我的理解controller层是用来处理页面和services层的逻辑关系的一个层下面由代码举例
package com.example.sfdeliverysystem.controller;
import com.example.sfdeliverysystem.dao.mybatis.StashMapper;
import com.example.sfdeliverysystem.model.StashPO;
import com.example.sfdeliverysystem.service.StashService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
Slf4j
RequestMapping(/StashPO)//将请求和处理请求的控制器方法关联起来建立映射关系里边写实体类名
RestController
//定义一个StashController类里边写对应的增删改查的方法方法体为调用services层中的方法
public class StashController {private StashService stashService;//新建两个局部变量还是主要为了调用和承接返回值private int i;
GetMapping(/{insert})//绿色的是在url中为了让其可以被识别的路径关键字自己设置的
public int insertStash(StashPO stashPo){//依旧是调用接口中的方法然后承接其返回值然后输出本身方法体的返回值i stashService.insertStash(stashPo);return i;};GetMapping(/{select})public StashPO selectStash() {StashPO stashpo new StashPO();try{stashpo stashService.selectStash();}catch (Exception e) {log.error(有部分属性查询不到,{0}, e);}return stashpo;};GetMapping(/{update})public int updateStash(StashPO stashPo){i stashService.updateStash(stashPo);return i;}GetMapping(/{delete})public int deleteStash(String cid) {i stashService.deleteStash(cid);return i;};
};