自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android学习笔记:有神奇作用的Intent

Intent在Android开发中起了非常大的作用,它是Android程序中各组件之间进行交互的很重要的一种方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据,Intent一般可以被用于启动活动、启动服务以及发送广播等场景Intent有多个构造函数的重载,这里我们先只介绍几个常见的两个Activity的跳转Intent分为显示和隐式显式Intent首先我们需要给Ac...

2019-11-14 23:05:56 155

原创 Android学习笔记:Toast+Menu

RelativeLayoutRelativeLayout又称作相对布局,和LinearLayout的排列规则不同,RelativeLayout的排列更加随意一点,它可以通过相对定位的方式让控件出现在布局任何位置,正因为此它的属性非常多。上一篇在讲LinearLayout的博客中android:id这个属性的作用还看不太出来,那么在RelativeLayout中id就会显得非常重要,因为我们经常...

2019-11-14 19:17:05 324

原创 Android学习笔记:UI组件之线性布局(LinearLayout)和相对布局(RelativeLayout)

就目前而言Android开发中最常用的两种布局就是线性布局和相对布局,所以我重点记录了线性布局和相对布局,其他也只是大致了解,下面我会在先记录概念然后实例中去分别写这两种布局因为我个人学习当中在看《第一行代码》这本书,所以可能会引用很多书中的内容,但我也会加上我个人的理解首先先解释一下布局和控件以及两者的关系一个丰富的界面是由很多个控件组成的,而为了让界面看起来尽可能地美观,我们需要布置控件...

2019-11-12 18:30:49 876

原创 JVM内存模型&&GC简析&&逃逸分析

JVM内存模型当Java程序运行的时候,虚拟机会申请这样一个内存空间,大致分布如上,栈:用来存临时变量的方法栈:存储一些C++b本地方法的空间程序计数器:是一块小空间用来记录程序当前在多少行以上三个空间是线程私有的,也就是程序隔离的方法区:JDK1.8以前称为永久代,1.8以后被称为元空间,这里就是存一些静态方法和静态常量的还有就是class loader堆:用来存对象的实例以及一...

2019-08-17 14:50:02 415

原创 事务的隔离级别&&innoDB和Mysalm的区别

事务的隔离级别从低到高:1、Read_UnCommitted---->事务未提交时,别人也能看到你修改过的数据,但是不能和你在同一时间修改数据,属于隔离级别最低的,可以通过排它锁实现2、Read_Committed---->读数据的事务开启后允许别的事务读取本行数据,但写事务开启以后提交之前任何事物不能访问本行,大多数据库的隔离级别都是这一级3、Repeat_Read ----...

2019-08-14 01:41:45 423

原创 说说负载均衡有几种

负载均衡?其实简单来说就是任务分配,将任务分配到你预想要分配的各个计算单元上去,可以提高服务效率,防止单场景失效的情况发生负载均衡有哪几种?软件负载均衡硬件负载均衡DNS负载均衡分别讲讲这几种负载均衡软件负载均衡其实软件负载均衡是属于最常见的,因为便宜又容易操作,只需要下好软件配置好文件即可,而且在高峰是容易扩容软件负载均衡顾名思义就是通过具有负载均衡功能的软件来实现负载均衡,可...

2019-08-13 14:50:26 754

原创 带你去旅行——基于Web的旅游网站

一、核心技术1、Web层1>servlet:前端控制器2>html :视图3>Filter :过滤器–>解决乱码问题4>BeanUtil:数据封装5>Jackson:json序列化工具,ajax一步提交表单,完成校验2、Service层1>Javamail:java发送邮件工具2>Redis:NoSQL内存数据库3>Jed...

2019-08-12 00:05:29 5449 1

原创 收银小能手——基于纯字符界面的收银系统

一、核心技术1、JDBC编程2、MySQL1、2技术用来做数据库的连接和基本操作3、注解技术此项目分为入口界面,管理员界面,客户界面运用此技术来使有不同管理身份的的人看到不同的入口界面以及使用不同的功能4、反射配合注解技术拿到不同的命令,使不同的界面显示出不同命令,使得使用者可以看到符合自己身份的帮助界面5、集合框架用不同的集合 存放不同的命令,来得到自己想要的命令分类6、S...

2019-08-11 12:28:57 602

原创 干货,图文并茂的TCP协议-------三次握手,四次挥手

先解释一下以下名词SYN:Synchronized Sequence 同步位 同步报文段(位码=1,代表同步位状态成功)序列号:Sequence Number —>随机产生ACK:Acknowlegement 确认位也就是确认包 ---->主机产生的序列号+1SYN_SENT:客户端已经发送完SYN数据包SYN_RCVD:服务端已经收到SYN数据包ESTABLISHE...

