自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux运行服务器

通过ssh协议远程连接Linux服务器。Ubuntu上安装ssh命令行:sudo apt install openssh-server查看进程ps -ef | grep sshroot 3422 1 0 21:04 ? 00:00:00 /usr/sbin/sshd -D (-D 指后台运行)远程控制电脑安装Shell软件XShell / SecrueCRTftp软件安装tomcatwget 指令source /etc/profile 更

2020-09-08 22:03:30 207

原创 Nginx

Nginx概念:Nginx(engine x) 是一个高性能的HTTP和反向代理web服务器。最核心功能是:高性能的静态web服务器反向代理正向代理/反向代理正向代理是客户端请求代理服务器帮忙访问某个服务器。用户是主动的反向代理是客户端访问服务器,而访问的这个服务器可能是一个代理服务器,代理服务器将按照负载均衡策略将请求发送给任意一个后台服务器。用户是没有感知的。优势高并发、高性能扩展性好可靠安装sudo apt install nginx安装后nginx的指令在u

2020-09-08 21:51:14 95

原创 JSP&Web组件Filter

JSP当浏览器访问.jsp资源时,tomcat是会把它交给JspServlet来处理的。<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name

2020-08-26 15:28:08 159

原创 Session

会话技术Cookie入门案例1(显示上次登录的时间)import javax.servlet.GenericServlet;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie

2020-08-25 17:07:41 120

原创 FileUpLoad

FileUpLoad上传方式的发展第一代:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <form action="/app/upload" method="post"> <input type="f

2020-08-22 21:19:02 219

原创 ServletRequest

ServletRequest概述servletRequest是一个接口,tomcat会自动实现这个接口并向下转型, 传递给

2020-08-22 14:06:55 500

原创 ServletResponse

