![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
文章平均质量分 75
主要是对工作和学习中web后端知识进行总结,发表自己新的感悟
xueshanfeitian
这个作者很懒,什么都没留下…
展开
-
docker学习笔记(五)单个服务镜像部署
单个微服务 自定义 部署原创 2022-12-17 14:38:14 · 811 阅读 · 1 评论 -
代理服务器squid使用
代理在猿世界中变得非常重要,squid是一款非常高效的开源代理软件,笔者认为该代理应该是众猿皆知的,所以就和小猿一起进入代理世界。原创 2022-11-30 09:44:35 · 814 阅读 · 0 评论 -
docker 学习笔记(四) docker容器常见操作和数据迁移
docker 基本操作,docker 数据迁移原创 2022-11-14 03:03:50 · 322 阅读 · 0 评论 -
项目系统安全优化(二)OpenSSh升级
Openssh升级原创 2022-09-07 13:33:56 · 651 阅读 · 0 评论 -
Docker学习笔记(三)docker查看容器内软件详情
docker 常用命令原创 2022-08-16 13:55:49 · 3396 阅读 · 1 评论 -
gitlab安装与卸载
gitlab安装完整方法原创 2022-08-08 18:13:06 · 604 阅读 · 0 评论 -
网络文件存储系统(一)网络文件存储系统的概述
介绍了当前流行的文件系统的优缺点,说明了基本架构。原创 2022-07-04 16:45:23 · 686 阅读 · 0 评论 -
FeignClient的调用过程
前言小猿对于远程调用一直感到非常神秘,今天小猿就视图解析一下远程调用的整个过程。调用过程1、在保证服务没有错误的前提下开始远程调用,首先程序会进入ReflectiveFeign中的invoke方法,并执行invoke函数中的先决条件验证,如果说toString方法或者hashCode方法一样再或者说是统一FeignClient,就不继续往下执行。2、构建模板并开始调用远程方法并对放回结果进行解码如果第一次请求失败,那么会启动重试机制,重试默认最大次数为53、记录相关日志,并调用client原创 2022-03-20 17:01:53 · 4098 阅读 · 2 评论 -
mysql如何读取未提交的事件
mysql如何读取在调试的过程中我们如何来读取未提交数据呢?执行下面的命令就可以读取未提交数据set session transaction isolation level read uncommitted;原创 2022-02-23 21:35:09 · 732 阅读 · 0 评论 -
spring温习笔记(八)springboot 资源整合
lombok什么是lombokProject Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your原创 2021-03-21 23:46:31 · 211 阅读 · 0 评论 -
spring温习笔记(七)springboot工程基础
什么是springbootSpring Boot是一个便捷搭建 基于spring工程的脚手架;作用是帮助开发人员快速搭建大型的spring 项目。简化工程的配置,依赖管理;实现开发人员把时间都集中在业务开发上。原创 2021-03-21 17:00:49 · 227 阅读 · 5 评论 -
maven学习笔记之(五)maven模块化ssm项目建立
引言在实际开发项目的过程中,由于项目业务量比较庞大,所以我们通常会分工协作,将整个项目按照模块或者按照业务进行模块拆分,然后每个模块进行单独开发,最终惊奇整合后形成一个完整的项目,那如何进行拆分和组合呢?下面我们将进一步剖析maven的整个工程项目。maven工程的继承在面向java编程的世界中,类之间是可以相互继承的,通过继承关系,子类可以引用父类中的非私有变量,这样做的好处就是避免了大量的重复代码,同理maven工程之间也可以继承,子工程继承父工程后,就可以使用在父工程中引入的依赖,maven工程原创 2021-03-09 20:48:39 · 163 阅读 · 0 评论 -
分布式软件架构(二)RPC框架dubbo
RPC框架什么是RPCRPC全称为remote procedure call,即远程过程调用。比如两台服务器A和B,A服务器上部署一个应用,B服务器上部署一个应用,A服务器上的应用想调用B服务器上的应用提供的方法,由于两个应用不在一个内存空间,不能直接调用,所以需要通过网络来表达调用的语义和传达调用的数据。RPC并不是一个具体的技术,而是指整个网络远程调用过程。RPC是一个泛化的概念,严格来说一切远程过程调用手段都属于RPC范畴。各种开发语言都有自己的RPC框架。 Java中的RPC框架比较多,广原创 2021-03-14 01:29:49 · 281 阅读 · 2 评论 -
maven学习笔记之(四)maven 高级
maven 的依赖范围依赖范围对于编译classpath有效对于测试classpath有效对于运行时classpath有效例子compileYYYspring-coretest-Y-JunitprovidedYY-servlet-apiruntime-YYJDBC驱动systemYY-本地的,maven仓库之外的类库在项目中需要正确的使用maven 的坐标范围,值得注意的是如果不在maven中设置scope属性原创 2021-03-09 15:00:27 · 170 阅读 · 0 评论 -
mybatis前因后果(三)mybatis 多表查询
多表查询原创 2021-03-04 13:48:11 · 114 阅读 · 0 评论 -
mybatis前因后果(二)mybatis的dao层实现
引言传统mybatis dao层实现UserDao接口public interface UserDao { List<User> findAll() throws IOException;}UserDao实现public class UserDaoImpl implements UserDao { public List<User> findAll() throws IOException { InputStream resourceAs原创 2021-02-27 17:06:17 · 200 阅读 · 0 评论 -
mybatis前因后果(一)mybaitis前因
引言原始jdbc操作直接进行裸操作public class JdbcTest { public static void main(String[] args) throws ClassNotFoundException { Connection connection = null; Statement statement = null; try { Class.forName("com.mysql.jdbc.Driver"原创 2021-02-26 10:26:05 · 124 阅读 · 0 评论 -
SpringMVC 温习笔记(四)springMVC框架之SpringMVC拦截器和异常处理机制
拦截器的概念Spring MVC的拦截器类似于Servlet中的Filter,一般用于处理器进行预处理和后处理。将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(Interceptor Chain)。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。拦截器也是AOP思想的具体实现。拦截器和过滤器的区别从以下两个方面进行区分。使用范围filter是servlet规范中的一部分,任何javaWeb工程中都可使用。intercepter是SpringMVC框架自己的,只原创 2021-02-24 10:04:58 · 136 阅读 · 0 评论 -
SpringMVC 温习笔记(三)springMVC框架之文件上传
文件上传说起文件上传小猿不经意间想起文件的输入和输出流和网路编程。其实springMVC在一定程度上是集成了网络socket编程,原创 2021-02-22 12:01:17 · 103 阅读 · 0 评论 -
SpringMVC 温习笔记(二)springMVC框架
什么是springMVC原创 2021-02-08 14:35:49 · 165 阅读 · 0 评论 -
SpringMVC 温习笔记(一)服务器启动和组件解析
spring 组件扫描解析首先小猿先引入一张图片,该图片可以全面的诠释自定义组件的一个运行过程:整个过程中最为核心的思想就是tomcat服务器启动的时候可以直接通过监听器去加载spring配置文件applicationContext.xml文件,以这种方式,我们可以借助tomcat服务器加载监听器的过程,可将service层,dao层的各类bean纳入到spring容器中来进行管理,这样就使得整个启动过程变得非常完美,总之自定义监听类的本质作用是将tomcat容器初始化和spring容器初始化紧密的链原创 2021-01-30 14:11:25 · 122 阅读 · 0 评论 -
Spring 温习笔记(六)spring 声明式事务编程
引言在学习事务之前首先需要学习mysql的事务相关知识,对于事务编程不是很了解的各位大猿请参考小猿的文章mysql学习笔记(四)mysql事务复习。该文章中详细讲述了有关事务的知识,对于事务而言,有以下几种隔离级别。- ISOLATION_DEFAULT- ISOLATION_READ_UNCOMMITTED- ISOLATION_READ_COMMITTED- ISOLATION_REPEATABLE_READ- ISOLATION_SERIALIZABLE上文中几种事务的隔离级别的区别原创 2021-01-29 10:18:55 · 102 阅读 · 0 评论 -
Spring 温习笔记(五)springjdbcTemplate基本使用
什么是springjdbcTemplatespringjdbcTemplate 是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。通常我们可以理解其为操作jdbc的一个强大工具,如何使用springjdbcTemplate首先需要建立依赖库,即导入jar包坐标<dependencies> <dependency> <groupId>mysql</groupId>原创 2021-01-27 15:11:05 · 104 阅读 · 0 评论 -
Spring 温习笔记(四)spring AOP
AOP 相关概念Spring 的AOP (Aspect Oriented Programming)实现底层就是对上面的动态代理的代码进行了封装,封装后我们只需要对需要关注的部分进行代码编写,并通过配置的方式完成指定目标的方法增强。Target(目标对象):代理的目标对象Proxy (代理):一个类被 AOP 织入增强后,就产生一个结果代理类Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在spring中,这些点指的是方法,因为spring只支持方法类型的连接点Pointcut(切入原创 2021-01-27 10:36:52 · 107 阅读 · 0 评论 -
Spring 温习笔记(三)动态代理
引言上两章小猿复习的是有关springIOC的有关内容,其实在本质上来讲,什么是IOC,IOC(inverse of control)可以通俗的理解程序在运行过程中,我们将更多的实例创建权交由spring容器来管理,这种管理能较大程度上减少硬编码导致的耦合,提高代码质量。这是java编程中的核心思想之一。然而接下来问题又出现了,当我们需要修改某项功能比如代码增强,是直接对原有类进行重新编写吗?答案肯定是否定的,因为在一个项目中我们是不能轻易去改动一个类的内容,如果直接改动可能会导致跟该类有联系的类都需原创 2021-01-26 10:21:44 · 82 阅读 · 0 评论 -
Spring 温习笔记(二)Spring与注解
注解注解是大猿们在快速开发项目中必不可少的神器,spring的注解分为原始注解和新注解,数据源考虑现实世界中的mobike 和ofo,他们就可以形象的比喻成为两种不同的"自行车源",数据源实现的基本思想亦复如前,如c3p0,druid是当先最为流行的数据源。spring与数据源当在项目中使用数据源时,需要将控制数据源的权限交给spring,可通过spring来全面管理数据源。...原创 2021-01-25 11:45:14 · 119 阅读 · 0 评论 -
Spring 温习笔记(一)Spring框架的概述及基本使用方法
Spring 概述什么是SpringSpring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。提供了展现层 SpringMVC和持久层 Spring JDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架Spring 发原创 2021-01-21 13:59:48 · 242 阅读 · 0 评论 -
服务器温习笔记(五)filter&Listener
filter什么是filter生活中的过滤器: 净水器,空气净化器web中的过滤器: 当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。过滤器的作用一般用于完成通用的操作。如: 登录验证、统一编码处理、敏感字符过滤…过滤器使用定义一个类,实现Filter接口复写方法配置拦截路径(1) web.xml(2) 注解过滤器细节web.xml配置可以用注解实现,也可采用web.xml来进行配置<filter> <filter-n原创 2020-12-04 11:50:10 · 115 阅读 · 0 评论 -
服务器温习笔记(四)服务器端页面温习
JSP什么是JSPJSP(Java Server Pages): java服务器端页面可理解为: 一个特殊的页面,其中即可以定义html标签,也可以定义java代码。JSP可用于简化书写JSP原理原理图解:原创 2020-11-17 12:00:19 · 140 阅读 · 0 评论 -
服务器温习笔记(三)Tomcat和Cookie&Session
会话技术一次会话: 浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止。会话: 一次会话中包含多次请求和响应。功能:在一次会话的范围内的多次请求之间实现数据共享方式:1.客户端会话技:Cookie2. 服务器端会话技术: SessionCookieCookie是客户端会话技术,可以将将数据保存到客户端。使用步骤创建Cookie对象,绑定数据new Cookie(String name, String value)发送Cookie对象response.addC原创 2020-11-16 09:02:30 · 367 阅读 · 0 评论 -
服务器温习笔记(二)Tomcat和HttpServlet
http协议什么是http协议什么是http协议,http英文全称为hyper text transfer protocol即超文本传输协议,何为传输协议呢?传输协议是指客户端和服务器端通信时,双方发送数据的格式,http的特点:http是基于TCP/IP的高级协议。默认端口号:80。基于请求/响应模型的:一次请求对应一次响应。无状态响应:每次请求之间相互独立,不能交互数据。历史版本1.0 : 每一次请求响应都会建立新的链接1.1: 服用连接请求消息格式和响应消息格式请求消息概述原创 2020-11-10 15:03:43 · 280 阅读 · 0 评论 -
服务器温习笔记(一)Tomcat和Servlet
动态资源和静态资源静态资源所有用户访问后,得到的结果都是一样的,称为静态资源,静态资源可以直接被浏览器解析。如html, css, JavaScript动态资源每个用户访问相同的资源后,得到的结果可能不一样。称为动态资源。动态资源被访问后,需要转换成为静态资源,在返回给浏览器。如:sevlet/jsp/php,asp;web服务器软件服务器: 安装了服务器软件的计算机服务器软件: 接收用户的请求,处理请求,做出响应web服务器软件: 接收用户请求,处理请求,做出响应。web服务器软件中,原创 2020-11-03 17:50:43 · 853 阅读 · 0 评论 -
XML文件基本原理及其解析
什么是XML文件XML文件及叫Extensible Markup Language 可扩展标记语言,XML可扩展性体现在其标签都是可以自定义的。如<teacher> <student>.小背景XML和HTML是兄弟关系,XML语法非常严格,最初也被发明用来展示网页,但是对于网页脚本XML文件并没有多少竞争力,所以XML文件开始用来存储配置文件,并且改文件有很大的市场,由此可以得出XML文件的主要功能。XML文件能做什么功能配置网络文件在网络中传输xml和ht原创 2020-11-02 10:34:54 · 5169 阅读 · 0 评论 -
java 操作数据库之数据库连接池
核辐射的会发生原创 2020-10-19 17:48:42 · 298 阅读 · 0 评论 -
java 操作数据库之JDBC基础知识温习
什么是JDBC?JDBC是(java database connection)原创 2020-10-16 17:46:09 · 166 阅读 · 0 评论 -
注解复习
注解注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。注解是计算机能够读懂的注释,注释是能够让程序员能够更便捷的读懂程序。注解的作用①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】②代码分析:通过代码里标识的注解对代码进行分析【使用反射】③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Over原创 2020-10-09 16:40:44 · 121 阅读 · 0 评论 -
java程序的运行过程及反射
引言世间万事万物都各有其 “基”,树之基在于根,楼之基在于架,为人之要在于德,为政之要在于民,其实在某种程度上来讲,“基”和“要”可以称为是同根并同枝,他们表示的是相同的意思,那我们不仅要思考,java的“基”和“要”又是什么呢?其实我们可以毫不犹豫的回答这就是“反射”,下文将逐步揭开反射之秘。java程序的运行过程在来学习反射之前,首先要学习java程序运行的过程。当程序要使用某个类时,则系统会通过类的加载,类的连接,类的初始化这三个步骤来对类进行初始化。如果不出现意外情况,JVM将会连续完成原创 2020-10-09 15:31:38 · 444 阅读 · 0 评论 -
jdk新特性(二)stream流
stream流为什么需要stream流,1、Stream流的引入可以使编程更加优雅,去除冗余代码,增加代码运行效率。2、Stream流把真正的函数式编程风格引入到Java中。案例public class StreamTest { public static void main(String[] args) { ArrayList<Actor> actors = new ArrayList<>(); Actor[] act = new原创 2020-10-09 11:08:32 · 97 阅读 · 0 评论 -
jdk新特性(一)接口和lambda表达式
引言伴随着编程技术的不断发展,oracle为了编程的便捷和提升项目的可维护性,对java做了许多的升级,比如新出现的lambda表达式的引入,在接口中增加静态方法和默认方法以及提取私有方法,下文首先复习一下lambda表达式。lambda表达式为什么采用lambda表达式?Lambda表达式是为了使得接口编程更加方便,这也可以与从lambda表达式的编程思想来考虑,函数式思想则尽量忽略面向对象的复杂语法:“强调做什么,而不是以什么形式去做”,所以这个可以使java编程变得更加优雅,代码更加简洁原创 2020-10-09 11:01:33 · 155 阅读 · 0 评论 -
网络编程(一)网络编程入门
引言网络是计算机通信的基础,网络编程是学习计算机网络最佳方法,通常标准的计算机网络通信协议有UDP和TCP两种(此处不包含微计算机网络通信协议(如CAN等)),首先小猿引入几个面试常见的问题。1、网络编程三要素是什么?2、网络模型有几种?如何理解?下文将重点介绍有关UDP和TCP相关的编程。UDPUDP特点案例采用udp协议实现一收一发。udp发送端程序public class UDPSendDemo { public static void main(String[] args原创 2020-09-30 16:46:07 · 881 阅读 · 0 评论