2019-08-03 00:52:41 146

原创 HTTP协议内容解析

HTTP协议:hypertext transfer protocol译为超文本传输协议,简称HTTP协议。HTTP请求:1、首行1>方法 GET/POST/PUT/DELETE/…2>URL —>网址/链接3>版本号 HTTP/1.1 HTTP/2.0 HTTP/3.0以上三个部分使用空格隔开2、协议头 header若干个键值对,每个键值对占一行 ...

2019-08-03 00:13:34 448

原创 Spring IOC基本原理,基本实现,Bean生命周期

Spring IOC---->控制反转,依赖注入简单地来说意思就是:控制反转:不需要去new对象,我们只需要将控制权交给Spring,让Spring帮我们来完成这个过程依赖注入:告诉Spring我们需要什么,然后自己从Spring那里拿到控制权Spring是开源框架,使用框架可以使我们减少工作量,提高工作效率并且它是分层结构,即相对应的层处理对应的业务逻辑,减少代码的耦合度。而spr...

2019-08-02 23:42:46 252

原创 session概念及其基本使用&&cookie和session的区别

session翻译成中文就是一个会话---->服务器用来辨别用户唯一的标识,底层也是用cookie来实现的cookie—>项目用来存放数据的

2019-08-01 13:05:40 176

原创 cookie概念及基本实现使用

cookie----->指某些网站存储在用户本地终端的数据通俗来说,cookie就是用来识别会话,即记录上一次的动作,其实对于大多数初级入门程序猿来说,cookie、session这种词显得太过专业,单看概念是没有办法看懂的,这样,我来举个例子,使得这两个概念更容易理解也就是当你登录一些网站的时候,你会发现登陆过一次以后,等你再次去登陆的时候,这个网站会把你的账户和密码记录下来让你可以直...

2019-07-31 21:13:22 273

原创 可重入函数

这两天刷题,偶然看到可重入函数这个名字,很惊奇自己学了这么久的java还不能完全清晰的说出这个名词的概念,所以专门做一篇笔记可重入函数基本定义:重入意味着这个函数可以重复进入,可以被并行调用,可以被中断,它只使用自身栈上的数据变量,它不依赖于任务环境,在多任务调度过程中,它是安全的,不必担心数据出错。即可重入函数需要满足以下几个条件1、执行过程可以被打断2、被打断后,在该函数执行完毕之前...

2019-07-31 15:59:48 174

原创 idea连接数据库实现简单Web项目----部门查询注册功能

下面是我用idea写的一个简单地web项目,中间使用了tomcat,maven等工具实现功能:1、输入人的名称,查询并输出此人对应的部门名称2、如果查询成功,跳转到成功页面,显示对应的部门名称3、如果查询失败,跳转到失败页面4、跳转到失败页面你可以选择重新回到登录页面,或者是去注册5、假设回到登录页面,则跳转到最开始的页面6、假设去到注册页面,则在里面输入具体信息进行注册7、注册成...

2019-07-29 16:15:43 3712

原创 关于Linux的基础命令

关于linux的基础命令1、List 罗列出当前目录和文件ls -l/ll第一个字母:d:目录第一个字母:-文件2、cd(change dir)进入到某个目录/切换到某个目录,cd 目录名特殊的目录cd…返回当前目录的上层目录3、pwd查看当前目录的完整路径(绝对路径)A>相对路径:以.开头的目录B>绝对路径:以/开头的目录4、touch+你要创建的文件...

2019-07-28 22:51:42 96

原创 leetcode&&牛客二叉树集锦