ServletResponse响应报文相关API,响应体输出中文乱码问题响应报文,提供了一系列的API来帮助我们设置相应的属性。再由connector读取里面的属性值,做出响应响应行:状态码响应头:响应体:解决响应体出现的中文乱码浏览器默认使用get请求方法。@WebServlet("/response1")public class ResponseServlet extends HttpServlet { @Override protected void doGet(

2020-08-21 22:43:57 132

原创 Servlet

ServletA servlet is a java program that runs within a Web server.Servlet receive and respond to requests from Web clients.用来开发动态Web资源的技术http://tomcat.apache.org/tomcat-8.5-doc/servletapi/非IDEA编写Servlet

2020-08-20 10:21:55 134

原创 tomcat虚拟映射

Tomcat虚拟映射tomcat是一个服务器,可以响应客户端的请求。方法一server.xml 文件Host节点下添加Context节点<Context path="test" docBase="E:\wangdao\testX_Y(test就是应用,这个docBase就是所指向的应用文件夹的位置)"></Context> path就是应用名 docBase就是该应用所指定的路径在浏览器中输入 localhost:8080/test/加上想打开的文件方法二(重

2020-08-18 20:43:26 542

原创 InnoDB索引

MySQL架构Server层:连接器:和客户端(在客户端输入mysql -u $user -p $pwd)建立连接、获取权限、维持和管理连接(select @@wait_timeout 查询最长可未操作时间)查询缓存:可以看成一个hashmap,使用select时,会查看查询缓存中你是否查询过,有则直接返回,否则给解析器(查询缓存不建议开 select @@query_cache_type 查看查询缓存是否开启着 默认OFF )解析器:会做词法解析和语法分析。生成一颗解析树优化器:在执行前,会

2020-08-07 12:18:33 97

原创 MySQL语言

数据库基础定义A database is an organized collection of data,stored and accessed electronically.易混淆术语数据库系统(DBS):计算机系统引入数据库后的系统数据库管理系统(DBMS)数据库(DB)(有时指 数据库管理系统)分类关系型数据库通过二维表,存储了数据本身,还存储了数据之间的关系。非关系型数据库非关系型数据库也称为NoSQL数据库。NoSQL并非要否定关系型数据库,而是作为其的一个补充...

2020-08-05 23:11:38 202

原创 MySQL:事务

事务概念构成单一逻辑工作单元的操作集合,我们称为事务(transaction)。要么全部执行,要么由于故障全部不发生。事务的基本操作START TRANSACTION/BEGIN:开启一个事务,标记事务的起点COMMIT:提交事务,表示事务成功被执行ROLL BACKSAVEPOINTRELEASE SAVEPOINT:create database tx_db;use tx_db;create table t_account( id int primary key auto_inc

2020-08-05 23:10:56 83

原创 红黑树

2-3-4树(引出红黑树)模型在普通的二叉查找树上进行扩展,他允许有多个键(1–3个 --> 对应2-node,3-node,4-node)树保持完美平衡。(根到每个叶子结点的路径都是一样长的)特点动态 添加 和 删除 时能保持完美平衡。插入当目标结点是4-node则需要分裂。分为两种分裂方式:Bottom-up 自底向上(到目标结点,再一步一步向上分裂)Top-down 自顶向下(沿着查找路径向下寻找,遇到4-node结点就分裂4-node,确保当前的结点不是4-node,给

2020-07-30 23:27:12 152

原创 JDK5的新特性

JDK5的新特性1.泛型泛型的好处a. 提高了程序的安全性b. 将运行期遇到的问题转移到了编译期c. 省去了类型强转的麻烦设计原则:及早失败原则。a. 方便查找原因b. 节省计算机资源①泛型类定义:把泛型定义在类上面,一个类可以定义多个泛型泛型命名规则:只要满足标识符的规则就行,规范:一般用大写字母表示:T:typeE:elementK:keyV:value注意事项:泛型只能代指引用数据类型。所以集合只能存储类。public class Tool<T> {

2020-07-25 10:52:24 124

原创 Collection集合子类:Set

Set概述一个不包含重复元素的Collection。确切的讲,set不包含满足e1.equals(e2)的元素对e1和e2,并最多只包含一个null元素。Set集合有些是无序的,有些是有序的。JDK中的Set的底层都是Map支持的,Map存储的是键值对K,V。并且Map的Key是唯一的。在实现时,Set的元素就是Map的Key,以此保证Set元素的唯一。Set<String> set = new HashSet<>();set.add("hello");set.add

2020-07-24 17:27:54 277

原创 集合:Map

Map接口概述在JDK1.2之前使用的是Dictionary抽象类(字典 = 映射)。JDK1.2之后,才有了Map(映射)接口。有时Map也被称之为字典,索引。将键映射到值的对象。(我们可以根据键快速查找到关联的值)Map中键是唯一的(不包含重复的键)每个键最多只能映射一个值Map的APIMap<String, String> map = new HashMap<>();map.put("刘强东", "章泽天");map.put("文章", "马伊利");

2020-07-24 17:27:28 272

原创 Collection,Collection子接口List

Java集合类为什么需要集合类?我们需要对一组对象进行操作,同时我们又不能确定对象的个数。因此集合类提供我们使用。集合类的特点?只能存储引用类型;可以自动调整自己的大小数组与集合类都是容器,它们的比较?数组只能存储基本数据类型;不能动态增长;没有提供API供我们使用;效率较高集合类只能存储引用类型;可以动态自动调整自己的大小;有丰富的API;效率比较低。Collectioncollection层次接口中的根接口。Collection表示一组对象,这些对象也成为collection的

2020-07-20 09:02:38 213

原创 Java IO类

JavaSEIO一.概念:1.什么是I/O操作系统中,内存与外部存储设备之间交换数据,即IO。Java通过输入流和输出流完成IO功能,从而实现和外设的数据交互。2.I/O流处理JVM内存和外设之间的数据传输。Java通过流(stream)的方式完成数据传输.流模型:在外设和JVM内存之间建立一个数据传输通道(数据传输通道是在创建流对象时创建的)。让数据在通道上流动起来。二.分类:1.按I/O流的方向分类:输入流:从外设传入内存,读取数据(read)输出流:从内存输出外设,

2020-07-07 17:57:34 112

原创 Java多线程

JavaSE多线程Java命令运行一个Java程序的过程Java命令首先启动了一个JVM进程,该JVM进程先会创建一个main线程,在main线程中,运行朱磊中的main方法。JVM是多线程的,因为一直存在着一个垃圾回收器线程。多线程的实现方法一:Thread:创建一个继承Thread类的子类。重写子类的run方法创建一个Thread的子类对象对象.start()启动线程public class Demo1Name { public static void main(String

2020-07-07 17:57:18 115

原创 GC

JavaSEJava Memoery程序计数器当前线程所执行的字节码的行号指示器(每个线程都有自己的程序计数器,线程隔离)Java虚拟机栈每个方法执行都会创建一个栈帧,用于存放局部变量等信息。(每个线程都有自己的栈,线程隔离)本地方法栈同样线程私有Java堆存放对象实例,各线程共享。所以才会有数据安全问题方法区各线程共享,存放被虚拟机加载的类信息,静态变量,常量等数据。GC显式内存管理C/C++:会有内存泄漏;野指针的问题。隐式内存管理...

2020-07-07 16:18:44 77

原创 注解

JavaSE提供额外信息(用Java代码来表示不太合适)。Java提供了注释,可是注释有些不好的地方:人为约定。javac在编译时,对注释“视而不见”只有固定语法(如:// ),没有标准形式(所以无法通过代码来解析)所以有了注解,为我们的代码提供额外的信息。注解:一.综述:注解为我们的代码添加额外信息,提供了一种形式化的方法,能方便我们在代码中获得并使用这些信息。常使用的注解(Java提供的注解很少):@Override // 覆盖父类方法@Deprecated //添加了

2020-07-06 23:26:10 150

原创 反射技术

JavaSE一.类加载步骤1.加载通过一个类的全限定名来获取定义此类的二进制字节流。把数据传输到内存中(字节码文件 —javac—> 内存 从文件到内存就需要一个字节流)在内存中生成一个代表这个类的java.lang.Class对象。作为方法区这个类的各种数据访问入口。2.连接(绝大部分时间)验证:确保被加载类的正确性(why编译器已经通过了,还要再检查一次呢? 因为有些熟悉字节码文件的人会自己编写字节码文件,跳过编译器的检查,为了避免这一部分人的误操作;还有一个文件直接改为 .

2020-07-06 00:08:45 92

原创 Java网络编程

JavaSE网络编程一.网络编程三要素:IPPort传输层协议1.作用应用层:根据业务逻辑产生数据;根据业务逻辑接收数据。下面的层(在Java中使用Socket类对象(不同的传输层协议,对应不同的Socket类)来完成):底层的进程之间数据的传输(字节数据)。通信的每一端目的地址:IP地址(主机)+端口号(进程 1024—65535)传输层协议:规定数据传输的方式:UDP,TCPUDP:传输 数据报包(包含目标地址 ip+port)TCP:建立连接,用流来传输数据。大量

2020-07-04 20:59:15 145

原创 Leetcode:RemoveDuplicatesFromSortedArray

删除排序数组中的重复项传递引用变量是传递地址,会改变实参。package leetcode.editor.cn;//给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 //// 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 //// //// 示例 1: //// 给定数组 nums = [1,1,2], ////函数应该返回新的长度 2, 并且原数组 nums 的前两个元

2020-06-26 10:16:05 76

原创 File类

JavaSEFile类学习目的:操作系统中需要存储的数据都是以文件形式存在的。若想操作文件,则需要在java中描述这些文件。所以有了File类。File类的概述文件和目录路径名 的抽象表达形式。一个File类对象 可以用来表示一个文件,或者一个目录一个File类对象表示的仅仅是 操作系统中 通过路径名所表述的文件或目录抽象表达形式路径名:绝对路径绝对路径名是 完整的路径名相对路径相对路径名必须使用取自其他路径名的信息进行解释(不完整的路径)Java中的java.io包中的

2020-06-24 18:00:25 143

原创 Exception异常

JavaSE异常1.概念异常就是用来表示Java程序运行过程中的错误2.Java的处理机制引例:C语言中,异常的处理由程序员之间的默契和沟通。当一个程序员调用另一个程序员的函数时,有时会调用失败,此时会有一个约定俗称的方式,通过if-else语句来判断是否成功,但这些都依靠程序员之间的自觉。Java的基本理念把错误尽可能排除在JVM之外,通过编译器达到在执行之前发现错误。但无法查找出的错误还是存在,这就会有错误恢复机制(java异常处理机制)异常处理机制——异常发现和异常处理(一致性的错

2020-06-23 23:02:08 239

原创 Leetcode:ValidParentheses

括号匹配class Solution {public: bool isValid(string s) { if(s.empty()) return true; stack<char> stc; for( char c : s ) { if( c == ')' || c == ']' ||...

2020-06-23 10:38:49 116

原创 Object,String,StringBuffer,Date,Math

JavaSE一.Object类所有Java中所有类的直接或者间接父类。只有无参构造方法。所以我们定义的类中,才都有无参构造类。1.getClass():本质:在类加载的时候,JVM会为这个类生成一个Class对象,方便我们使用者获得这个类的信息。这个Class对象可以类比于这个类,类和Class对象是一一对应的关系。通过面向对象的语法,访问Class对象我们可以获得类定义的相关信息。Class对象所对应的Class类是抽取了什么共性而组成的呢?因为Class类都能:(共性)可以定义构造

2020-06-22 21:43:56 100

原创 Leetcode:LongestCommonPrefix

查找最小字符串前缀方法一class Solution {public: string longestCommonPrefix(vector<string>& strs) { if(strs.size() == 0 ) //length()是C遗留的只有string才有,size()是所有STL容器共有的COMMENT MEMBER ...

2020-06-22 10:46:57 106

原创 Leetcode:RomanToInteger

罗马数字转整数方法一:class Solution {public: int romanToInt(string s) { int result = 0; int lastIndex = s.length() - 1; for(int i = 0; i <= lastIndex; i++ ) { ...

2020-06-20 10:46:00 86

原创 抽象类,接口,内部类

JavaSE一.抽象类:1.概念:被abstract修饰的类或存在抽象方法的类。abstract class 类名{ //抽象类}public abstract void method(){} //抽象方法注:有抽象方法的类是抽象类;抽象类不一定有抽象方法。2.特点:抽象类不能直接实例化,必须通过非抽象的子类来进行实例化。非抽象的子类必须实现父类所有的抽象方法。抽象类的子类可以是具体类也可以是抽象类。3.组成:成员变量:同普通类构造函数:同普通类

2020-06-19 14:32:59 141

原创 leetcode:PalindromeNumber

回文问题bool isPalindrome( int x ){ if(x < 0 || ( x % 10 == 0 && x != 0 )) return false; int y = 0; while( x > y ) { y = y * 10 + x % 10; x /= 10; } return x==y || x == y /10;...

2020-06-19 10:56:37 103

原创 leetcode:TwoSum

两数之和两边哈希表vector<int> twoSum( vector<int> &ptr , int target ){ unordered_map< int,int > m; for( int i = 0; i < ptr.size(); i++ ) { m[ptr[i]] = i; } for(int i = 0; i &...

2020-06-18 10:35:49 94

原创 leetcode:ReverseInteger

颠倒整数方法一:#include<string>#include<algorithm>int reverse(int x){ string s = to_string(x); if(s[0] != '-') { std::reverse(s.begin(),s.end()); long num1 = stol(s); if(num1 > I...

2020-06-18 00:01:56 110

原创 三大特征:封装,继承,多态

Java基础面向对象三大特征一:封装1.概念:将数据和基于数据的操作封装在一起。2.好处:重点:将数据保存在内部;目的:将类使用者和类设计者分开。3.应用在代码中。在定义变量和成员方法是要秉持授予最小访问权限的原则。若成员变量被“pirvate”定义,要考虑提供对应得public get,public set方法。好处:可以修改private成员变量;完成对成员变量访问的读写分离;可以在修改值时进行检查,拒绝错误修改4.访问权限修饰符在Java中,一切事物都有访问权限,在语言层

2020-06-15 23:28:22 158

原创 类,对象,static,import

Java基础对象与类:对象:与自然界中的个体对应,需要有属性和行为。个体的属性对应对象的属性,个体的行为对应于对象的方法。类:为了不用无休止的创建相似对象,我们把对象的一些共性(共有的属性和行为)提取出来,写做一个类。不同对象属性的取值可以不同。类定义成员变量成员方法public class Demo{ //一个文件只能定义一个public类,同时类名必须与文件名相同。pubilc static void main(String[] args){ Student stu1 = n

2020-06-12 20:11:20 155

原创 传参,递归

Java基础基本类型和引用类型参数传递问题不管是基本类型的参数传递还是引用类型的参数传递,都会将实参的值拷贝一份给形参。但是基本类型和引用类型是不同的。若形式参数是基本类型,则在方法体中,修改形式参数的值并不会影响到实际参数。若形式参数是引用类型,则在方法体中,修改形式参数的值会影响到实参。递归定义:方法定义中调用方法本身的现象。思路:把一个大问题分解成小问题,当问题的规模足够小的时候,符合出口条件,我们可以直接得到小问题的解。栈内存:基本单位:栈帧局部变量(形式参数和方法中

2020-06-12 01:52:48 353

原创 方法,数组,二维数组

Java基础方法:方法的定义修饰符 返回值类型 方法名 (参数类型 参数1,参数类型 参数2,…){…(return)}方法的调用有返回值无返回值方法的重载(overload)在同一个类中,允许一个以上的同名方法。只要它的参数个数 / 参数类型不同 / 不同类型的参数顺序不同即可。方法签名:方法名 + 参数列表编译器通过方法签名的不同,区分不同的方法。为什么不包括返回值?因为在无返回值的情况下,对方法进行调用,我们并不知道它使用哪个方法。在调用方法时,如果没有匹配的签名

2020-06-10 17:56:45 238

原创 关键字,标识符,常/变量

IDEA基础知识一个Project相当于一个workplace(eclipse),创建一个他会顺便帮你创建一个module。一个module相当于一个Project(eclipse)src专门存放源代码,需要可能有些需要设置 一个Project中的module是相互独立的,创建module时需要考虑他的路径,应该是同一级的。Java语言基础关键字定义:被java赋予特殊含义的单词特点:全部小写goto和const作为保留字,可是不用标识符定义:给类,接口,方法,变量等起名字时使用的字

2020-06-10 09:35:07 196

原创 运算符,交换两值,Scanner

Java基础算术运算符‘+’:三个作用加法表示正数的正号字符串拼接:两个相加时,只要有一个是字符串,则默认为拼接。‘/’:略‘%’:略‘–’ / ‘++’:自增自减在前在后的问题。在后时:需要式子计算完成,才自增,自减b = 2;int c = b-- - 1;System.out.print(c); // 输出1a = 4;b = ( a++ ) + ( ++a ) + ( a * 10 ); System.out.print(b);//输出70赋值运算符:略

2020-06-07 22:31:13 271

空空如也

空空如也

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

TA关注的人

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