03 2020 档案
摘要:继承HandlerInterceptorAdapter方法 重写方法 @Component public class ComInterceptor extends HandlerInterceptorAdapter { @Autowired IUserDao userDao; @Autowired
阅读全文
摘要:JOSN List 返回值为[ ] 要想让它不返回 在实体类添加注解 @JsonInclude(JsonInclude.Include.NON_EMPTY) public class MenuDTO { private Integer id; private String name; private
阅读全文
摘要:import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.Cor
阅读全文
摘要:1. 隐藏git stash git pull git stash pop 2.直接commitgit commit -m "one"
阅读全文
摘要:启动MYSQL服务 net start -- 启动 net stop -- 关闭 DISTINCT 去重 DISTINCT SELECT DISTINCT 字段 FROM 表名 + 号的作用(运算符) SELECT 100 + 90; 做加法运算 SELECT '123' + 90; 其中一方为字符
阅读全文
摘要:当表中有text字段的时候 会自动生成WithBLOBS 并且继承实体类 解决方法 重写表字段即可
阅读全文
摘要:添加serverTimezone=UTC url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC
阅读全文
摘要:观察者模式 当更改一个对象 可能需要更改其它对象 public interface Observer { void send (Object object); } public class Subject { private List<Observer> list = new ArrayList<>
阅读全文
摘要:装饰器模式 不改变原有对象的情况下 给一个对象扩展功能 创建一个接口 // 手机接口 public interface Phone { // 功能 void funcation(); } // 手机类 public class PhoneApp implements Phone { @Overrid
阅读全文
摘要:适配器 使用已有类 但接口与其它代码不兼容时 使用该模式 重用几个子类 但子类缺少一些不能添加到父类中的公共功能时 使用该模式 对象适配器(使用组合) // 手机usb接口 public interface UsbPhone { String getName(); } // 电脑usb接口 publ
阅读全文
摘要:享元模式 共享对象 节省大量内存和CPU资源 public class People { private final String name; private final String sex; public People(String name, String sex) { System.out.
阅读全文
摘要:建造者模式 一般用于不可变对象 比如配置文件 // 创建打印机类 public class Print { // 配置写死了 private final String printName = "1"; private final String printVersion = "2"; private
阅读全文
摘要:工厂模式 通常由我们自己创建(new) 对象 增加了程序的耦合度 为了将对象创建使用相分离 采用工厂模式工厂负责创建对象 我们直接从工厂里面取对象就行 将实例化的过程封装起来 进行统一管理 简单工厂模式 // 打印机接口 public interface Print { // 获得打印机的名字 St
阅读全文
摘要:单例设计模式 保证一个类只有一个实例 懒汉式 (在需要的时候才实例化) 在单线程环境下 实例只有一个 class SingletonTest{ public static void main(String[] args) { Singleton singleton1 = Singleton.getI
阅读全文
摘要:模拟鸭子应用 使用继承 public abstract class Duck { public void quack(){ System.out.println("鸭子呱呱叫"); } public void swim(){ System.out.println("鸭子游泳"); } public
阅读全文
摘要:什么是Spring Cloud Config? 在分布式或者微服务系统中 每个服务有独立的配置文件信息 当服务越来越多 配置文件也越来越多 不方便维护 配置中心通过将配置信息在配置中心统一配置 减少维护工作量和出错率 本地读取配置文件 创建一个新工程(继承父工程) 如果没有 https://www.
阅读全文
摘要:为什么需要zuul? Zuul Ribbon 以及Eureka 相结合 可以实现智能路由和负载均衡的功能 网关将所有服务的API 接口统一聚合 并统一对外暴露 网关服务可以做用户身份认证和权限认证 防止非法请求操作API 接口 对服务器起到保护作用。 Zuul过滤器的类型 PRE 过滤器:请求路由到
阅读全文
摘要:什么是熔断器? Hystrix 是Netflix 公司开源的一个项目 它提供了熔断器功能 能够阻止分布式系统中出现联动故障 从而提高了整个分布式系统的弹性 为什么要用熔断器? 在分布式系统中 可能有几十个服务项目依赖 比如A服务的某些功能需要调用B服务 当A服务调用B服务的时候 B服务由于某些原因
阅读全文
摘要:什么是Feign? Feign是一个http请求调用的轻量级框架 可以使用Java接口注解的方式调用Http请求 为什么要用Feign? Feign采用了声明式API 接口的风格 客户端调用过程变得简单 案例 新建工程(继承父工程) 导入依赖 <dependencies> <dependency>
阅读全文
摘要:什么是Ribbon? Ribbon 是Netflix 公司开源的一个负载均衡的组件 将负载均衡逻辑封装在客户端中 并且运行在客户端的进程里 Ribbon 作为服务消费者的负载均衡器有两种使用方式 一种是和RestTemplate 相结合 另一种是和Feign 相结合 Feign 已经默认集成了Rib
阅读全文
摘要:为什么要搭建高可用集群? 在实际开发中 随着业务的复杂程度 服务也会越来越多 一个项目可能有几十或者几百个实例 这些实例都交给Eureka注册中心进行管理 此时Eureka承受了非常高的负载 由于注册中心在 微服务架构中非常重要 所以要对注册中心进行高可用集群 一旦其中一个注册中心挂掉以后 其它的注
阅读全文
摘要:什么是Eureka? Eureka是一个用于服务注册和发现组件 Eureka分为Eureka Client和Eureka Server 为什么选择Eureka? 首先Eureka完全开源 在功能和性能上都非常稳定 Eureka是SpringCloud首选组件 与SpringCloud其它组件无缝对接
阅读全文
摘要:在实际开发中有多个不同的开发环境 例如: 开发环境 测试环境 生产环境等 Spring Boot 支持程序启动时在配置文件applicaition.yml 中指定环挠的配宦文件 application-test.porperties -- 测试环境 application-dev.porpertie
阅读全文
摘要:获取配置文件里的值 通过@Value注解获取配置文件里的值 将配置文件里的值赋值给实体类 添加@ConfogurationProperties注解 表明该类为配置属性类 属性的前缀为my 添加@Compent 将该实体类注入到IOC容器中 在启动类上添加@EnableConfigurationPro
阅读全文
摘要:单体架构的利与弊 一般的单体架构采用(MVC)三层模型: CONTROLLER(控制层或表现层) 用于和用户交互接收用户请求 SERVICE(服务层) 用于处理业务逻辑 处理后的数据返回出去 最终通过表现层展现给用户 DAO(数据层) 用于操作数据 单体架构的好处 单体架构一般只需一台服务器就可以部
阅读全文
摘要:为什么要SQL优化? 性能低、执行时间太长、等待时间太长、SQL语句欠佳(连接查询)、索引失效、服务器参数设置不合理(缓冲、线程数) SQL的编写过程 select dinstinct ..from ..join ..on ..where ..group by ...having ..order b
阅读全文

浙公网安备 33010602011771号