- 博客(54)
- 收藏
- 关注

原创 nginx小面试题
谈一下你对反向代理的理解?不知道真实的服务器a.反向代理服务器介于用户于目标服务器之间b.用户以为反向代理服务器就是目标服务器c.用户无需关心真实的服务器地址,反向代理机制保护了目标服务器的信息谈一下你对正向代理的理解?知道真实的服务器典型:路由器a.代理的服务器介于用户和目标服务器之间b.用户发送请求时,明确告知代理服务器访问的真实地址是谁?c.正向代理保护了客户信息,服务器无需了解真实的访问者到底是谁.d.正向代理通常用在网络请求中(路由器.)nginx命令端口号8..
2021-09-02 23:35:53
129
原创 数据库&SQL
保存一组数据的仓库就称为数据库例如编写一个用户管理系统,我们将用户输入的信息以User对象形式表示,并序列化后保存到某个.obj的文件中,用一个目录来保存所有的用户文件,这个目录也可以称为是一个"数据库".只是对于文件的维护工作(新建文件,修改现有文件数据,删除文件数据)通过编码来实现.一套可独立运行的软件,用于维护磁盘上的数据.维护性高,性能好,可扩展性强.常见的数据库MySQLMariaDBORACLEDB2SQLServer。
2023-11-07 21:09:51
461
1
原创 java反射API
反射是java的动态机制,允许程序在[运行期间]再确定对象实例化,方法调用,属性操作等反射可以提高代码的灵活度和可扩展性,但是运行效率较慢,开销较大,避免过度使用是Java反射机制的基础每一个实例用于表示JVM中加载的一个类Class类的实例JVM加载一个类的字节码文件同时会实例化一个Class的实例用来记录加载的类的信息.那么这个Class的实例就可以反映出加载的类的相关信息(类名,包信息,构造器,方法,属性等)从而在程序运行期间供我们了解一个类的内容以便进行操作.
2023-11-01 22:27:27
184
原创 JAVA异常处理
自定义异常通常用来定义那些业务上的异常问题。异常的类名要做到见名知义需要是Exception的子类提供超类异常提供的所有种类构造器。
2023-10-29 20:46:26
129
原创 OOP面向对象编程
只有方法的定义,没有具体的实现(连{}都没有)包含抽象方法的类必须是抽象类由abstract修饰抽象类不能被实例化(new对象)抽象类是需要被继承的,派生类有两种处理方法也声明为抽象类必须重写所有抽象方法抽象类的意义封装共有的属性和行为,实现代码复用可以包含抽象方法,为所有派生类统一入口(名字统一),强制必须重写。
2023-10-25 22:07:47
192
原创 常量池(Constant Pool)和堆(Heap)
堆中的对象由JVM管理,开发人员无需手动管理堆内存的分配和释放。它包含了编译器在编译阶段生成的各种字面量和符号引用,如字符串常量、整数常量、浮点数常量、类和接口的全限定名等。常量池的数据是在编译期间确定的,并且存在于所有类的字节码文件中。需要注意的是,常量池和堆都属于Java虚拟机(JVM)中的内存区域,但它们的作用和管理方式有所不同。常量池的生命周期与类的生命周期相同,而堆中的对象的生命周期由垃圾回收器确定。常量池包含不同类型的常量,而堆存储对象实例和数组等的内存。
2023-10-11 16:38:58
260
原创 SQL老黄牛
SQL进阶事务 transaction特性ACID隔离级别事务处理约束 constaints表关联 association表的关系分为四种创建表多表联查 join笛卡尔积join多表联查案例子查询(嵌套查询)单行子查询 =多行子查询 in索引 index索引分类查看索引创建普通索引创建唯一索引创建复合索引删除索引为何索引快优点缺点事务 transaction数据库事务(Database Transaction) 是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行简单来说:事务
2022-01-06 18:31:01
637
原创 SQL拓荒牛
SQL初级基础函数lower() & upper()length()substr()concat()replace()ifnull()round & ceil & flooruuid()now() & curdate() & curtime()year() & month() & day()hour() & minute() & second()\ 转义字符条件查询distinct 去重wherelike 模糊nullbetween a
2022-01-05 20:55:29
897
原创 SQL孺子牛
基本SQL语句创建数据库create database cgb2022 default character set urf8;删除数据库drop database cgb2022;查看所有的数据库show databases;使用数据库use cgb2022;查看所有的表show tables;创建表create table tb_door(id int primary key auto_increment,door_name varchar(100),tel varchar(
2022-01-05 15:15:58
756
原创 过滤流(包装流)
过滤流(包装流)的概念与作用各种字节结点流类,它们都只具有读写字节内容的方法,以FileInputStream 与 FileOutputStream 为例,它们只能在文件中读取或者向文件中写入字节,在实际应用中我们往往需要在文件中读取或者写入各种类型的数据,就必须先将其它类型的数据转换成字节数组后写入文件,或者从文件中读取到的字节数组转换成其它数据类型,很麻烦!通过FileOutputStream 将一个浮点小数写入到文件中和将一个整数写入到文件时很困难的。这时就需要包装类DataOutputStrea
2022-01-04 17:00:58
500
原创 序列化和反序列化
序列化的意义类上增加一个Serializable,就可以解决java对象的网络传输问题。java 平台允许我们在内存中创建可复用的java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即 这些对象的生命周期不会比JVM的生命周期更长,但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取 被保存的对象。java对象序列化就能够帮助我们实现该功能。简单来说序列化是把对象的状态信息转化为可存储或传输的形式过程,也就是把对象转化为字节序列的过程称为对
2022-01-04 14:37:09
221
原创 public、private、protected和default作用域的比较
作用域与可见性当前类同一 package子类其他packagepublic能能能能private能否否否protected能能能否default能能否否public 表明该成员变量或方法对所有类或对象都是可见的,所有类或对象都可以直接访问。private 表明该成员变量或方法是私有的,只有当前类对其具有访问权限,除此之外的其他类或者对象都没有访问权限。protected 表明成员变量或方法对该类自身,与它在同一包中的其他...
2021-12-27 19:25:24
457
原创 线程安全和线程同步
线程安全线程安全线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完。其他线程才可以使用。不会出现数据不一致或者数据污染。线程不安全线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据。线程同步Synchronized(同步)使用synchronized修饰的方法或者代码块可以看成一个原子操作。同步和异步的区别同步同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执
2021-12-27 17:33:26
539
原创 java集合总结
java集合框架Collection一、ListArrayList(动态数组)Vector(动态数组)LinkedListStack二、SetHashSetMapHashMapHashtableTreeMapIteratorListIteratorEnumerationArrays 和 CollectionsCollectionCollection是一个接口,它包含了基本操作和属性。Collection 包含了List和Set俩大分支。一、ListList是一个有序的队列,其中的元素无序,存入顺序有
2021-12-27 13:42:34
278
原创 并发编程基础
并发编程基础知识一、并发编程并发编程的优点并发编程的缺点并发编程三要素(线程的安全性问题的体现)出现线程安全问题的原因 及解决办法并行和并发有什么区别什么是多线程 及多线程的优劣线程和进程区别守护线程和用户线程什么是线程死锁形成死锁的四个必要条件创建线程的四种方式二、线程安全什么是线程安全在 Java 程序中怎么保证线程的运行安全synchronized 和 Lock 有什么区别三、悲观锁和乐观锁四、AQS(AbstractQueuedSynchronizer)五、并发容器ConcurrentHashMap
2021-12-24 20:39:04
512
原创 注解快速总结
注解源自注解名注解描述SpringBoot@SpringBootApplicationSpringBoot的核心注解,主要目的是开启自动配置。它也是一个组合注解,主要组合了@SpringBootConfiguration,@EnableAutoConfiguration(核心)和@ComponentScan。可以通过@SpringBootApplication(exclude={想要关闭的自动配置的类名.class})来关闭特定的自动配置。SpringBoot@Compon...
2021-12-22 20:09:24
248
原创 Linux常用命令
Linux常用命令基本命令查看路径查看文件夹创建文件夹进入路径返回父路径查找工作目录解压压缩包删除压缩包修改名称JDK环境变量配置测试网络连接MariaDB安装安装MariaDBMariaDB启动数据库初始化操作配置Linux数据库权限刷新数据库权限Linux防火墙配置Linux防火墙策略手动关闭防火墙检查防火墙开放的端口检查端口是否开放开启防火墙移除端口关于防火墙操作的解释重启防火墙后端启动执行jar包查询进程检索java服务项检索任意服务杀死进程后台发布Nginx安装安装nginx配置安装文件nginx
2021-12-22 16:49:00
2594
原创 2108花店项目文档
花店项目参数名称参数含义说明备注username用户名不能为空password密码不能为空相应数据:参数名称参数含义说明备注status状态信息200服务器请求成功 201服务器异常msg服务器返回提示信息可为nulldata服务器返回业务数据返回秘钥tokenHome 菜单栏请求路径 /rights/get
2021-12-09 14:33:12
1068
原创 关于端口号被占用的问题
查看具体的端口号(以端口号80为例)netstat -ano | findstr “80”查看进程号对应的进程名称(以进程号15656为例)tasklist | findstr “15656”结束进程(以进程号15656为例)taskkill -pid 15656 -f
2021-12-08 16:35:34
257
原创 关于Session和Cookie说明
业务需求说明用户的请求是一次请求,一次响应. 当响应结束时,服务器返回的数据 也会销毁. 问题: 如果销毁了token 则认为用户没有登录.需要重复登录.如何解决该问题: 应该持久化token信息SessionSession:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还
2021-12-08 10:21:28
74
原创 SpringMVC的工作流程
SpringMVC的过程简单描述客户端发送请求;前端控制器 DispatcherServlet 接受客户端请求;找到处理器映射HandlerMapper解析请求对应的Handler;HandlerAdapter会根据Handler来调用真正的处理器来处理请求,并处理响应的业务逻辑;处理器返回一个模型视图ModelAndView;视图解析器进行解析;返回一个视图对象;前端控制器DispatcherServlet 渲染数据(Model);将得到视图对象返回给用户;SpringMVC更具体的描
2021-12-03 18:28:13
336
原创 Vue的理解
Vue一个轻量级的mvvm框架,双向绑定,数据动态更新;是一个基于JavaScript的渐进式框架,其核心思想是数据驱动、组件化的前端开发;原生HTML页面是通过js操作的是dom,而vue.js操作的是数据;和传统前端开发的关注点 完全不同, 传统方式关注的是都想document结构的API,而Vue关注的是数据;MVVM传统js操作的是页面,如html+css+js,页面和页面里的数据混杂在一起;Vue采用了最新的MVVM框架,MVVM框架实现了页面和数据的分离,代码结构更加清晰,责任更
2021-12-03 17:28:45
215
原创 Spring容器
Spring框架的理解spring是一个容器框架,可以配置各种bean。并且维护bean与bean之间的关系,java中任何对象都可以看成bean。spring作为容器框架,它可以接管web层、业务层、dao层、持久层的各个组件,他可以配置各种bean,并且维护各个bean之间的关系。Spring有俩个重要概念,IOC(控制反转)和DI(依赖注入),这两个是同一个概念。IOC:控制反转就是把创建对象(bean),和维护对象(bean)的权利从程序中转移到Spring的容器。DI:依赖注入,对
2021-12-03 11:44:04
261
原创 MyBatis的配置
MyBatis配置说明config.xmlMybatis的核心配置文件顺序常用的配置标签MyBatis加载Mapper映射文件mapper.xml常用标签标签: resultMap标签: foreach 循环遍历集合动态SQL语句条件分支config.xml<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-conf
2021-10-30 11:17:57
77
原创 VM10:7288 crbug/1173575, non-JS module files deprecated.
前端后端交时,注意后端端口号VM10:7288 crbug/1173575, non-JS module files deprecated.网址再对,八成端口号错了
2021-10-23 16:17:24
4105
原创 vue技术
npm 概念npm(node package manager):nodejs的包管理器,用于node插件管理(包括安装、卸载、管理依赖等)中文官网: https://www.npmjs.cn/英文官网: https://docs.npmjs.com/about-npmwebpack 概念Webpack是前端自动化构建工具,它基于nodejs实现,可以帮助我们实现资源的合并、打包、压缩、混淆的诸多功能。可以快速构建一个Vue项目,包括各类文件(assets资源、scripts脚本、images图片、
2021-10-20 09:55:42
97
原创 collection和collections的区别
collection和collections的区别1、java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。List,Set,Queue接口都继承Collection。直接实现该接口的类只有AbstractCollection类,该类也只是一个抽象类,提供了对集合类操作的一些基本实现。List和Set的具体实现类基本上
2021-10-20 09:03:36
804
原创 JSON字符串
json字符串var a = '"name":"tony"'; //json串var b = '{"name": "jack","age":"20"}'; //json对象var c = '[{"name":"rose","age":"20"},{"name":"jerry","age":"10"}]'; //json数组var d = {name:"tony",age:20} //js对象/* 练习 */console.log(a.length);console.log(
2021-10-19 20:07:54
82
原创 javaScript技术
JavaScriptjs数组js函数js数组<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>测试 js数组</title> <script> /* 方式一 */ let a = new Array(); a = new Array(1,1.6,true,'hello',null); a[98] = 0 co
2021-10-19 19:26:14
98
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人