运行控制器方法之前先执行注解@ModelAttribute的方法

1.定义公共父控制类controller

 使用注解: @ModelAttribute;

package com.ihrm.common.controller;import org.springframework.web.bind.annotation.ModelAttribute;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class BaseController
{protected HttpServletRequest request;protected HttpServletResponse response;protected String companyId;protected String companyName;@ModelAttribute //进入控制器方法之前执行的方法public void setResAnReq(HttpServletRequest request,HttpServletResponse response){this.request=request;this.response=response;//以后解决companId = "1"this.companyId = "1";this.companyName = "chanzhiboke";}
}

2.在其它控制类继承该控制类,使用该控制类的属性

package com.ihrm.company.controller;import com.ihrm.common.controller.BaseController;
import com.ihrm.common.entity.Result;
import com.ihrm.common.entity.ResultCode;
import com.ihrm.company.service.CompanyService;
import com.ihrm.company.service.DepartmentService;
import com.ihrm.domain.company.Company;
import com.ihrm.domain.company.Department;
import com.ihrm.domain.company.response.DeptListResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.List;//1.解决跨域
@CrossOrigin
@RestController
@RequestMapping(value="/company")
public class DepartmentController extends BaseController
{@Autowiredprivate DepartmentService departmentService;@Autowiredprivate CompanyService companyService;/*** 保存*/@RequestMapping(value="/department",method = RequestMethod.POST)public Result save(@RequestBody Department department){//1 设置企业id//String companyId= "1";department.setCompanyId(companyId);departmentService.save(department);return new Result(ResultCode.SUCCESS);}/*** 查询全部[对应企业的全部]* @return*/@RequestMapping(value="/department",method = RequestMethod.GET)public Result findAll(){//1 设置企业id// String companyId= "1";Company company = companyService.findById(companyId);List<Department> departmentlist = departmentService.findAll(companyId);DeptListResult deptListResult = new DeptListResult(company,departmentlist);return new Result(ResultCode.SUCCESS,deptListResult);}/*** 根据id查询* @return*/@RequestMapping(value="/department/{id}",method = RequestMethod.GET)public Result findByid(@PathVariable(value="id") String id){Department byid = departmentService.findByid(id);return new Result(ResultCode.SUCCESS,byid);}/*** 修改参数*/@RequestMapping(value="/department/{id}",method = RequestMethod.PUT)public Result update(@PathVariable(value="id") String id,@RequestBody Department department){department.setId(id);departmentService.update(department);return new Result(ResultCode.SUCCESS);}/*** 删除数据*/@RequestMapping(value="/department/{id}",method = RequestMethod.DELETE)public Result delete(@PathVariable(value="id") String id,@RequestBody Department department){departmentService.delete(id);return new Result(ResultCode.SUCCESS);}
}

运行控制器方法之前先执行注解@ModelAttribute的方法相关推荐

  1. centos定时运行python_CentOS中实现定时执行python脚本的方法

    CentOS中实现定时执行python脚本的方法 发布时间:2020-06-26 12:44:38 来源:亿速云 阅读:137 本篇文章给大家分享的是有关CentOS中实现定时执行python脚本的方 ...

  2. 以独占方式锁定此配置文件失败.另一个正在运行_加速用例执行最有效的方法,手把手教你如何并行地运行自动化测试...

    在自动化测试过程中的某些时刻,你将遇到一个共同的问题,那就是:需要花费很长时间去执行大量的UI自动化测试用例.最为有效地加速用例执行的方式就是并行地运行自动化测试.不幸地是,使各个自动化测试用例并行地 ...

  3. java 注解 方法 参数_java在注解中绑定方法参数的解决方案

    我们有这样子的需求,需要记录用户操作某个方法的信息并记录到日志里面,例如,用户在保存和更新任务的时候,我们需要记录下用户的ip,具体是保存还是更新,调用的是哪个方法,保存和更新的任务名称以及操作是否成 ...

  4. C# Windows服务启动错误1083配置成在该可执行程序中运行的这个服务不能执行该服务

