01 2019 档案
摘要:在上篇中是写死的,这章就写出通用的 测试:
阅读全文
摘要:这个是工具类 这个是测试类 可以看出是唯一的,那么在电商生产中可以加上分库分表的id+在模块+userid,加上日期就是唯一的了,不管是任何请求这个id都是唯一的,即使是在分布式环境下
阅读全文
摘要:线程安全问题: 在添加时候并没有进行安全考虑,枷锁 所以是线程不安全的,接下来进行代码测试; 运行三次: 所以hashmap是线程不安全的,那么我们在代码里面怎么还要用呢,我们只是局部使用,并没有在多线程环境下使用,所以并不会出现线程安全问题
阅读全文
摘要:hashmap的构造方法: 总共有四个构造方法: 扩容方法每次都是2次方的形式扩容: hashmap的成员变量: 添加方法: 首先计算key在table中的位置,如果hash不重复,就在后面添加,就扩容,如果重复了,就在链表中添加,如果链表的长度超过了8,那么就会变成红黑树, 通过key值移除对象的
阅读全文
摘要:首先它是继承了AbstractMap,这个抽象类里面有很多方法, 从这个可以看出面向对象的特性,单继承,接口的多实现, 同时实现了序列号接口,可以进行网络传输,在进行网络传输的时候实体类一般都会实现序列号接口,以便传输, 在整合redis的时候,如果实体没有进行序列化,是无法传输进入到redis中的
阅读全文
摘要:在笔者换jar包时候出现问题: 这个是缺少了zookeeper的依赖,所以引入那个依赖就可以解决了
阅读全文
摘要:笔者用自己代码测试时候发现这个版本信息,可以没有,也可以制定一个就可以了,没有太大的问题,只是需要注意引入的依赖问题,两个jar与一个jar的问题, 然后就是接口公共依赖问题,案例是把我找的几个案例进行配置的,将接口分开来写,当然也可以写在一个包里面
阅读全文
摘要:将配置文件进行更换: 在一中是引入: 这两个依赖,也可以引入一个依赖照样是可以进行:
阅读全文
摘要:工程结构: 主pom 注意事项:引入图中整个dubbo依赖时候要加入这个zookeeper的依赖,不然会报calssnotfound错误: common代码: 1 pom 2 product api privoder代码 1 pom 2 productservice 3 启动类: 4 yml: co
阅读全文
摘要:https://gitee.com/chenxiufen/springcloud.git,包括sql语句都有
阅读全文
摘要:这个模块是一个独立的模块所以需要建立一个模块, 首先引入: 依赖pom.xml 编写启动类: 编写yml文件: 注意事项: 二: 访问体验:
阅读全文
摘要:首先配置类: 这个地方忘记加了 第二主机名写出了locahost后台报错 这两个不加会报错: 还有就是那个界面之后不知道如何操作:
阅读全文
摘要:Hystrix Dashboard是Hystrix的仪表盘组件,主要用来实时监控Hystrix的各项指标信息,通过界面反馈的信息可以快速发现系统中存在的问题。 整合快速体验: pom.xml(这个是F系之后的依赖) 之前的使用: 启动类上加 启动类配置@EnableHystrixDashboard注
阅读全文
摘要:feign本身是支持Hystrix的,所以不需要引入其他依赖: 我们可以看看feign这个项目的依赖,就是引入这个依赖的pom.xml 要想看这个很简单,点击那个依赖进去就可以了 点进去就可以看到 是本身就支持的,所以直接使用就可以了: 使用很简单: 在yml文件中开启: 看之前写的调用接口: 那个
阅读全文
摘要:首先在代码里面引入依赖: 这个依赖包括了前几个依赖,所以引入一个就可以了 可以点进这个依赖看下: 所以只需要引入刚才那个依赖就可以了 yml 配置: 然后docker安装zipkin 启动zipkin 在浏览器输入地址: 然后启动服务: 服务调用成功: 可以看到每个服务的调用时间,可以进行优化相关配
阅读全文
摘要:一 Eureka注册中心认证: Eureka自带了一个管理界面,如果不加密,所有人都可以进行访问这个地址,这样安全问题就来了,所以需要对其进行加密认证: 那么该如何进行整合呢: 1 在注册中心模块添加依赖: 2 yml文件配置: 3 启动服务再次登录尝试: 之前是谷歌登录,所以换了一个浏览器,需要再
阅读全文
摘要:一:编译器报错 这个地方是由于没有被spring管理,编译器报错,可以选择加上@comoponent这个注解 也可以选择不加,启动程序是不会报错的. 二 报错为空: 这个主要看最后一个是参数不存在的错误 说明问题: 问题解决方法
阅读全文
摘要:一:Feign简介 Feign 是一种声明式、模板化的 HTTP 客户端,在 Spring Cloud 中使用 Feign,可以做到使用 HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个 HTTP 请求。 Feign 的灵感来源于 Retrofi
阅读全文
摘要:ribbon的负载均衡策略有很多 IRule 这是所有负载均衡策略的父接口,里边的核心方法就是choose方法,用来选择一个服务实例。 AbstractLoadBalancerRule AbstractLoadBalancerRule是一个抽象类,里边主要定义了一个ILoadBalancer,就是我
阅读全文
摘要:我在RestTemplate的配置类里使用了 @LoadBalanced@Componentpublic class RestTemplateConfig { @Bean @LoadBalanced public RestTemplate restTemplate(){ return new Res
阅读全文
摘要:首先这个服务地址:一定不要写错,是自己注册中心开启的地址 如果注意到这些了,可以简单的进行操作,也可以不需要mybatis与数据库连接,在controller里直接返回相应的数据可以了,不用这么幸苦的进行整合开发了 但是在开发环境中就是这么进行的,所以为了提升技术我还是进行了整合
阅读全文
摘要:搭建服务模块为了模拟正式开发环境,只是少写了service层直接在controller里面直接引用,直接上图和代码:更为方便: 创建完成之后加入配置: pom.xml文件: 这个插件中加入了自动生成代码插件: mybatis_generator.xml yml文件: 笔者在这个文件配置时候出现很多问
阅读全文
摘要:创建modul 然后就创建完成了 添加yml文件: pom文件: 使用dubbo开发的时候,dubbo的注册中心是zookeeper, zookeeper是不需要写代码去操作的,而这里不是的, 是以程序的方式启动,zookeeper或者consul也是可以的,只是服务需要自己启动 添加启动类 启动点
阅读全文
摘要:首先搭建父工程: 点击next父工程就搭建完成; pom.xml文件: 可以修改springboot得版本,还有springcloud得版本进行控制,然后将eureka的依赖删除了 但是要注意 https://projects.spring.io/spring-cloud/
阅读全文
摘要:学习目标 快速学会使用注解关闭Swagger2,避免接口重复暴露。 使用教程 禁用方法1:使用注解@Profile({"dev","test"}) 表示在开发或测试环境开启,而在生产关闭。(推荐使用) 禁用方法2:使用注解@ConditionalOnProperty(name = "swagger.
阅读全文
摘要:首先得去官网下载consul 去官网下载:https://www.consul.io/downloads.html解压: 再配置环境变量: 再添加path: 在打开命令行窗口: 输入 :consul agent -dev 然后再浏览器端输入:http://127.0.0.1:8500/ui/dc1/
阅读全文
摘要:首先必须安装xshell这个工具 使用xshell来操作服务非常方便,传文件也比较方便。就是使用rz,sz首先,服务器要安装了rz,szyum install lrzsz当然你的本地windows主机也通过ssh连接了linux服务器运行rz,会将windows的文件传到linux服务器运行sz f
阅读全文
摘要:码云为开源中国基于git的代码网络托管平台,将代码托管、开发与项目管理工具融为一体。今天第一次将自己的web项目代码上传至码云,过程中遇到一些问题,此处进行总结与过程的演示:当我们在码云上创建好项目后,结构如图所示: 代码开发完成之后发现代码无误之后就需要将他提交到码云上去, 首先需要找一个文件夹,
阅读全文
摘要:application.properties文件配置: #服务端口,8080被另一服务占用server.port=9090spring.activemq.broker-url=tcp://127.0.0.1:61616# 在考虑结束之前等待的时间#spring.activemq.close-time
阅读全文
摘要:问题分析:当如果多个消费者是什么情况呢 topic消费是友多个消费者的,是支持的,但是queue是支持,但是不能保证多个消费均匀消费,在分布式环境下怎么操作呢: 看案例: 在前面整合代码执行: 浏览器输入 http://localhost:8080/publish/queue 结果如下: 发送控制台
阅读全文
摘要:不罗嗦直接上代码结构与工程目录: 这个是主工程目录: pom.xml consumer目录与pom.xml prdeucer和pom.xml 接下来是代码: 消费者和生产者代码是配置一样的 yml的配置 也是一样的,只需要改下启动端口: 生成者文件: 消费者监听代码: 启动类: 执行结果:
阅读全文
摘要:在使用 springmvc 中,一般的定时任务是使用 job 或者 quartz 或者timer来实现,但是使用它们的时候比较麻烦,会在 xml 文件中配置很多, springboot 的定时任务比较简单。 1、在 application 启动类中使用 @EnableScheduling 注解开启定
阅读全文
摘要:JVM 优化 Java 的内存模型分为: Young,年轻代(易被 GC)。Young 区被划分为三部分,Eden 区和两个大小严格相同的 Survivor 区,其中 Survivor 区间中,某一时刻只有其中一个是被使用的,另外一个留做垃圾收集时复制对象用,在 Young 区间变满的时候,mino
阅读全文
摘要:tomcat的最佳实践运行模式 Tomcat Connector三种运行模式(BIO, NIO, APR)的比较和优化。 org.apache.coyote.http11.Http11Protocol:BIOorg.apache.coyote.http11.Http11NioProtocol:NIO
阅读全文
摘要:redis注解开发过程中包含许多注解 1.@Cacheable 可以标记在方法上,也可以标记在类上。当标记在方法上时表示该方法是支持缓存的,当标记在类上时则表示该类所有的方法都是支持缓存的。应用到读取数据的方法上,将先从缓存中读取该方法的返回值,如果没 有再从DB获取数据,然后把数据添加到缓存中 缓
阅读全文
摘要:一 说明 这是spring整合redis注解开发的系类: 二 正文 在注解开发时候,会有这几个注解需要注意: 具体含义: 1.@Cacheable 可以标记在方法上,也可以标记在类上。当标记在方法上时表示该方法是支持缓存的,当标记在类上时则表示该类所有的方法都是支持缓存的。应用到读取数据的方法上,将
阅读全文
摘要:一 说明 接着上篇讲述redis缓存配置的用法: 二 正文 首先要使用缓存就必须要开开启缓存,第二步是需要开redis-server 下载redis包之后,点击图中两个都可以开启redis 怎么看是否启动呢,见下图: 在application中加入连接地址,和相关策略:
阅读全文
摘要:一 说明: springboot整合mybatis,redis,代码(一) 这个开发代码的复制粘贴,可以让一些初学者直接拿过去使用,且没有什么bug 二 对上篇的说明 可以查看上图中文件: 整个工程包括配置,对对应上文的配置
阅读全文
摘要:一 搭建项目,代码工程结构 使用idea或者sts构建springboot项目 二 数据库sql语句 三 pom.xml文件 四 mybatis-gengerator的xml文件 五代码生成 添加如图命令,然后执行, 或者参考springboot整合ssm和druid篇介绍 六 redis配置 七a
阅读全文
摘要:一 关于 Swagger Swagger能成为最受欢迎的REST APIs文档生成工具之一,有以下几个原因: Swagger 可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。 Swagger 可以生成客户端SDK代码用于各种不同的平台上的实现。 Swagger 文件可以在许
阅读全文
摘要:在使用springboot整合ssm和druid的时候出现数据库一个问题 出现这个问题时候,就是是数据库时间问题,然后执行了 进行查询设置: 然后就可以正常访问了
阅读全文
摘要:springboot,mybatis,sruid
阅读全文

浙公网安备 33010602011771号