一、public boolean isSameTree(TreeNode p, TreeNode q) { if(p == null && q != null) { //q、p不同,则直接返回false return false; } if(p != null && q == null)...

2019-07-26 23:46:41 111

原创 Tomcat安装、配置

1、下载官网下载(http://tomcat.apache.org/)从download下找到最新版本的安装包,下载,,然后 解压2、配置进入安装文件目录下的conf目录中,进入以下箭头指向的文件然后到此文件的最后一行可以看到以下注释按照此格式在正文中设置你的Tomcat密码,和用户修改完毕以后,进入bin目录中的startup文件从这里启动,启动完毕以后进入浏览器打开(...

2019-07-25 13:16:04 120

原创 maven安装、配置、在idea中的使用方法

1、下载maven官网(https://maven.apache.org/)2、安装将下载下来的安装包解压,记录下来你所存储的路径3、配置环境,以下将以我的环境配置为例点击进入path设置里面,在里面添加一个路径 是你存放maven下的bin目录的路径至此环境配置完毕,那么如何验证自己是否配置成功打开命令行,输入 mvn -v命令,出现以下界面即可主要出现Mav...

2019-07-25 12:46:56 104

原创 二叉树的前中后序遍历(递归+非递归)

首先来讲一下前中后序遍历的概念不讲那么官方,其实就我个人的理解以及看大佬的视频和帖子,“前中后”这个概念就是针对根节点的;然后牢记一句废话“左边永远在右边的左边,右边永远在左边的右边”,就可以完美玩转前中后序这种基础的二叉树遍历,举个栗子~前序:根->左->右 -----------> 根节点在前,左在左,右在右中序:左->根->右 ------...

2019-07-20 15:18:43 71

原创 关于目前使用Redis(NoSQL)及MySQL 的利弊和使用原因

NoSQL的定义:NoSQL = Not Only SQL,也解释为非关系型数据库。在NoSQL数据库中数据之间是无联系的。数据的结构是松散的数据库分为关系型数据库与非关系型数据库;关系型数据库(RDBMS)的典型就是MySQL,而非关系型数据库的典型就是Redis为什么使用NoSQL:随着科技的发展,目前互联网的主要特点:1>访问量大;2>高并发;3>高可用;4...

2019-07-17 13:26:13 394

原创 java实现简单的socket聊天室

Socket又称套接字 ,套接字使用TCP提供了两台计算机之间的通信机制。客户端程序创建一个套接字,并尝试连接服务器的套接字。当连接建立时,服务器会创建一个 Socket 对象。客户端和服务器现在可以通过对 Socket 对象的写入和读取来进行通信。java.net.ServerSocket类为服务器提供了一种监听客户端并与他们建立连接的机制。首先我们先用简单的单线程来做一个实例,来对以上...

2019-07-14 11:43:36 11836 1

原创 构建乘积数组

给定一个数组A[0,1,2…n-1],请构建一个数组B[0,1,2…n-1],其中B中的元素B[i]=A[0]*A[1]*A[2] *… *A[i-1]*A[i+1] *…A[n-1],不能使用除法本题有三种解法:1、观察题目,可知B[i]=A[0]*A[1]*A[2] *… *A[i-1]*A[i+1] *…A[n-1] ------>除A[i]之外所有数的乘积则有:B[0]=...

2019-07-13 20:28:55 96

原创 String家族常见面试题

1、String在什么包,使用时需要导入吗?String输入java.lang包,是系统自己提供的,直接使用就好,不需要导入2、==和equals方法==用于比较两者的地址equals是覆写了Object类中的方法,先比较地址是否一样,如果一样返回true,如果不一样,比较类型是否一样,如果类型不一样,直接返回false,如果一致,对象不一致,需要先还原回去,然后两个数组分别把每一个元素取...

2019-07-11 18:06:29 220

原创 正则表达式

正则表达式 : regex/regexp正则表达式:一个带有一定规律的表达式,用来匹配字符串格式应用:例如密码或者身份证规定的格式正则表达式通常作用:1、格式校验 String类中的方法boolean =str. match("regex’)2、做字符串的拆分和替换 String类中的replace、spl...

2019-07-11 16:48:49 90

原创 算法——冒泡排序

冒泡排序也可以称石沉大海法,是目前最基础的集中排序算法之一,总体过程可由以下图概括那么如何用代码来实现这一趟冒泡排序呢 for(int i=0;i<j-1;i++){//一趟冒泡排序 if(array[i]>array[i+1]){ int tmp=array[i]; array...

2019-06-12 23:52:38 149

原创 算法——利用递归和链表的归并排序

归并排序的思想算法就是假设有两个有序的数组,那么我们需要做的就是将这两个有序的数组排列成一串有序的数组,重点是两个数组已经排好序的。那么首先为了方便理解我们先引入一段例子,就是看看假设一组数组中含有两组有序数组我们应该怎样排序如上图,此时一组数组中有两个有序段,那么我们首先能想到的就是将这两个有序段分开,既然是要用到栈,那么我们很容易就能想到,将这两个有序段分别用两个栈来储存 Arr...

2019-06-12 18:23:56 302

原创 算法——利用递归做堆排序

要想学会堆排序,就要知道什么是堆。堆,分为大根堆和小根堆,学过数据结构的人都知道二叉树,而堆就类似于数据结构中的完全二叉树以上就是一颗完全二叉树,怎么插入才能让他插入数据以后依旧是一棵完全二叉树呢?如下图按照顺序依次往右插入,这样依次插入,才可以保证这棵树是完全二叉树那么如何调整这棵二叉树调整成堆呢?大根堆,也就是父节点永远大于子节点,知道这个概念,就很好调整像以上这种调整,将1...

2019-06-11 22:50:18 1374

原创 HTML常用标签

一、标签类h1-h6标题标签adress标签:描述地址信 息 (字体是斜体)code标签p标签:段落标签(描述一段话,将许多不相关的内容分开)marquee:滚动标签font:字体标签b/strong:粗体标签(后者是带一种强调的语义)i/em:斜体标签(同上)Pre:原样输出上下标标签:sup/sub块标签:div行内标签:span换行标签:br 列表编辑器:ul(...

2019-06-02 00:11:48 150 1

原创 leetcode——最长字符串

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。用横向遍历 public static String lon...

2019-05-31 18:25:56 134

原创 牛客_跳台阶

一只青蛙,一次可以跳一个台阶也可以跳两个台阶,问跳到n个台阶有多少种方法第一种,找规律可得,可用斐波那契数列来解。 public static int JumpFloor1(int target){ if(target==1){ return 1; } else if(target==2){ r...

2019-05-31 15:27:57 69

原创 含静态成员的类的加载顺序

基本信息编译一个Java类文件就会产生一个.class文件,那么他们之间的关系是?编译后的类生成字节码文件存在.class文件中,如果同一个类中存在内部类,那么就会产生多个.class文件而且这些内部类的.class文件名都以外部类名+$+内部类名命名。.class文件存在bin目录下,.java 文件存在src目录中类型信息的加载是怎样的?加载方式?加载顺序?关于基础类和含main方法...

2019-05-31 15:01:25 198

原创 利用I/O进行文件的拷贝、合并、拆分

一、文件的拷贝1、提供能够访问到被拷贝文件及目标文件的准确路径2、验证所提供的被拷贝文件路径是否正确是否为空3、检查是否存在目标文件的父路径,若不存在,需重新建立4、将所提供的路径转换成File对象5、开始拷贝以下是具体代码实现: public static void copy(String srcFilePath,String destFilePath){ //检验...

2019-05-26 16:56:12 321

原创 leetcode——字符串转换整数

请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可以被忽...

2019-05-15 18:35:39 83

原创 算法——插入排序与选择排序

一、插入排序<1>、直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列思想十分简单,算法实现如下: //直接插入排序 越有序插入越快 //将每一个数与前面所有排好序的数字相比较,如果大了 直接放入即可 public static void in...

2019-05-05 21:15:33 117

原创 单链表解析一

概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。实际中链表的结构非常多样,以下情况组合起来就有8种链表结构:单向、双向带头、不带头循环、非循环下面将介绍最常用的三种第一种 无头单向非循环的单链表:无头单向非循环单链表如上图所示,存有数据以及指向下一个数据的指针,具体代码实现如下:(1).先定义单链表内每一个节点的属...

2019-04-26 17:59:47 155

原创 JAVA数组例题

1、字符串转化(压缩) “aabbccdaa” -> “a2b2c2d1a2”关于字符串的压缩,后期会学到zip包,而作为初学者我们应该能够以一些简单的语法把数据的解压敲出来import java.util.Scanner;public class TestMain{ public static String stringCompress(String str){ ...

2019-04-12 20:13:52 355

原创 JAVA数组

数组是一种数据结构,用来存储同一类型值的集合。通过整形下标可以放问数组中的每一个值。例如,如果a是一个整型数组,a[i]是一个整型数组,a[i]就是数组中下标为i的整数。1、如何声明数组变量:int [] a=new int[100];2、如何拿到一个数组元素:for (int i=0;i<100;i++){a[i]=i;//将1到99放入数组PS: 如果创建了100个元素的...

2019-04-10 22:35:38 138

转载 JAVA堆栈

JAVA前期对于堆和栈只知其名,不知其意。所以查了一些资料,综合查的笔记以及自己的理解整理出一篇笔记。其中堆栈的一些内容出自https://blog.csdn.net/jianghao233/article/details/82777789程序在运行时需要开辟一片内存空间,JAVA虚拟机(JVM)也不例外。JVM运行时开辟出的内存区域每一篇内存处理的方式都不一样,所以需要单独管理。JVM分为:...

2019-04-10 21:33:14 119

原创 JAVA猜拳游戏

在猜拳游戏的代码里,做四个类分别定义人怎样出拳出拳以及电脑怎样出拳,以及游戏如何玩和一个测试类函数,分别在person类及在computer类中写入计算每局比分的函数person类:package com.game;import java.util.Scanner; class Person { String name="666"; int score; Str...

2019-04-07 21:22:06 606

空空如也

空空如也

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

TA关注的人

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