service层 必须做业务逻辑的处理
package com.aaa.zxf.service; import com.aaa.zxf.mapper.BookMapper;
import com.aaa.zxf.model.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* 注意 所有service层 必须做业务逻辑的处理,
* 不允许直接返回 mapper 所查询出的结果。
*
*/
import java.util.HashMap;
import java.util.List;
import java.util.Map; @Service //添加 service 注解。
public class BookService { @Autowired // 自动注入
private BookMapper bookMapper; /**
* 获得所有的图书信息
* @return
*/
// map的返回 结果方式。 简单的业务逻辑。
public Map<String,Object> selectAllBooks(){
Map<String, Object> resultMap=new HashMap<String,Object>();
List<Book> bookList = bookMapper.selectAllBooks();
if (bookList.size()>0){
//查询到了数据 可以在上面定义一个map
resultMap.put("code",200);
resultMap.put("result",bookList);
}else {
// 没有查到数据
resultMap.put("code",404);
}
return resultMap;
} /**
* 根据id 删除图书信息。
* 逻辑判断 ?...
* @param id
*/
public void deleteBook(Long id){
int i = bookMapper.deleteBook(id); } /**
* 根据id获得book信息
* @param id
* @return
*/
public Map getOneBook(long id){
Map<String, Object> resultMap=new HashMap<String,Object>();
Book oneBook = bookMapper.getOneBook(id); if (oneBook!=null){
//查询到了数据 可以在上面定义一个map
resultMap.put("code",200);
resultMap.put("result",oneBook);
}else {
// 没有查到数据
resultMap.put("code",404);
}
return resultMap;
} /**
* 更新的操作
* @param book
* @return
*/
public int updataBook(Book book){
int i = bookMapper.updateBook(book);
return i;
} /**
* 录入的方法
* @param book
* @return
*/
public Map<String,Object> insertBook(Book book){
Map<String, Object> resultMap=new HashMap<String,Object>();
int i = bookMapper.insertBook(book);
if (i>0){
resultMap.put("code",200);
resultMap.put("result",i);
}else {
resultMap.put("code",404);
}
return resultMap;
} }
service层 必须做业务逻辑的处理的更多相关文章
- django使用类做业务逻辑
在django中一般定义一个带有request参数的函数用来处理url,但是更推荐用类做 从django.views.generic.base 导入的views有get,post等各种函数,用来处理对 ...
- 深入理解--SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层都有什么作用
SSM是sping+springMVC+mybatis集成的框架. MVC即model view controller. model层=entity层.存放我们的实体类,与数据库中的属性值基本保持一致 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(4)-业务逻辑层的封装
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(4)-业务逻辑层的封装 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2) ...
- 9.1.3 .net framework通过业务逻辑层自动生成WebApi的做法
首先需要说明的是这是.net framework的一个组件,而不是针对.net core的.目前工作比较忙,因此.net core的转换正在编写过程中,有了实现会第一时间贴出来. 接下来进入正题.对于 ...
- HL AsySocket 服务开发框架 - 业务逻辑层
一 概述 Socket服务只是提供一个网络传输服务. 业务逻辑层在整体架构中的位置在那里呢,如图: 网络层将解包后的消息包抛至业务逻辑层,业务逻辑层收到消息包后,解析消息类型,然后转入相应的处理流程处 ...
- 谈谈service层在mvc框架中的意义和职责
mvc框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面. mvc模式是web开发中的基础模式,采用的是分层设计, ...
- 浅谈MVC中的service层(转)
概述 mvc框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面. mvc模式是web开发中的基础模式,采用的是分层 ...
- Java Web学习总结(30)——Service层在MVC框架中的意义和职责
mvc框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面. mvc模式是web开发中的基础模式,采用的是分层设计, ...
- Service层在MVC框架中的意义和职责
https://blog.csdn.net/u012562943/article/details/53462157 mvc框架由model,view,controller组成,执行流程一般是:在con ...
随机推荐
- 【LeetCode】6. ZigZag Conversion Z 字形变换
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 公众号:负雪明烛 本文关键词:字形变换,ZigZag,题解,Leetcode, 力扣,P ...
- D. Persistent Bookcase(Codeforces Round #368 (Div. 2))
D. Persistent Bookcase time limit per test 2 seconds memory limit per test 512 megabytes input stand ...
- Kronecker Products and Stack Operator
目录 定义 Stack Operator Kronecker Product 性质 Stack Operator Kronecker Product 半线性 Whitcomb L. Notes on ...
- A Simple Framework for Contrastive Learning of Visual Representations
目录 概 主要内容 流程 projection head g constractive loss augmentation other 代码 Chen T., Kornblith S., Norouz ...
- JZOJ5405 & AtCoder Grand Contest 001 F. Permutation
题目大意 给出一个长度为\(n\)的排列\(P\)与一个正整数\(k\). 你需要进行如下操作任意次, 使得排列\(P\)的字典序尽量小. 对于两个满足\(|i-j|>=k\) 且\(|P_i- ...
- 集合不安全之 ArrayList及其三种解决方案【CopyOnWriteArrayList 、synchronizedList、Vector 】
@ 目录 一.前言 二.为什么线程不安全 三.解决方案一CopyOnWriteArrayList (推荐,读多写少场景) 四.Collections.synchronizedList(加锁) 五.Ve ...
- nignx-防盗链
环境 主机 IP 角色 centos6.5-1 192.168.3.10 源主机 centos6.5-2 19 ...
- python自动化测试框架的unittest与pytest前后置条件的区别
前言: 笔者先试有用过unittest的前后置条件和pytest的前后置条件,觉得pytest的前后置条件比unittest的要简洁.方便很多.不过在使用unittest的前后置条件时,已经觉得在和每 ...
- linux 之 nginx安装步骤
配置规划 用户 lzh 用户目录 /lzh 下载 进入官网下载nginx http://nginx.org/download/ 安装 解压 cd /lzh/app tar -zxvf nginx-1 ...
- js 模块化 -- 基本的导出与引入class模块
1.目录结构 2.类语法与导出 class food { } //定义常量 let c = "苹果"; //正确的函数写法 food.prototype.getfood = fun ...