JAVA
张伟杰-Vijay
这个作者很懒,什么都没留下…
展开
-
Java 基础之反射
什么是反射 反射就是借助 Reflection API 在运行期间,获取任何类的内部结构,并可以操作这些内部结构,包括但不限于属性、方法等。 个人的理解:简单点儿说就是通常情况下,我们得先 new 一个某个类的对象,然后通过对象去设置属性值,调用方法等。而除此方式外,我们还可以通过另一种方式去实现这些操作,即借助某些特定的 API,通过这些 API 去操作属性、方法的过程,就可以简单的理解为反射。 这些 API 包括:java.lang.Class: 代表一 个类java.lang.reflec原创 2020-05-10 21:44:10 · 267 阅读 · 1 评论 -
java爬虫框架—WebMagic
什么是网络爬虫从功能上来讲,爬虫一般分为数据采集,处理,储存三个部分。爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。网络爬虫常用的技术底层实现 HttpClient + Jsoup HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、...原创 2020-02-23 22:31:10 · 1635 阅读 · 2 评论 -
容器管理与容器监控
前言本篇文章介绍4个关于容器管理和容器监控的工具,Rancher、influxDB、cAdvisor、Grafana。Rancher:一个管理容器的工具,可以发布微服务(相当于 docker 的 run 命令,只不过 Rancher 是通过可视化界面来操作),还可对容器进行扩容和缩容操作。influxDB:一款数据库,只不过当中存储的是各微服务的运行状况,比如内存等信息。cAdvisor:...原创 2020-02-13 17:30:22 · 415 阅读 · 0 评论 -
微服务容器部署与 jenkins 持续集成
Dockerfile 创建镜像什么是 DockerfileDockerfile 是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。常用命令命令作用FROM image_name:tag定义了使用哪个基础镜像启动构建流程MAINTAINER user_name声明镜像的创建者ENV key value设置环境变量 (可以写多条...原创 2020-02-11 23:05:24 · 944 阅读 · 0 评论 -
Spring Cloud Config & Spring Cloud Bus
Spring Cloud Config 简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。 在 Spring Cloud 中,有分布式配置中心组件 spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程 Git 仓库中。在 spring cloud config 组件中,分两个角色,一是 ...原创 2020-02-10 18:17:24 · 351 阅读 · 0 评论 -
Spring Cloud Zuul
为什么需要微服务网关不同的微服务一般有不同的网络地址,而外部的客户端可能需要调用多个服务的接口才能完成一个业务需求。比如一个电影购票的手机APP,可能会调用电影分类微服务,用户微服务,支付微服务等。如果客户端直接和微服务进行通信,会存在以下问题:客户端会多次请求不同地址的微服务,增加客户端的复杂性存在跨域请求,在一定场景下处理相对复杂认证复杂,每一个服务都需要独立认证难以重构,随着项目...原创 2020-02-06 22:14:01 · 176 阅读 · 1 评论 -
Spring Cloud Hystrix
首先来说一说雪崩效应。雪崩效应:在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。如下图所示:A 作为服务提供者,B 为 A 的服务消费者,C 和 D 是 B 的服务消费者。A 不可用引起了 B 的不可用,并将不可用像滚雪球一样放大到 C 和 D 时,雪崩效应就形成了。原创 2020-02-06 21:22:58 · 157 阅读 · 0 评论 -
Spring Cloud Eureka & Spring Cloud Feign
什么是Spring CloudSpring Cloud 是一系列框架的有序集合。Spring Cloud 并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过 Spring Boot 风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。Spring Cloud 和 Spring Boot 的...原创 2020-01-26 20:15:39 · 293 阅读 · 1 评论 -
微服务鉴权之JWT
常见的认证机制1. HTTP Basic Auth HTTP Basic Auth 简单点说就是每次请求 API 时都提供用户的 username 和 password,简言之,Basic Auth 是配合 RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来...原创 2020-01-19 21:48:50 · 1819 阅读 · 1 评论 -
SpringDataJPA入门及四种查询方式
SpringDataJPA 与 JPA 和 Hibernate 之间的关系在说它们之间的关系之前,先说一说 JPA 和 Hibernate。JPA 是 SUN 公司推出的一套基于 ORM 的规范,内部由一系列的接口和抽象类构成。而 Hibernate 是实现了 JPA 规范的框架,它封装了 JDBC,可以对数据库进行操作。SpringDataJPA 是 对 JPA 规范的进一步封装,它并没有实现...原创 2020-01-12 15:53:55 · 774 阅读 · 0 评论 -
FastDFS上传文件示例
FastDFS介绍1. 简介 FastDFS 是用 c 语言编写的一款开源的分布式文件系统,拥有冗余备份、负载均衡、线性扩容等机制,使用 FastDFS 可以提供文件上传、下载等服务。2. 负载均衡和冗余备份 FastDFS 中包括 Tracker server 和 Storage Server。...原创 2019-12-05 14:42:44 · 1174 阅读 · 0 评论 -
linux安装FastDFS+Nginx
安装FastDFS1. 下载 FastDFS 的安装包 下载地址:https://github.com/happyfish100/FastDFS,本次我安装的是 v5.05 版本的。2.原创 2019-12-04 19:55:52 · 638 阅读 · 0 评论 -
SpringMVC跨服务器上传文件—com.sun.jersey.api.client.UniformInterfaceException:404
SpringMVC跨服务器上传文件1. 首先要保证上传的位置存在,否则会报409错误 比如:我要上传到 uploads 文件夹下,那么就在 target 目录下,找到以项目名命名的文件夹,在里面创建一个 uploads 文件夹2. 跨服务器上传文件需要用到两个 jar 包,在 maven 中导入坐标<!--跨服务器文件上传--><dependency>...原创 2019-10-31 10:59:08 · 4011 阅读 · 9 评论 -
不加注解引起的500错误
刚开始接触mybatis,之前一点儿都没接触过,现在要写后端方法,刚开始什么都不会,好在可以照葫芦画瓢,虽然现在也不明白什么意思,但是可以写一条线了。...原创 2019-06-16 21:33:12 · 623 阅读 · 8 评论 -
后端异常:java.lang.NumberFormatException:For input string:""
还不知道怎么使用。。。原创 2019-06-09 23:18:31 · 2070 阅读 · 11 评论 -
idea如何设置自动换行
idea设置自动换行其实很简单,只需要进行一步操作就可以了。 看下图:我们只需要在相应的位置加上文件的类型就可以了,比如我们写的类都是.java文件,那么我们只需要加上 *.java就可以实现自动换行了。...原创 2019-08-04 20:31:38 · 59394 阅读 · 23 评论 -
Java—JDBC入门
一、什么是JDBC JDBC,全称:Java DataBase Connectivity,它其实就是官方定义的一套操作关系型数据库的接口,而各个数据库厂商需要去实现这套接口,也就是为我们提供 jar 包,从而执行驱动jar包里的实现类,来和数据库打交道。二、使用JDBC的步骤 1)导入驱动jar包 把驱动 jar 包复制到项目的 libs 目录下,然后右键 Add As Librar...原创 2019-08-11 21:59:14 · 324 阅读 · 2 评论 -
The server encountered an unexpected condition that prevented it from fulfilling the request.
今天遇到了一个非常低级的错误,说是找不到类,而这些类是在 jar 包中的,那说明在运行的时候这些 jar 包并没有被加载到 Tomcat 服务器里。按道理来说,Tomcat 会自动把 jar 包加载到 Tomcat 的 lib 文件夹中的,可是并没有加载进去,为什么会这样呢?具体问题如下: 原因是:我把 WEB-INF 文件夹的名字打成了 WEB-INFO,所以 Tomcat 就没有把 ...原创 2019-09-01 10:38:45 · 27574 阅读 · 5 评论 -
JDK的环境变量配置
1. 首先需要到官网下载JDK,JDK下载地址,也可以选择其他版本2. 我选择的是Java 9版本,下载下来之后安装。注意的是,Java 9版本的 jdk 中已经包含了 JRE,所以公共JRE就不需要安装了3. 接下来就是配置环境变量了然后编辑 path 这个变量,在最前面加上%JAVA_HOME%\bin;,注意分号4. 最后确定之后,环境变量就配置好了。解决每次开机都需要重新...原创 2019-06-02 21:09:54 · 139 阅读 · 1 评论