- 博客(52)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 虚拟机VMware安装windows10x64完整教程
虚拟机VMware安装windows10x64我安装Windows虚拟机的原动力,是需要用到Oracle10g。然而很感人的是我的电脑(LX笔记本)安装总是失败,然后完整卸载又要删掉好多注册组件,特别麻烦。最终放弃了这项操作。下载 安装VMware workstation pro 12虚拟机我安装的是VMware workstation pro 12链接:https://pan.baidu...
2019-09-27 17:49:16
39720
9
原创 Druid连接池的能力介绍与使用方法
本文将介绍druid连接池的能力:监控sql调用数据(慢sql、调用量、异常堆栈)、防止sql注入和数据库密码加密。
2024-03-24 11:07:09
1152
原创 关于重构-改善既有代码的设计
计算机科学是这样一门科学,它相信所有问题都可以通过增加一个间接层来解决。–Dennis DeBcaler关于对《重构-改善既有代码的设计》这本书的简单总结这个老哥写的不错:链接补充:1.好的测试是重构的根本,因为必须得保证重构后无bug;2.重构是以很微小的步伐修改程序,如果你犯错了,很容易发现它。3.唯有写出人类容易理解的代码才是优秀的程序猿。...
2021-08-31 16:14:55
267
1
原创 Oracle基础综合案例
这是一篇基础练习题目,从0到1走一遍,有助于对Oracle的立即接与运用。前期环境准备:---------------------管理员身份登录--------------------------------------------–建立用户表空间create smallfile tablespace htloggingdatafile ‘F:\database\orcl\temp.dbf’ size 10M extentmanagement local segment space manag
2021-08-31 15:28:43
399
原创 LinkedHashMap特性与HashMap排序
HashMap:新key的加入或旧key的value的改变会刷新map中key的位置,变化的key总是存储在最前面。LinkedHashMap:有序的HashMap,key的改变不会影响key在map中的位置。如下一道DB面试题:/**@author hetao@date 2021/7/5数字去重:输入一组数字,按数字出现的次数排序,次数多的排在最前面,次数相同按出现顺序排序。使用LinkedHashMap 有序map, map排序输入123,56,123,89输出123,56,89
2021-07-19 10:17:10
777
原创 SpringBoot打包上传服务器、项目无法加载主类、附录完美可用settings文件
记录一下今天遇到的bug1.maven 打包准备阶段:pom中build需要以下配置,其中finalName 后属性值为项目打包后的名称<build> <finalName>sign</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId&...
2021-05-14 18:57:21
400
原创 nginx日志优化脚本
此脚本解决问题:将nginx日志文件access.log error.log 按日期归类,并且每天凌晨1点清理30天前的日志给公司写的东西,都放在内网啦,这里就上传图片,仅供参考:1.脚本如下:此脚本在服务器位置:/usr/local/nginx/bin/clear_log.sh//这里可能需要修改文件格式,在执行shell脚本时提示/bin/bash^M: bad interpreter: No such file or directory主要是由于shell脚本文件是dos格.
2021-05-10 09:27:55
201
原创 UML类图与顺序图
UML的简单使用(本文参考文献 《java多线程设计模式》--结城 浩 《java多线程编程实战指南》--黄文海)一、综述UML(Unified Modeling Language,统一建模语言)是软件工程领域一种标准化通用图形化建模语言,它被设计用于以可视化的方式来描述软件系统。它是站在可视化的观点来看待程序系统,将规格和重点写下来的表现形式。UML定义的图形可以分为结构型(Structural UML Diagram)和行为型(Behavioral UML Diagram)结构型UM
2020-12-19 09:21:17
5324
1
原创 企业网仿真
实验题目如下:某工厂计划建设自己的网络,希望通过这个新建的网络,提供一个安全、可靠、可扩展、高效的网络环境,使工厂内部能够方便快捷的实现网络资源共享及接入Internet等目标。公司的具体环境如下:工厂有一座办公楼、一个厂区,办公楼与厂区相距500米; 办公楼有3层,其中1层是市场部,有50个终端;2层是研发部有60个终端;3层是财务部、人力资源部、经理办公室,共有20个终端; 厂区只有一层,并且只有10个终端。(----------------------------------------
2020-09-18 22:33:16
2089
1
原创 ArrayList对象数组常用的方法
包括ArrayList数组的 增删查 集合三种的遍历方式package com.test.ObjectArray;import java.util.ArrayList;import java.util.Iterator;/*ArrayList数组:长度可以改变;对ArrayList<E>来说,<E>代表泛型;集合中所有元素都是统一类型;重写了toString()方法;常用方法:boolean add(E e):添加元素,尾插,一定会执行成功,返回值可.
2020-06-26 23:54:30
924
原创 字符串转换问题
1.一道招银2020提前批笔试算法题,大意为:从键盘输入一组字符串,将其中的数字转化为大写字母,其余不变。要求当不写其它算法时,该过程可逆;要求:先写出算法实现思想5分,再编写代码5分import java.util.Scanner;/** * 从键盘输入一组字符串,将其中的数字转化为大写字母,其余不变。要求当不写其它算法时,该过程可逆; */public class Char_TransTo { public static void main(String[] arg
2020-06-25 23:18:34
338
1
原创 线性探测哈希表
5.给定一个关键字序列(13,4,18,20,32,15,9,24),哈希表长度为 11,哈希函数为 H(Key)=Key%11,采用线性探测法解决冲突,画出构造的哈希表(8 分),并求出等概率查找时查找成功 的 ASL(成功) (1 分),与查找不成功的 ASL(不成功) (1 分)线性探测: H(Key)=Key%11 余数为key所在的位置,如果改位置有值,那么填入下一个位置成功的asl:每一个key填入哈希表所需要查询的次数的次数之和的平均失败的asl:每一个key与下一个空位的距离
2020-06-22 23:02:07
2224
1
原创 网站访问全过程涉及的网络协议详解
从其浏览器中输入http://www.baidu.com,直到baidu的网站首页显示在其浏览器中,请你分析在此过程中,按照TCP/IP 参考模型,从应用层到网络接口层都用到了哪些协议,每个协议所起的作用是什么?应用层:NAT网络地址转换;DNS域名解析;HTTP超文本传输协议运输层:TCP传输控制协议,TCP连接,可靠传输网络层:IP协议,数据报服务,路由选择;ARP地址解析;ICMP网际控制报文协议,查询与差错报告NAT网络地址转换:如果 DHCP 服务器为客户端提供了一..
2020-06-21 20:56:48
16699
2
原创 java面试-JAVA IO/NIO
8.JAVA IO/NIO8.1IO模型8.1.1阻塞 IO 模型最传统的一种 IO 模型,即在读写数据过程中会发生阻塞现象。当用户线程发出 IO 请求之后,内核会去查看数据是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线程交出 CPU。当数据就绪之后,内核会将数据拷贝到用户线程,并返回结果给用户线程,用户线程才解除 block 状态。典型的阻塞 IO 模型的例子为:data = socket.read();如果数据没有就绪,就会一直阻塞在 r...
2020-06-18 18:21:44
206
原创 java面试-JAVA 四种引用类型
5. JAVA 四种引用类型5.1.强引用在Java中最常见的就是强引用,把一个对象赋给一个引用变量,这个引用变量就是一个强引用。当一个对象被强引用变量引用时,它处于可达状态,它是不可能被垃圾回收机制回收的,即使该对象以后永远都不会被用到 JVM 也不会回收。因此强引用是造成 Java 内存泄漏的主要原因之一。5.2.软引用软引用需要用SoftReference类来实现,对于只有软引用的对象来说,当系统内存足够时它不会被回收,当系统内存空间不足时它会被...
2020-06-18 18:15:10
266
原创 java面试-JVM运行时内存
Java堆从GC的角度还可以细分为: 新生代( Eden 区 、 From Survivor 区 和To Survivor 区 )和老年代。1.新生代 是用来存放新生的对象。一般占据堆的1/3空间。由于频繁创建对象,所以新生代会频繁触发 MinorGC进行垃圾回收。新生代又分为 Eden区、ServivorFrom、ServivorTo三个区。1.1Eden区 Java新对象的出生地(如果新创建的对象占用内存很大,则直接分配到老 年代)。当Eden区...
2020-06-17 23:50:09
184
原创 进程和线程
根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做轻量级的进程,同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器(PC),线程之间切换的开销小。所处环境:在操作系统中能同时运行多个进程(程序);而在同一个进程(程序)中有多个线程同时执行(通过CPU调度,在每个时间片中只有一个线程执行)内存分配方面:系统在运行的时候会为每个进程分配不同的内存空间;而
2020-06-17 23:28:33
121
原创 Java面试--JVM内存区域详解
2.JVM内存区域JVM 内存区域主要分为线程私有区域【程序计数器、虚拟机栈、本地方法区】、线程共享区 域【JAVA 堆、方法区】、直接内存。线程私有数据区域生命周期与线程相同, 依赖用户线程的启动/结束 而 创建/销毁(在 Hotspot VM 内, 每个线程都与操作系统的本地线程直接映射, 因此这部分内存区域的存/否跟随本地线程的 生/死对应)。线程共享区域随虚拟机的启动/关闭而创建/销毁。 直接内存并不是JVM运行时数据区的一部分, 但也会被频繁的使用: 在JDK 1.4引入的NIO提 供了
2020-06-17 14:55:48
178
原创 java面试-queue
以下翻译来自java8的官方文档:1、LinkedBlockingQueue:基于链接节点的可选限定的blocking queue 。 这个队列排列元素FIFO(先进先出)。 队列的头部是队列中最长的元素。 队列的尾部是队列中最短时间的元素。 新元素插入队列的尾部,队列检索操作获取队列头部的元素。 链接队列通常具有比基于阵列的队列更高的吞吐量,但在大多数并发应用程序中的可预测性能较低。blocking queue说明:不接受null元素;可能是容量有限的;实现被设计为主要用于生产者 - 消费者队列;不支
2020-06-17 00:18:32
235
原创 Linux虚拟机VMware网卡没有eth0+设置虚拟机静态IP
ifconfig 查看所有网卡 并没有看到eth0 但是有ens33如图 所以把ens33改成eth01.编辑网卡的配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33 将里面的NAME和DEVICE项修改为eth0 输入 i 进入编辑模式, 编辑后 Esc 输入 :wq! 保存并退出2.重命名网卡配置文件ifcfg-ens33为ifcfg-eth0进入文件夹 cd /etc/sysconfig/network-scripts/输入 mv
2020-06-09 23:44:00
3187
4
原创 nginx负载均衡
预期效果:地址访问192.168.17.129/edu/a.html ,实现负载均衡效果,将请求平均转发到8080和8081端口准备工作1.两个tomcat服务器分别使用8080和8081端口,一个nginx服务器开放8080和8081端口建立个目录放置tomcat服务器,分别解压: tar -xvf分别创建如图目录,添加不同的html文件修改tomcat8081的配置文件修改如下两处,8005–8015 8080–8081然后分别进入两台tomcat服务器.
2020-06-06 13:28:29
147
原创 Nginx服务器基础
包含 nginx服务器的特性描述 和 nginx安装配置和简单访问Nginx服务器基础一、特性(基本原理)二、nginx安装配置三、访问一、特性(基本原理)正向代理:客户端配置代理服务器,通过代理服务器访问目的服务器。反向代理:客户端访问代理服务器无需配置,访问服务器时由代理服务器转发请求,客户端对代理服务器无感。负载均衡:对于客户端的大量请求,代理服务器均衡的转发请求给每个服务器。动静分离:为了加快网站的分析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度,降低原来单个服务器压
2020-06-01 22:20:22
140
原创 Redis适用的业务场景
Redis基础适用业务场景总结:本质:底层使用C语言开发注意:业务逻辑不要放到redis处理详细命令参照:这哥们写的不错hash购物车:商家id为key商品id为field参与商品数量为valuestring讲究整体性,适合读,hash讲究个性,适合更新操作List:需求:存储多个数据,并对数据进入存储空间的顺序进行区分存储结构:一个存储空间保存多个数据,并且通过数据可以体现进入顺序list类型:保存多个数据,底层使用双向链表存储结构实现规定时间内获取并移除数据业务场景:
2020-05-31 22:19:41
884
原创 redis启动文件.conf配置
创建文件:[root@bogon redis-4.0.0]# mkdir data当前文件路径:[root@bogon data]# pwd编辑redis-6379.conf文件 [root@bogon redis-4.0.0]# vim redis-6379.conf内容只留如下:其中,logfile是日志文件,dir是对应的生成文件的位置,dameonize是守护进程用6379.conf文件启动 [root@bogon redis-4.0.0]# redis-server -redis-
2020-05-31 21:58:00
1141
原创 redis持久化应用场景+解决方案
redis持久化应用场景+解决方案multi 开启事务 discard 取消事务 exec 执行事务 watch 监视(锁)某个key,当变化后,事务对该key的修改将不会执行 unwatch取消所有监控(锁)expire 加时间限制,防止死锁...
2020-05-31 21:52:06
846
原创 reids主从复制+哨兵+集群
reids主从复制+哨兵+集群主从复制哨兵集群主从复制写一段话对主从复制进行总结:主从复制分为全量复制(用rdb方式)和部分复制(用aof方式),部分复制又分为三分核心,运行ID(runid)、gr缓存区、偏移量。看老师模拟哨兵工作原理 点击这里哨兵集群内部存储设计:槽用来确定存储空间,key加密后用来确定存储位置,接收到key后最多两次查找附上B站赵老师的视频链接:https://www.bilibili.com/video/BV1CJ411m7Gc?t=22&
2020-05-31 21:41:23
147
原创 Linux vim
首先引用菜鸟的vim教程,这里都是些vim基础操作,讲解齐全,适合新手:点此进入简单使用可以参考:然后是些实用操作:普通命令模式::r +文件名 将etc/issuc 文件中的内容导入到光标所在位置 :!+ 命令 在vim模式下执行系统命令将date执行的结果导入光标所在位置:map +CTRL+V+自定义快捷键意义:CTRL+H 在行首添加邮箱地址; 类似可以自己设置。暂时写到这里,2020/5/23附上B
2020-05-23 19:44:35
166
原创 CentOs7安装使用Redis4.0.0
地址:download.redis.io/releases/redis-4.0.0.tar.gz解压:[root@bogon /]# tar -xvf redis-4.0.0.tar.gz[root@bogon redis-4.0.0]# cd redis-4.0.0/安装gcc: [root@bogon redis-4.0.0]# yum install gcc-c++清除:[root@bogon redis-4.0.0]# make distclean安装:[root@bogon redis-
2020-05-22 22:46:18
233
原创 lambda表达式
一、lambda表达式的引入lambda表达式是JDK8新增的功能,它显著的增强了Java,原因有两点:1.增加了语法元素,使Java语言的表达能力得到提升,并流线化了一些常用方法的实现方式。2.导致API库中增加了新的功能,包括利用多核环境的并行处理功能变得更加容易,以及支持数据执行管道操作的新的流API。lambda表达式的引入也催生了新的Java功能,包括默认方法和方法引用。默认方法允许...
2020-04-30 22:12:12
142
原创 网络工程系统集成模型
网络工程系统集成模型在该模型的第一步, 即用户需求分析阶段中,设计者将重点考虑用户的需求、约束和目标。因为一个好的网络设计者必须清楚用户需求,并且将这些需求转换为商业和技术目标,如可用性、可扩展性、可购买性、安全性和可管理性等。该过程包括明晰部门和用户组的结构,明确网络将向谁提供服务,并从何处获取有用信息。如果已经明确用户的需求和要达到的目标,并且用户希望对网络设计有一一个快速响应,则可...
2020-03-10 09:33:37
2185
原创 Java泛型基础(概念+实例)
在这里只讲解Java泛型基础知识以供了解Java泛型一.概念:泛型是jdk5引入的,在两个重要方面改变了Java。首先泛型增加了新的语法元素。其次,泛型改变了核心API中许多类和方法。简单来说,对于许多不同的数据类型,算法逻辑是相同的。例如,不管堆栈存储的数据类型是Integer、Object、String、还是Thread,支持堆栈的机制是相同的。使用泛型可以之定义算法一次,使...
2020-02-09 15:16:05
182
原创 图书管理数据库系统
发本文的原因:本文是一个很经典的图书管理系统设计,大学本科实验,用例图,流程图真香!包含全部设计架构和源代码 ,可直接使用。链接:https://pan.baidu.com/s/16Wda96TQ_4MWHj5cXNhZaA提取码:ug6z1 系统简介该实验设计开发一个简单的图书管理数据库系统,包括图书馆内书籍的信息、学校在校师生的信息以及师生的借阅信息。此系统用户面向图书管理员...
2020-01-29 19:22:44
130175
48
原创 SpringMVC自定义类型转换器
SpringMVC存在默认类型转换,前端发送到数据是以字符串形式,默认转换为类中自定义的类型但有时我们需要前端展示为指定样式的类型,如 默认前端日期字符串格式为:2019/11/11 而我们需要前端日期输入的格式位2019-11-11这时候就需要做一个自定义类型转换器了关键代码:spring.xml <!--配置自定义类型转换器--> <bean id="...
2019-11-01 22:31:43
276
原创 SpringMVC解决中文乱码问题
从前端返回的数据有中文会出现乱码问题,解决方法很简单**配置Spring框架提供的过滤器即可** <!--配置解决中文乱码的过滤器--><filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframewor...
2019-11-01 19:47:44
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人