日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springcloud服务发现

發(fā)布時間:2025/3/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springcloud服务发现 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

下面我們接著上一篇eureka的自我保護繼續(xù)講springcloud服務發(fā)現(xiàn)

controller層代碼:

package com.atguigu.springcloud.controller;import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cloud.client.ServiceInstance; import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController;import com.atguigu.springcloud.entities.Dept; import com.atguigu.springcloud.service.DeptService;import javax.annotation.Resource;@RestController public class DeptController {@Autowiredprivate DeptService service;//@Autowired@Resourceprivate DiscoveryClient client;@RequestMapping(value = "/dept/add", method = RequestMethod.POST)public boolean add(@RequestBody Dept dept) {return service.add(dept);}@RequestMapping(value = "/dept/get/{id}", method = RequestMethod.GET)public Dept get(@PathVariable("id") Long id) {return service.get(id);}@RequestMapping(value = "/dept/list", method = RequestMethod.GET)public List<Dept> list() {return service.list();}// @Autowired // private DiscoveryClient client;@RequestMapping(value = "/dept/discovery", method = RequestMethod.GET)public Object discovery() {List<String> list = client.getServices();System.out.println("**********" + list);List<ServiceInstance> srvList = client.getInstances("MICROSERVICECLOUD-DEPT");for (ServiceInstance element : srvList) {System.out.println(element.getServiceId() + "\t" + element.getHost() + "\t" + element.getPort() + "\t"+ element.getUri());}return this.client;}} 注入服務發(fā)現(xiàn) @Resource private DiscoveryClient client;

?

service層代碼

package com.atguigu.springcloud.service.impl;import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import com.atguigu.springcloud.dao.DeptDao; import com.atguigu.springcloud.entities.Dept; import com.atguigu.springcloud.service.DeptService;@Service public class DeptServiceImpl implements DeptService {@Autowiredprivate DeptDao deptDao;@Overridepublic boolean add(Dept dept){return deptDao.addDept(dept);}@Overridepublic Dept get(Long id){return deptDao.findById(id);}@Overridepublic List<Dept> list(){return deptDao.findAll();}}

dao層代碼

@Mapper //@Component @Repository public interface DeptDao {public boolean addDept(Dept dept);public Dept findById(Long id);public List<Dept> findAll(); }

代碼結(jié)構(gòu):

?

mapper的核心配置文件mybatis.cfg.xml

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><settings><setting name="cacheEnabled" value="true" /><!-- 二級緩存開啟 --></settings></configuration>

?

mapper的sql映射文件DeptMapper.xml

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.atguigu.springcloud.dao.DeptDao"><select id="findById" resultType="Dept" parameterType="Long">select deptno,dname,db_source from dept where deptno=#{deptno};</select><select id="findAll" resultType="Dept">select deptno,dname,db_source from dept;</select><insert id="addDept" parameterType="Dept">INSERT INTO dept(dname,db_source) VALUES(#{dname},DATABASE());</insert></mapper>

啟動類:

package com.atguigu.springcloud;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.netflix.eureka.EnableEurekaClient;@SpringBootApplication @EnableEurekaClient //本服務啟動后會自動注冊進eureka服務中 @EnableDiscoveryClient //服務發(fā)現(xiàn) public class DeptProvider8001_App {public static void main(String[] args) {SpringApplication.run(DeptProvider8001_App.class, args);} }

?

總結(jié)

以上是生活随笔為你收集整理的springcloud服务发现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。