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

荥阳网站制作如果做vr参观网站

荥阳网站制作,如果做vr参观网站,织梦模板官网,wordpress导航栏美化一.开启nacos 和redis 1.查看nacos和redis是否启动 docker ps2.查看是否安装nacos和redis docker ps -a3.启动nacos和redis docker start nacos docker start redis-6379 docker ps 二.使用SpringSession共享例子 这里的两个例子在我的一个博客有创建过程#xff0c…一.开启nacos 和redis 1.查看nacos和redis是否启动 docker ps2.查看是否安装nacos和redis docker ps -a3.启动nacos和redis  docker start nacos docker start redis-6379 docker ps 二.使用SpringSession共享例子   这里的两个例子在我的一个博客有创建过程我就不再创建了。 SpringSession微服务-CSDN博客 对两个共享做出一点修改 1.对springsessiondemo做修改 2.1.1.添加实体类 Score package com.jr.entry;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.stereotype.Component;Component NoArgsConstructor AllArgsConstructor Data public class Score {private String name;private Double score; } 2.1.2添加实体类 UserDto  package com.jr.entry;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.stereotype.Component;import java.util.List; NoArgsConstructor AllArgsConstructor Component Data public class UserDto {private String id;private String name;private String password;private ListScore scoreList; }2.1 3.添加接口 IUserService package com.jr.service;import com.jr.entry.UserDto;public interface IUserService {public UserDto info(); }4.添加接口实现类 UserServiceImpl package com.jr.service.impl;import com.jr.entry.UserDto; import com.jr.service.IUserService; import org.springframework.stereotype.Service;Service public class UserServiceImpl implements IUserService {Overridepublic UserDto info() {return new UserDto();} }5添加 UserController 类  package com.jr.controller;import com.jr.entry.UserDto; import com.jr.service.IUserService; import com.jr.util.Result; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController RequestMapping(/user) public class UserController {Autowiredprivate IUserService userService;GetMappingpublic Result info(){UserDto userDtouserService.info();return Result.ok().put(data,userDto);} } 6.添加枚举 ResultCode为了更规范化 package com.jr.util;public enum ResultCode {SUCCESS(0, 请求成功),ERROR(1, 请求失败),;private int code;private String message;ResultCode(int code, String message) {this.code code;this.message message;}public int getCode() {return code;}public String getMessage() {return message;} }7.添加工具类 Result 为了更规范化 package com.jr.util;import lombok.Data;import java.util.HashMap; import java.util.Map;Data public class Result {private Integer code;private String message;private MapString, Object map new HashMap();private Result() {}public static Result ok() {Result r new Result();r.setCode(ResultCode.SUCCESS.getCode());r.setMessage(ResultCode.SUCCESS.getMessage());return r;}public static Result error() {Result r new Result();r.setCode(ResultCode.ERROR.getCode());r.setMessage(ResultCode.ERROR.getMessage());return r;}public Result put(String key, Object value) {map.put(key, value);return this;}public Object get(String key) {return map.get(key);}}8.修改application.properties文件中项目注册名字 spring.application.nameopenfeignDemo1  spring.application.nameopenfeignDemo1 2.对sessiondemo1做改动 1.添加实体类 Score package com.jr.entry;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.stereotype.Component;Component NoArgsConstructor AllArgsConstructor Data public class Score {private String name;private Double score; } 2.2.添加实体类 UserDto package com.jr.entry;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.stereotype.Component;import java.util.List; NoArgsConstructor AllArgsConstructor Component Data public class UserDto {private String id;private String name;private String password;private ListScore scoreList; }3.添加接口 IScoreService package com.jr.service;import com.jr.entry.Score;import java.util.List;public interface IScoreService {public ListScore info(); } 4.添加接口实现类 ScoreServiceImpl package com.jr.service.impl;import com.jr.entry.Score; import com.jr.service.IScoreService; import org.springframework.stereotype.Service;import java.util.ArrayList; import java.util.List;Service public class ScoreServiceImpl implements IScoreService {Overridepublic ListScore info() {ListScore result new ArrayList();for (int i0;i3;i){Score scorenew Score();score.setName(namei);score.setScore(Math.random()*10);result.add(score);}return result;} }5.添加 ScoreController类  RestController RequestMapping(/score) public class ScoreController {Autowiredprivate IScoreService scoreService;GetMapping(/info)public Result info(){ListScore listscoreService.info();return Result.ok().put(list,list);} } 6.添加枚举 ResultCode  package com.jr.util;public enum ResultCode {SUCCESS(0, 请求成功),ERROR(1, 请求失败),;private int code;private String message;ResultCode(int code, String message) {this.code code;this.message message;}public int getCode() {return code;}public String getMessage() {return message;} }7.添加工具类 Result  package com.jr.util;import lombok.Data;import java.util.HashMap; import java.util.Map;Data public class Result {private Integer code;private String message;private MapString, Object map new HashMap();private Result() {}public static Result ok() {Result r new Result();r.setCode(ResultCode.SUCCESS.getCode());r.setMessage(ResultCode.SUCCESS.getMessage());return r;}public static Result error() {Result r new Result();r.setCode(ResultCode.ERROR.getCode());r.setMessage(ResultCode.ERROR.getMessage());return r;}public Result put(String key, Object value) {map.put(key, value);return this;}public Object get(String key) {return map.get(key);}}8.8.修改application.properties文件中项目注册名字 spring.application.nameopenfeignDemo2  spring.application.nameopenfeignDemo2 三.启动两个项目同时 如果遇到socket closed问题可能是哪个项目端口冲突了改了就行 1.第一个项目 2.第二个项目 nacos网站里  四.实现http请求管理 我们想要在第一个项目里面查询用户信息的同时也能访问第二个项目的成绩集合。 1.两个项目都向pom.xml添加依赖 !-- feign --dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-openfeign/artifactId/dependency 2.2.在 “用户项目” 里(第一个项目)添加一个接口 定义了Feign接口接口中的方法和对应服务端Controller方法一样两点不同 RequestMapping注解的值要求全路径包括controller上和方法上的注解地址拼接到一起 添加FeignClient注解参数是服务端微服务的名称 package com.jr.feign;import com.jr.util.Result; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.GetMapping; Component FeignClient(openfeignDemo2) public interface ScoreFeign {GetMapping(/score/info)public Result info();} 3.改动UserServiceImpl实现类 package com.jr.service.impl;import com.jr.entry.Score; import com.jr.entry.UserDto; import com.jr.feign.ScoreFeign; import com.jr.service.IUserService; import com.jr.util.Result; import com.jr.util.ResultCode; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import java.util.List;Service public class UserServiceImpl implements IUserService {Autowiredprivate ScoreFeign scoreFeign;Overridepublic UserDto info() {UserDto userDtonew UserDto();userDto.setId(10);userDto.setName(奥特曼);userDto.setPassword(123456);Result resultscoreFeign.info();if(result.getCode() ResultCode.SUCCESS.getCode()){userDto.setScoreList((ListScore) result.get(list));}return userDto;} }4.4.启动类添加注解 EnableFeignClients package com.jr;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; SpringBootApplication EnableRedisHttpSession EnableFeignClients //开始OPenFeign public class SpringBootMain {public static void main(String[] args) {SpringApplication.run(SpringBootMain.class,args);} }5.启动两个项目 同时 第一个项目: 第二个项目 四.添加请求头 1.改第一个项目的控制层UserController 2.修改第二个项目控制器方法添加了请求头的获得 3.启动项目使用postman进行测试  1234356是我自己设置的可以自己设置但是不能是汉字,可以是大小写字母和数字 第一个项目的控制台这里两个是因为我点了两次实际只有一个 第二个项目的控制台这里两个是因为我点了两次实际只有一个 4.创建拦截器 第一个项目的header为123456但是第二个项目的后台为null。 4.4.1在第一个项目创建拦截器类 package com.jr.interceptor;import feign.RequestInterceptor; import feign.RequestTemplate; import org.springframework.context.annotation.Configuration; import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes;import javax.servlet.http.HttpServletRequest;Configuration public class RequestHeaderInterceptor implements RequestInterceptor {Overridepublic void apply(RequestTemplate template) {RequestAttributes requestAttributes RequestContextHolder.getRequestAttributes();if (requestAttributes null) {return;}HttpServletRequest request ((ServletRequestAttributes) requestAttributes).getRequest();String test request.getHeader(test);template.header(test, test);} }4.4.2然后重新启动两个项目用postman工具测试 没有什么要改的postman,直接send,主要是看控制台。 第一个项目的结果没啥变化 第二个项目的结果发生了变化。header不是null而是123456。 五.参数传递 1.第一个项目下的对应的IUserService 接口添加两个方法 UserDto add(UserDto user); UserDto id(String id); 2.在第一个项目下的UserController里添加如下代码 GetMapping(/{id})public Result id(PathVariable String id) { //url传值UserDto userDto userService.id(id);return Result.ok().put(data, userDto);}PostMapping(/add)public Result add(RequestBody UserDto user) { //对象传值UserDto userDto userService.add(user);return Result.ok().put(data, userDto);} 3. feign接口 在第一个项目下的ScoreFeign接口里添加如下代码 GetMapping(/score/{id})Result id(PathVariable String id);PostMapping(/score/add)Result add(RequestBody UserDto user); 4.第一个项目对应的接口实现类重写两个方法 Overridepublic UserDto add(UserDto user) {UserDto userDtonew UserDto();Result resultscoreFeign.add(user);if(result.getCode() ResultCode.SUCCESS.getCode()){UserDto resultUser JSON.parseObject(JSON.toJSONString(result.get(data)),UserDto.class);System.out.println(resultUser);BeanUtils.copyProperties(resultUser,userDto);}return userDto;}Overridepublic UserDto id(String id) {UserDto userDtonew UserDto();Result resultscoreFeign.id(id);if(result.getCode() ResultCode.SUCCESS.getCode()){userDto.setId((String)result.get(id));}return userDto;} 5.为第二个项目的下的UserController里添加如下代码 GetMapping(/{id})public Result id(PathVariable String id) {return Result.ok().put(id, id);}PostMapping(/add)public Result add(RequestBody UserDto user) {return Result.ok().put(data, user);} 6.启动测试用postman工具进行测试 5.6.1先用get方法来url传值 5.6.2在用post方法传对象 下面结果是我网卡了没出来第二张图是对的。 六.我的项目结构 1.第一个项目 2.第二个项目 七.注意 本博客中的四和五大点中 第一个项目的业务类中的  都和第一个项目第二个项目的对应
http://www.hkea.cn/news/14424842/

