- 博客(255)
- 收藏
- 关注
原创 聊聊索引
简介MySQL是最流行的关系型数据库之一,索引是MySQL中最重要的性能优化技术之一。通过优化索引可以显著提升查询性能,降低查询的时间复杂度。本文将介绍MySQL索引的类型、不同类型的特点、最左匹配原则、回表、索引下推、在实际应用中如何建立索引以及索引优化的技巧。一、MySQL的索引类型MySQL中常用的索引类型有B-Tree索引、哈希索引、全文索引等。B-Tree索引:B-Tree是...
2023-03-26 12:19:00 261
原创 入职互联网公司工作以后的一些思考
基于业务驱动来思考所有的技术本质都是业务驱动的,在做需求的过程中需要不断思考业务的价值点在哪里,不是产品经理提出的所有需求都是合理的,我们作为研发要做好开发成本与实际效果的平衡,最终的目标是服务用户,让用户能拥有极致的体验,我们需要尽可能多的与PM来进行沟通,帮助其从技术的角度优化需求。排期与技术方案设计坚持做最有价值的事情,在承接一个需求的时候,不能轻易给排期,要心中铭记使命必达的要求...
2022-05-21 18:14:00 297
原创 SpringMVC入门系列(2)-SpringMVC处理请求流程
SpringMVC处理请求流程SpringMVC处理请求的流程发起some.do请求tomcat (web.xml--url-pattern知道。*.do的请求给DispatcherServlet)DispatcherServlet. (根据springmvc.xml配置知道some.do---doSone() )DispatcherServlet把some.do转发给MyCont...
2021-07-01 16:35:00 341
原创 SpringMVC入门系列(1)-SpringMVC简介与入门
SpringMVC简介与入门什么是SpringMvc?SpringMVC:是基于spring的一个框架,实际上就是spring的一个模块。专门是 做web开发的。理解是servlet的一个升级web开发底层是servlet,框架 是在servlet基础上面加入一些功能,让你做veb开发方便。springMVC就是一一个spring,spring是容器, Ioc能够管理对象,使用<...
2021-06-29 23:52:00 237
原创 Spring入门系列-AOP
AOP什么是AOPAOP(Aspect Oriented Programming)翻译为面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生泛型,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑之间的耦合度降低,提高程序的可重用行,同时提高开发效率...
2021-06-27 13:00:00 123
原创 Spring入门系列-动态代理
动态代理动态代理和静态代理的角色一样动态代理的代理类是动态生成的,不是我们直接写好的动态代理可以分为两大类,基于接口的动态代理,基于类的动态代理基于接口---JDK动态代理[我们在这里使用]基于类---cglibJava字节码实现:Javassist需要了解两个类 Proxy:代理,invocationHandler:调用代理程序在此之前,我们要思考class和inte...
2021-06-27 12:57:00 121
原创 Spring入门系列-静态代理模式
静态代理模式为什么要学习代理模式?因为这就是SpringAop的底层!代理模式的分类:动态代理静态代理角色分析:抽象角色:一般会使用接口和抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色只有,我们一般会做一些附属的操作客户:访问代理对象的人代理模式的好处:可以使得真实的角色的操作更加纯粹,不必要去关注一些公共的业务公共也交给了代理角色,实...
2021-06-27 12:56:00 128
原创 Spring入门系列-使用注解开发
使用注解开发在spring4之后,想要使用注解形式,必须得要引入aop的包<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins...
2021-06-27 12:52:00 71
原创 Spring入门系列-自动装配
自动装配自动装配说明自动装配是使用spring满足bean依赖的一种方法spring会在上下文中位某个bean寻找其依赖的beanSpring中bean1有三种装配机制,分别是在xml中的显式配置在Java显式配置隐式的bean发现机制和自动装配这里主要讲第三种,自动化装配BeanSpring的自动装配需要从两个角度来实现,或者说有两个操作组件扫描(componen...
2021-06-27 12:48:00 84
原创 Spring入门系列-依赖注入
依赖注入概念依赖注入依赖:指的是Bean对象的创建依赖于容器,Bean对象的依赖资源注入:指的是Bean对象所依赖的资源,由配置容器来设置和装配Set注入要求被注入的属性,必须要有set方法,set方法的方法名是由set+属性首字母大写,如果属性是boolean类型,1没有set属性,是is测试pojo类 :Address.javapackage com.dreamcold...
2021-06-27 12:45:00 70
原创 Spring入门系列-IOC理论的推导
IOC理论的推导假设我们要写一个user相关的业务UserDao接口package com.dreamcold.dao;public interface UserDao { public void getUser();}UserDaoImpl实现类package com.dreamcold.dao;public class UserDaoImpl imple...
2021-06-27 12:43:00 105
原创 Spring入门系列-创建一个Spring的helloworld项目
创建一个Spring的helloworld项目创建maven项目,导入Spring的环境依赖可以参考:https://www.cnblogs.com/nwu-edu/p/9542074.html,为了简化直接导入webmvc的依赖<dependency> <groupId>org.springframework</groupId> ...
2021-06-27 12:41:00 197
原创 Spring入门系列-Spring简介
Spring简介Spring:春天即给软件行业带来了春天!2002年,首次推出了Spring框架的雏形:interface 21框架!2004年3月24日,Spring框架是以interface21框架为基础,经过了重新的设计,并不断的丰富其内涵,于2004年3月21日发布了1.0正式版本Rod Johnson是Spring的创始人,著名作者,他是悉尼大学的博士,然而他的专业不是计算...
2021-06-27 12:38:00 153
原创 Java-IO流系列-NIO概述
NIO概述什么是NIOJava NIO (New IO,Non-Blocking 10)是从Java 1.4版本开始引入的一-套新的IO API,可以替代标准的Java I0 API。Nlo与原来的I0有同样的作用和目的,但是使用的方式完全不同,NIO 支持而向缓冲区的(IO是而向流的)、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。Java API中提供了两套NIO,...
2021-06-27 12:14:00 119
原创 Java-IO流系列-随机存取文件流
随机存取文件流简介RandomAccessFile声明在java.io包下, 但直接继承于java.lang.Object类。 并且它实现了Datalnput. DataOutput这两 个接口,也就意味着这个类既可以读也可以写。RandomAccessFile类支持“随机访问"的方式,程序可以直接跳到文件的任意地方来读、写文件支持只访间文件的部分内容可以向已存在的文件后追加...
2021-06-27 11:52:00 335
原创 Java-IO流系列-对象流
对象流对象流的介绍ObjectInputStream和OjbectOutputSteam用于存储和读取基本数据类型数据或对象的处理流。它的强大之处就是可以把Java中的对象写入到数据源中,也能把对象从数据源中还原回来。序列化:用ObjectOutputStream类保存基本类型数据或对象的机制反序列化:用ObjectInputStream类读取基本类型数据或对象的机制...
2021-06-27 11:50:00 76
原创 Java-IO流系列-标准输入输出流
标准输入输出流什么是标准输入输出流System.in和System.out分别代表了系统标准的输入和输出设备,System还包括了err这个属性默认输入设备是:键盘,输出设备是:显示器System.in的类型是InputStreamSystem.out的类型是PrintStream,其是OutputStream的子类FilterOutputStream的子类System类的set...
2021-06-27 11:32:00 458
原创 Java-IO流系列-转换流
转换流什么是转换流转换流提供了在字节流和字符流之间的转换Java API提供了两个转换流:InputStreamReader: 将InputStream转换为ReaderOutputStreamWriter:将Writer转换为OutputStream字节流中的数据都是字符时,转成字符流操作更高效。很多时候我们使用转换流来处理文件乱码问题。实现编码和解码的功能...
2021-06-27 11:29:00 118
原创 Java-IO流系列-缓冲流
缓冲流缓冲流的作用作用:缓冲流的作用主要是提高文件的读写效率提高速度的原因:内部提供了一个缓冲区实现非文件的复制注意:资源关闭,先关外面再关里面说明:关闭外层流的同时,内层流也会自动的进行关闭。关于内层流的关闭,我们可以省略步骤:创建文件创建节点流创建缓冲流读取与写入package com.dreamcold.io;import java.io.*;pu...
2021-06-27 11:27:00 139
原创 Java-IO流系列-FileInputStream和FileOutStream
FileInputStream和FileOutStream测试FileInputstream和FileOutpuStream的使用结论:对于文本文件(. txt,.java,.c..cpp),使用字符流处理对于非文本文件( . jpg ,.mp3, . mp4, .avi,.doc.ppt....), 使用字节流处理使用字节流FileInputstream处理文本文件, 可...
2021-06-27 11:26:00 222
原创 Java-IO流系列-FileReader与FileWriter
FileReader读取文件查看文件的相对路径示例一:查看文件的相对路径package com.dreamcold.io;import java.io.File;public class Demo01 { public static void main(String[] args) { File file=new File("test.txt"); ...
2021-06-27 11:24:00 187
原创 Java-IO流系列-IO流原理以及流的分类
IO流原理以及流的分类流的分类按操作数据单位不同分为:字节流(8 bit), 字符流(16 bit)按数据流的流向不同分为:输入流、输出流按流的角色的不同分为:节点流,处理流Java的IO流共涉及40多个类,实际上非常规则,都是从如下4个抽象基类派生的。由这四个类派生出来的子类名称都是以其父类名作为子类名后缀。IO流体系抽象基类节点流(或者文件流)缓冲流...
2021-06-27 11:22:00 94
原创 Java-IO流系列-File类的理解
File类的常用方法File类的理解File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)File类声明在java.io包下File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成。后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的"终点"....
2021-06-27 11:19:00 111
原创 HashMap详解
HashMap剖析Map接口Map是双列数据,存储key-value对的数据,类似于高中的y=f(x)HashMap是Map的最主要的实现类,线程不安全,效率高,可以存储null的key和value底层最初就是数组加链表实现(JDK7之前)数组+链表+红黑树(JDK8之后)Hashtable作为最古老的实现类,起源于JDK1.0,线程安全效率低LinkedHashMap:...
2021-05-12 16:09:00 314 1
原创 Java反射详解
反射Java反射机制概述什么是反射Reflection (反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象...
2021-05-12 14:43:00 172 2
原创 Java枚举详解
枚举什么是枚举类类的对象只有有限个,确定的。举例如下:星期: Monday(星期一) .... Sunday(星 期天)性别: Man(男 )、Woman(女)季节: Spring(春 ....winer(冬天)支付方式: Cash (现金)、WeChatPay (微信)、Alipay(支 付宝)、BankCard(银行卡)、CreditCard(信用卡)就职状态: Busy、 ...
2021-05-12 14:29:00 9109
原创 Java注解详解
注解注解概述从JDK5.0开始,Java增加了对元数据(MetaData)的支持,也就是Annotation(注解)Annotation其实就是代码里的特殊标记,这些标记可以在编译,类加载运行时被读取,并执行相应的处理。通过使用Annotation,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部...
2021-05-12 14:27:00 220
原创 Java异常处理详解
异常处理异常概述和异常体系结构在使用计算机语育进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式,读取文件是否存在,网络是否始终保持通畅等等。异常:在Java语言中,将程序执行中发生的不正常情况称为“异常”。(开发过程中的语法错误和逻辑错误不是异常)Java程序在执行过程中所发生的异常事件...
2021-05-12 11:25:00 461
原创 Java多线程详解
多线程程序、进程、线程进程与线程程序(program)是为完成特定任务、用某种语言编写的一-组指令的集合。即指一段静态的代码,静态对象。进程(process)是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。一生命周期如:运行中的QQ,运行中的MP3播放器程序是靜态的,进程是动态的进程作为资源分配的单位,系统在运行时会为每...
2021-05-12 11:21:00 126
原创 Java面向对象详解
面向对象Java的核心思想就是OOP初识面向对象面向过程步骤清晰简单,第一步做什么,第二步做什么.... .面对过程适合处理一些较为简单的问题面向对象物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题!对于描述复杂的事物,为了从宏观...
2021-05-12 11:17:00 198
原创 Java常用类详解
常用类字符串相关的类String类String类:代表字符串。Java 程序中的所有字符串字面值(如"abc" )都作为此类的实例实现。String是一个final类,代表不可变的字符序列。字符串是常量,用双引号引起来表示。它们的值在创建之后不能更改。String对象的字符内容是存储在一个字符数组value[]中的。String声明为final的,不可被继承String实现了S...
2021-05-12 11:14:00 227
原创 Java8新特性
Java8新特性Java8介绍关于Java8Java 8(又称为jdk 1.8)是Java语言开发的一个主要版本。Java 8是oracle公司于2014年3月发布,可以看成是自Java5以来最具革命性的版本。Java 8为Java语言、编译器、类库、开发工具与JVM带来了大量新特性。Java8的特性速度更快代码更少(增加了新的语法: Lambda表达式)强大的Stream...
2021-04-05 14:04:00 1817 1
原创 Java介绍以及环境配置
软件开发介绍软件开发软件,也就是按照一定的顺序组织的计算机数据和指令的集合。有系统软件和应用软件之分。人机交互的方式图形化界面(GUI):这种方式简单直观,使用者容易接受,容易上手操作命令行方式:需要一个控制台,输入指定的命令,让计算机完成一些操作,较为麻烦,需要激励一些命令常见DOS命令dir:列出当前目录下的文件以及文件夹md+文件夹名称:创建目录rd:删除目...
2021-04-05 13:52:00 215
原创 计算机与编程概述
概述计算机包括硬件和软件两个部分。硬件包括计算机中可以看得到的物理部分,而软件提供看不见的指令部分。这些指令控制硬件并且使得硬件完成特定的任务。程序设计创建或者开发软件,软件包含了指令,告诉计算机做什么。程序设计语言软件开发人员在程序语言工具帮助下创建软件如何学习那种程序设计语言?没有最好的语言不仅仅就学一门语言各种语言有各自的应用的场景语言之间不会容易串计算机硬件的介...
2021-04-05 13:45:00 379
原创 simpletransformers-可以简单快速搭建Transformer的库
项目地址:https://hub.fastgit.org/ThilinaRajapakse/simpletransformers创建虚拟环境,注意项目README中没写要python3.7,但是不是这个版本会报错conda create -n st python==3.7安装GPU版本的Pytorchpip3 install torch==1.6.0+cu92 torchvisi...
2021-03-21 12:06:00 1837 1
原创 JavaSE阶段的学习的思考与总结《一》(学习感悟以及资源路线)
为什么要写这篇文章?这是我第一篇真正意义上非技术摘抄性质的文章,曾经我往往会写一篇篇知识的相关笔记放到自己的博客上,但是逐渐我觉得这样意义并不是很大。首先如果仅仅从看视频做笔记的角度而言,网上其他优秀的人已经做过分享了,也有很多资源,我没必要通过复制粘贴来显示我好像在拼命学习一样。第二这样涉及版权上的问题,有抄袭之嫌。所以我决定写点儿我自己实际意义上的感受与思考,有好的资料我直接就挂出链接了来...
2021-03-14 21:36:00 438
原创 使用javaparser库来实现一个解析java项目的库
为什么要做这件事?因为我的毕业设计是与程序方法命名相关的项目,在这个过程中需要能将Java项目中方法名与方法体解析出来,所以我需要这样一个项目来解决这样一个问题。什么工具可以做这件事情?经过查阅资料,我了解到解析Java项目的工具有如下:基于Java语言javaparsereclipse.jdtantlr4Qdox基于Python语言javalangplyj...
2021-02-24 23:26:00 32951 2
原创 使用javalang做Java词法分析
安装javalangpip install javalang输入java的方法体,方法体可由如下代码提取得到:https://github.com/kangyujian/JavaMethodExactor{ Map<String, Object> params = new HashMap<String, Object>(); params...
2021-02-21 11:54:00 227
原创 Linux下启动和终止Jar包的脚本
启动Jar包nohup java -Xmx60g -jar KDM.jar > log.txt &echo $! > pid.txt终止jar包PID=$(cat pid.txt)kill -9 $PI
2021-02-18 10:50:00 127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人