    今天参考微软的软件windows服务的教程 :https://docs.microsoft.com/zh-cn/dotnet/framework/windows-services/walkthroug ...

  5. 【BUG】@Transactional注解在同类方法调用中不生效

    后台代码 今天做系统开发的时候,遇到了一个BUG:@Transactional注解在同类方法调用中不生效 代码如下: /*** @description: 快递100接口服务类* @date 2021 ...

  6. aop执行跳过某个方法_简谈前端开发中的AOP(一) -- 前端AOP的实现思路

    前言 本意不想用太长的篇幅,来阐述这个话题.但是有些概念和设计思路有必要讲清楚,以便于搞清楚其深层次的内在逻辑.这是我一直遵从的"知其然,知其所以然"的原则.首先,本文将简单的阐述 ...

  7. extjs 方法执行顺序_TestNG之注解变压器amp;方法拦截器

    一.注解变压器 TestNG允许在执行期间修改所有注解的内容.当源代码中的注解大部分是正确的,但是有一些时刻你想要重写他们的值时,这个是非常有用的. 可以使用注解变压器实现. 注解变压器是一个实现了接 ...

  8. java -version cmd_java如何运行步骤cmd?Java执行cmd命令方法有哪些?

    写好一个java程序之后,我们的最终目的就是可以正确的运行程序,如果程序运行正确了,那么代码也就没有什么问题了,可是java如何运行步骤cmd?接下来,我们就来给大家讲解一下这方面的内容. 1.首先用 ...

  9. php 运行外部程序_PHP在linux上执行外部命令的方法

    目录: 一.PHP中调用外部命令介绍 二.关于安全问题 三.关于超时问题 四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍 在PHP中调用外部命令,可以用,1>调用 ...

最新文章

  1. windows 下使用caffy_折腾下Windows下的Elasticsearch安装与使用
  2. 如果把西游记倒过来看,这才是真正的社会
  3. webstorm 不知道手贱点了什么,有时候会自动删除分号
  4. Hystrix面试 - 基于 Hystrix 信号量机制实现资源隔离
  5. canvas文本居中对齐_如何使用文本对齐来居中图像:居中
  6. Linux添加环境变量与GCC编译器添加INCLUDE与LIB环境变量
  7. 语音识别的原理_语音识别原理_语音识别原理框图 - 云+社区 - 腾讯云
  8. android 自定义流程图,GitHub - zx-Zhu/ProcessChart: 安卓自定义流程进度图控件
  9. 浅谈美国ESS音频DAC解码芯片ES9023
  10. day04-selenium滚动和常见反爬
  11. Win7 SP1 安装 .NET Framework 4.6.2,提示“时间戳签名和或证书无法验证或已损坏”
  12. YAMAHA XJR简易说明[网络]
  13. 制定自己的工作目标时,应该学会SMART法则
  14. 更改aspx页面编码格式
  15. 阻容降压电路:每个元器件计算选型
  16. 非对称加密 公钥解密_了解非对称公钥加密
  17. rust 局域网联机_Steam上有哪些值得推荐的可以多人局域网联机的游戏?
  18. 微信小程序routeDone错误问题
  19. c语言如何实现1-n全排列,全排列思路解析附C语言实现
  20. cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第三步---编辑器(2)---更方便很多其它操作更像编辑器...

热门文章

  1. Linux/Unix系统下nginx+php安装简明教程
  2. 4款基于Django框架的开源软件推荐
  3. JAVA正则表达式4种常用功能 [转]
  4. 端口状态 LISTENING、ESTABLISHED、TIME_WAIT、FIN_WAIT_2、CLOSE_WAIT、CLOSE_WAIT
  5. selenium常用定位方式
  6. R语言——一元线性回归
  7. 无法设置或未定义null引用的属性innerHTML
  8. 腾讯云Nginx配置https
  9. 日语学习  「そっと」 和 「こっそり」 的区別
  10. 【Python-2.7】大小写转换函数