当前位置: 首页 > news >正文

室内设计师官网杭州seo培训

室内设计师官网,杭州seo培训,在网站做博客,罗湖网站制作多少钱目录 本地文件上传 接口文档 业务实现 登录优化 SpringBoot集成redis 实现令牌主动失效机制 多环境开发 本地文件上传 接口文档 业务实现 创建FileUploadController类并编写请求方法 RestController public class FileUploadController {PostMapping("/upload&…

目录

本地文件上传

接口文档

业务实现

登录优化

SpringBoot集成redis 

实现令牌主动失效机制

多环境开发 


本地文件上传

接口文档

业务实现

创建FileUploadController类并编写请求方法

@RestController
public class FileUploadController {@PostMapping("/upload")public Result<String> upload(MultipartFile file) throws IOException {//把文件内容存储到本地磁盘中String Filename = file.getOriginalFilename(); //自动获取文件名//保证文件名唯一 防止被覆盖String filename = UUID.randomUUID() + Filename.substring(Filename.lastIndexOf("."));//文件传输file.transferTo( new File("D:\\ck\\"+filename));//返回return Result.success("url访问地址……");}
}

 运行请求查看

 查看目录 文件已传输成功

登录优化

令牌主动失效机制

  • 登录成功后,给浏览器响应令牌的同时,把该令牌存储到redis中
  • LoginInterceptor拦截器中,需要验证浏览器携带的令牌,并同时需要获取到redis中存储的与之相同的令牌
  • 当用户修改密码成功后,删除redis中存储的旧令牌 

SpringBoot集成redis 

导入spring-boot-starter-data-redis起步依赖

        <!-- redis依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

在yml配置文件中, 配置redis连接信息

  data:redis:host: localhostport: 6379

调用API(StringRedisTemplate)完成字符串的存取操作 

@SpringBootTest //如果在测试类上添加了这个注解,那么将来单元测试方法执行之前,会先初始化Spring容器
public class redis_test {@Autowiredprivate StringRedisTemplate stringRedisTemplate; //注入StringRedisTemplate对象@Testpublic void testSet(){//向redis中存储一个键值对ValueOperations<String, String> Operations = stringRedisTemplate.opsForValue();Operations.set("name","TiTi"); //存入String o = Operations.get("name"); //获取System.out.println(o);}
}

 

实现令牌主动失效机制

修改login登录接口方法

    @Autowiredprivate StringRedisTemplate stringRedisTemplate; //注入StringRedisTemplate对象@PostMapping("login")public Result<String> login(@Pattern(regexp = "^\\S{5,16}$") String username, @Pattern(regexp = "^\\S{5,16}$") String password){//根据用户名查询用户User loginUser = userService.findByUserName(username); //定义实例对象//判断用户是否存在if(loginUser == null){return Result.error("用户名错误");}//判断密码是否正确,将传入的password参数转成密文,再和数据库中的密文进行判断是否相同if(Md5Util.getMD5String(password).equals(loginUser.getPassword())){//登录成功Map<String,Object> claims = new HashMap<>(); //定义map集合对象claims.put("id",loginUser.getId()); //添加idclaims.put("username",loginUser.getUsername()); //添加用户名//生成jwtString token = JwtUtil.genToken(claims);//把token存储到redis中ValueOperations<String, String> Operations = stringRedisTemplate.opsForValue();Operations.set(token,token,1, TimeUnit.HOURS); //(键,值,过期时间1小时)return Result.success(token);}return Result.error("密码错误");}

 在拦截器中修改从redis中获取token

 在更新密码方法中设置更新密码就删除掉redis中的token

多环境开发 

        SpringBoot提供的Profiles可以用来隔离应用程序配置的各个部分,并在特定环境下指定部分配置生效 

三个横线用于分隔不同的配置环境

---

 on-profile用于指定哪些配置属于哪个环境

spring:config:activate:on-profile: 环境名称

 active用于指定哪个环境生效

spring:profiles:active: 环境名称

通过多个文件分别配置不同环境的属性 文件的名字为 application-环境名称.yml 在application.yml中激活环境 

application.yml文件指定激活文件

spring:profiles:active: devgroup:"dev": devServer,devDB,devSelf
  •  按照配置的类别,把配置信息配置到不同的配置文件中:application-分类名.yml
  • 在application.yml中定义分组 :spring.profiles.group
  • 在application.yml中激活分组 :spring.profiles.active
http://www.hkea.cn/news/735678/

相关文章:

  • 怎么用路由器做网站百度指数平台官网
  • 济南做网站互联网公司有哪些seo是什么公司
  • 辛集seo网站优化价格许昌网站seo
  • 网站建设后期维护百度快速收录技术
  • 网站建设中的推广工作seo学校培训
  • 上海专业网站建设网百度搜索推广开户
  • 做学校网站素材图片合肥seo代理商
  • 真题真做报名网站淘宝搜索关键词排名
  • 免费的黄冈网站有哪些平台?培训行业seo整站优化
  • 寿县住房与城乡建设局网站真正免费的网站建站平台
  • 常德seo招聘网站seo站长工具
  • 网站开发多久完成俄罗斯搜索引擎yandex推广入口
  • 漳州做网站建设建网站免费
  • 网站建设服务上海广州软文推广公司
  • 做一个网站app需要多少钱web制作网站的模板
  • 网站建设的财务计划新媒体营销策略有哪些
  • 网站建设分金手指专业二八宁波品牌网站推广优化
  • 清远网站建设公司百度游戏风云榜
  • 网上可以自学什么技术win7系统优化软件
  • 嘉兴建站软件如何做好企业网站的推广
  • 在凡科做网站短视频推广
  • 深圳推广公司推荐q群排名优化软件
  • 什么网站做简历模板宁德市医院
  • 用什么软件做公司网站游戏推广赚佣金的平台
  • 购物网站 后台模板河北seo技术培训
  • 聊城建设委员会官方网站google seo
  • 广西建设网郭业棚seo推广具体做什么
  • 武汉网站seo诊断谷歌下载官网
  • 做地方网站能赚钱吗免费seo网站诊断
  • 图片设计在线网站推广优化外包便宜