Java反射教程

什么是反射 反射是:指程序可以访问、检测和修改它本身状态或行为的一种能力 反射是一种能力,所以给的定义就是说明了它能干嘛。 我们平时用反射主要做: - 获取类型的相关信息 - 动态调用方法 - 动态构造对象 - 从程序集中获得类型。 通过反射机制实例化对象 基础实体 package com.haojishu.entity; public class User { public Integer age; private String Username; private String addr; public User() { Sy

阅读全文

spring单元测试

Spring单元测试 现在很少人写单元测试了,不知道为什么,反正我一直坚持不管多忙,我都是一行一行的写单元测试,不是为了别的主要是了解到底反悔了什么,而不是去用模拟提交去测试。 加载Maven

阅读全文

jsoup教程

jsoup 什么是Jsoup Jsoup是用于解析Html,就类似XML解析器用于XML. jsoup能用来做什么? 从URL,文件或字符串中刮取并解析HTML 查找和提取数据,使用DOM遍历或CSS选择器 操纵HTML元素,属性和文本 根据安全的白名单清理用户提交的内容,以防止XSS攻击 输出整洁的H

阅读全文

RabbitMQ安装教程

RabbitMQ对Erlang的版本有一定的要求(官方版本要求对应表) https://www.rabbitmq.com/which-erlang.html 查看Centos版本 lsb_release -a 根据版本下载对应的稳定安装包 https://www.erlang-solutions.com/resources/download.html 1、安装erlang // 安装erlang依赖 > yum install -y epel-release socat // 下载erlang rpm安装包 > wget https://packages.erlang-solutions.com/erlang/rpm/centos/7/x86_64/esl-erlang_21.3.8.11-1~centos~7_amd64.rpm // 安装 > yum install esl-erlang_21.3.8.11-1~centos~7_amd64.rpm // 验证安装是否成功 > erl -version 2、安装rabbitmq //

阅读全文

安装elasticsearch

安装elasticsearch 下载elasticsearch wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.16.tar.gz 解压缩elasticsearch tar -zxf elasticsearch-5.6.16.tar.gz 拷贝到wwwroot目录 mv elasticsearch-5.6.16/ /data/wwwroot/ 新建专用程序账户 groupadd sulwan 把用户添加到专有群组 useradd -g sulwan sulwan -p 123456 切换到新用户 su sulwan 切换到程序目录 cd /data/wwwroot/elasticsearch-5.6.16/bin/ 编写pm2运行脚本 { "name": "elas", "script": "/bin/bash", "args": [ "/data/wwwroot/elasticsearch-5.6.16/bin/elasticsearch" ], "watch": false, "ignore_watch": [ "logs" ], "error_file": "./logs/elasticsearch-err.log", "out_file": "./logs/elasticsearch-out.log", "exec_interpreter": "", "exec_mode":

阅读全文

Redis开启远程

Redis开启远程 安装教程过于简单这里不再详述 Redis开启远程 编辑redis.conf [root@localhost ~]# vi /usr/local/redis/etc/redis.conf 注解端口监听 #bind 127.0.0.1 关闭protected-mode protected-mode no 设置Redis连接密码 requirepass 123456a 重启服务 service redis-server restart

阅读全文

vmware安装配置双网卡

Vmware安装配置双网卡 此处省略了安装Centos的步骤,请自行脑补 1、编辑虚拟主机配置 2、添加网卡 3、选择网卡,点击完成 4、设置网络适配器 5、生成网卡 6、编辑虚拟网络 7、获取权限 8、设置网关 9、填写IP 10、填写网段 11、查看环境IP 12、用远程工具连接后,配置网卡静态IP 安

阅读全文

Spring 源码之获取Bean

Spring源码解读之获取Bean 上一篇文章我们搭建了源码环境,并使用了Spring方法获取了Bean,我们下边来回顾下代码 package com.pv3; import com.pv3.config.AnnotationConfig; import com.pv3.utils.TestUtil; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class Test { public static void main(String[] args) { //启动Spring AnnotationConfigApplicationContext annotationConfigApplicationContext = new AnnotationConfigApplicationContext(AnnotationConfig.class); TestUtil bean = annotationConfigApplicationContext.getBean(TestUtil.class); bean.hello(); } } Spring初始化做了什么? AnnotationConfigApplicationContext annotationConfigApplicationContext = new AnnotationConfigApplicationContext(AnnotationConfig.class); 1、AnnotationConfigA

阅读全文

Spring 源码调试环境

gradle安装教程 本地必须有JAVA环境 [root@localhost ~]# java -version java version "1.8.0_221" Java(TM) SE Runtime Environment (build 1.8.0_221-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode) 执行命令 brew install gradle 搭建Spring源码 下载Spring git clone git@github.com:spring-projects/spring-framework.git 阅读文档 import-into-idea.md 预编译Spring ./gradlew cleanIdea :spring-oxm:compileTestJava 排除模块 spring-aspects 这个不排除Idea报错 启动Spring 配置文件 package com.pv3.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @Configuration @ComponentScan("com.pv3") public class AnnotationConfig { } 编写Bean package com.pv3.utils; import org.springframework.stereotype.Component; @Component

阅读全文

自定义Ioc

SpringIoc自定义 第一种方式 ​ 在写代码的时候,我经常纳闷Spring @Autowired到底是如何实现的,我是不是自己实现一个,完后就有这篇文章 编写自定义注解 /** @author sulwan */ @Target({ ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD, ElementType.ANNOTATION_TYPE }) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface Sulwan { boolean required() default true; } @Target: @Target说明了Annotation所修饰的对象范围

阅读全文