相关文章:

  • 牛二网站建设wordpress吃内存
  • 网站内容计划wordpress 调用相册
  • 厦门市建设局网站做图片详情网站
  • 网站建设app手机下载织梦怎么做门户网站
  • html网站登录界面模板wordpress arduino
  • 广东网站建设公司网络服务海口seo关键词优化
  • 重庆品牌网站建设公司排名北京房产
  • 网站快速盈利做网站绑定 对应的域名
  • 有哪些网站制作公司网络安全设计方案
  • 大气的企业网站源码新手机发布
  • 网站建设标书微网站的搭建
  • 网站开发vsc网站开发公司公司做网站好吗
  • 东莞网站建设模板报价网站建设的小结
  • 连接国外网站做端口映射网站运营做哪些工作呢
  • wordpress做淘宝客网站达州建网站
  • 做旅游景区网站北京 网站建设公司
  • 网站编程培训公司这样做自己的网站
  • 海拉尔网站开发电商平面ui设计是什么
  • 海南城乡建设庁网站做网站 注意
  • 天津做网站多少钱免费网页制作成品下载
  • 怎么什么软件可以吧做网站什么是网站名称
  • 大学生做家教网站wordpress 4.8.3
  • 诸暨网站制作有哪些公司wordpress律师模板
  • 下载的网站模板怎么改网站优化联系
  • 网站建设是软件开发吗提升网站速度
  • 网站建设合同书 虚拟wordpress实现动态功能
  • 网上书店网站前端搜索条怎么做开发公司提质增效的建议和措施
  • 备案号新增网站徐州市城乡和城乡建设厅网站
  • 游戏模型外包网站泰安集团网站建设方案
  • 专业邯郸网站建设wordpress网站备案号