自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 IDEA中的Structure使用

表示展示的顺序按照访问权限从public到private的格式展示;(注意:单独使用只会展示修饰符为public的属性字段,想要展示其他访问修饰符的字段需要结合下面说到的红色锁来实现);点击右侧代码中的属性和方法时,左侧的structure中对应的属性和方法跟着滚动定位;会展示实现的接口类和继承的抽象类,把所有的实现方法收缩在其中;展示所继承的方法,包括所继承的object方法;···· #红色关闭的锁表示为private;···· #绿色打开的锁代表public;会展示类中所有属性的get、set方法;

2022-10-21 19:44:25 2193 1

原创 数据结构

链式结构是不连续的,通过遍历才可以得到想要的值,查找麻烦;链式结构前一个数据元素携带后一个元素的指针,可以指向下一个元素,所以增加元素,数据只需要改变前一个数据的指针和要加进来的元素本身携带的下一个元素的指针即可。有下标,通过下标可以得到想要的值。但如果要增删,如果在中间增加一个值,增加的这个值之后的所有值的位置都得后移,所以很浪费效率。数据结构在物理储存空间上,只分为顺序结构和链式结构。

2022-09-15 09:47:37 211

原创 shiro笔记

先创建过滤器对象,过滤器对象设置了管理器对象、过滤器对象同时可以设置接口权限、跳转login页面等,配置好的管理器对象要关联realm对象。大致思路就是过滤器设置访问接口需要的访问权限,用户登录是就对该用户先进行认证,认证成功后授予访问权利,这用用户就可以访问有权访问的权利。realm对象 给当前用户授权和进行认证两个逻辑功能。认证逻辑中有两个逻辑判断用户名和验证密码两个逻辑。securityManager 安全管理器对象 安全管理器对象关联realm对象。访问某个接口时,就会先执行授权逻辑。

2022-09-11 10:34:36 367

原创 windows快捷键

windows快捷键

2022-09-09 11:01:36 101

原创 loop 循环

java中loop只是continue和break的标记。可以在多层嵌套循环中,跳出到指定层。否则只能跳出当前循环。

2022-08-26 22:56:45 344

原创 ==和equals

注:不过,我们可以根据情况自己重写该方法。一般重写都是自动生成,比较对象的成员变量值是否相同。引用类型:默认情况下,比较的是地址值。引用类型:比较的就是地址值是否相同。基本类型:比较的就是值是否相同。

2022-08-21 21:23:09 73

原创 mysql一次重构

mysql

2022-08-02 18:15:39 191

原创 百度精确搜索

百度精确搜索

2022-07-26 12:58:21 125

原创 gitgit

关于项目我们可以先在码云端创建一个新的空项目,然后获得该项目的网址。然后在本地创建一个空的文件夹:进入右键点击进入git命令行,输入$git init 建立一个git本地仓库,配置文件夹.git是隐藏文件夹,如果需要确定,在文件栏可以修改。然后如果是第一次使用git,我们需要绑定我们的用户名和邮箱$git config --global user.name ‘码云的用户名’$git config --global user.name ‘码云的邮箱’记住,这步是永久操作,即使打开其他文件夹,

2022-05-31 16:01:04 75

原创 Spring + SpringMVC + SpringBoot 注解

Spring + SpringMVC + SpringBoot 注解Spring + SpringMVC + SpringBoot创建对象的:@Controller: 放在类的上面,创建控制器对象,注入到容器中@RestController: 放在类的上面,创建控制器对象,注入到容器中。 作用:复合注解是@Controller , @ResponseBody, 使用这个注解类的,里面的控制器方法的返回值 都是数据@Service :

2022-05-15 18:25:03 124

原创 springboot_tymeleaf

依赖< dependency>< groupId>org.springframework.boot</ groupId>< artifactId>spring-boot-starter-thymeleaf</ artifactId></properties配置#配置 Thymeleaf#开发阶段设置为 false ,上线后设置为 truespring.thymeleaf.cache=false# 设置模版文件的路径,前缀

2022-05-15 18:23:20 171

原创 【无标题】springboot

SpringApplication.run(Application.class, args);run方法执行后会得到spring容器,spring容器在根据添加到类上的注解操作、执行类。两种容器配置方式 xml方式 、config方式xmlspring xml配置容器 spring中提到过ApplicationContext ctx=new ClassPathXmlApplicationContext();configjavaconfig配置容器 ApplicationContext ctx =

2022-05-14 22:35:51 263

原创 redis

Redis 是基于 key-value 结构的作为 作为 缓存使用的 无关系数据库redis是由一个全局hash表存储所有键和值得关系。值存的为对象的地址。Key 字符类型,其值(value)可以是字符串(String), 哈希(Map),列表(list), 集合(sets) 和有序集合(sorted sets)等类型也被称为数据结构服务器启动服务端 redis-server启动客户端 redis-cliRedis 客户端发送命令,同时显示 Redis 服务器的处理结果在redis 默认为

2022-05-11 01:14:05 167

原创 springMVC

springMVC 总体原理web.xml文件中声明dispatchservelet,springmvc容器,用于批量处理servlet,创建怎样处理servlet的处理器类constroller类且加注释@constroller加入spring容器。controller类指明了收到什么样的请求,该怎样处理,且返回到视图。controller处理器中的方法,相当于原生javaweb中的一个sevelet请求方法1.get方式@RequestMapping(value = "/some.do",

2022-04-27 23:41:06 220

原创 spring

ioc 就是把创建对象的工作,交给容器创建,容器一次性创建多个对象,使用对象的方法时,你只要调用即可。不需要自己创建对象。aop 就是在一段业务逻辑a中有一个逻辑b,而这个b逻辑在多个业务逻辑中出现,是个通用逻辑,我们就b逻辑称为切面,a为业务逻辑,b逻辑在代理对象方面,也可以理解为功能增强。具体做法是写一个代理类c,传入业务逻辑实例a和切面逻辑b,c代理类实例化对象后的代理,代理a,在代理类c中写有a类中有的同名方法z,在该同名方法中,调用实例对象a的同名z方法,而且调用实例b的方法。代理类c

2022-04-23 23:09:02 497

原创 mybatis

mybatis三层架构原因使用JDBC缺陷:MyBatis解决主要问题Mybatis可以完成三层架构1.界面层2.业务逻辑3.数据访问原因使用JDBC缺陷:代码比较多,开发效率低需要关注 Connection ,Statement, ResultSet 对象创建和销毁对 ResultSet 查询的结果,需要自己封装为 List业务代码和数据库的操作混在一起MyBatis解决主要问题减轻使用 JDBC 的复杂性,不用编写重复的创建 Connetion , Statement ;

2022-04-18 23:49:27 524

原创 jdbc总结

jdbc就是java语言模仿在cmd窗口中操作数据库。注册驱动两种方式Driver driver = new com.mysql.jdbc.Driver()DriverManager manage = DriverManage.resgisterDriver(driver);Class.forName(“com.mysql.jdbc.Driver”)连接对象Connection conn = DriverManager.getconnection()获取操作数据库对象Statm

2022-04-13 22:28:47 556

原创 mysql

mysql事务概念索引视图作用创建视图删除视图事务就是完成某项任务的一组操作。概念开启事务 strat transation回滚事务 rollback提交事务 commit索引索引是引入一种算法,快速找到需要找到的数据。添加索引create index 索引名 on 表名(列名)删除索引drop index 索引名 on 表名(列名)视图作用视图可以隐藏表的实现细节。保密级别较高的系统,数据库只对外提供相关的视图,java程序员只对视图对象进行CRUD。就是抽出表中的

2022-04-11 00:50:59 1026

原创 jdk动态代理

jdk动态代理动态代理作用实现代理的方式1.静态代理 :2.动态代理优点:动态代理 :动态代理的实现:1. jdk动态代理(理解): 使用java反射包中的类和接口实现动态代理的功能。1)InvocationHandler 接口(调用处理器):就一个方法invoke()2)Method类:表示方法的, 确切的说就是目标类中的方法。3)Proxy类:核心的对象,创建代理对象。实现动态代理的步骤:2. cglib动态代理(了解): cglib是第三方的工具库, 创建代理对象。动态代理使用反射机制,在内存中创

2022-04-10 14:59:42 864

原创 maven

maven作用原因依赖核心pom1.坐标:2.packaging:3. packaging 可以不写, 默认是jar4.properties:设置属性5.build : maven在进行项目的构建时, 配置信息,例如指定编译java代码使用的jdk的版本等6.依赖 dependencies 和dependency ,相当于是 java代码中import约定目录结构坐标依赖管理仓库生命周期插件测试插件1)单元测试(测试方法):用的是junit, junit是一个专门测试的框架(工具)。2)使用步骤1.加入依赖

2022-04-10 01:42:43 233

原创 javaweb

javawebtomcat执行流程,便于编程genericServletservletConfigservletcontext域 可以理解区域,范围requestgetLastModified()转发重定向注解get postsessioncookiesession与cookie两个储存机制之间数据的交流session与cookie应用tomcat执行流程,服务端的程序先启动起来。等到客户端的请求,接收到客户端的请求,解析网址,得到路径,从web.xml中找到,该路径,映射到自己起的类名,再找到真

2022-04-02 00:13:40 527

原创 java网络编程

java网络编程本质其实网络编程就是对用java语言对网络的描述。相对于编程而言,主要描述udp和tcpudp发送端与接收端各建立一个套接字datapramsocket,然后打包dataprampacket,发送端发送数据包,接收端接收。udp没有tcp那样的连接过程。tcp服务端创建serversocket套接字对象,客户端创建socket套接字对象,服务端套接字调用receive()方法创建一个与客户端socket沟通的服务端socket。此时,已连接两侧的套接字,并有了流对象,两侧数据交

2022-03-27 23:17:01 618

原创 网络传输过程

网络传输过程准备准备准备 服务器先启动,服务器上的程序,是一个进程,生成此进程的套接字。应用层客户端发出请求,如:在网页中输入URL,发送请求,此时浏览器发出的请求中有 请求消息request (resquest格式包括请求行,请求头部、空行、请求体。)生成已个套接字,此时客户端程序(浏览器)在操作系统上是一个进程,屏蔽网络层,链路层、物理层,可2以看做客户度端程序与服务器程序直接通 过套接字沟通。数据从应用层经套接字到达运输层。运输层主要负责数据的传输。运输层有两个协议,udp和tcp。

2022-03-27 22:59:56 966

原创 java进阶9-注释

java进阶9-注释作用基本内置注释@override@Deprecated@suppressWarnings定制注解限定注释范围注释保持性策略@Documented@Inherted需掌握overrideDepricated 过时作用编写文档代码分析 对被注释元素范围,时间等方面的限制。编译检查基本内置注释@override子类重写父类方法是注释@Deprecated声明不需要写注释,使用时如果写注释报错@suppressWarnings不让编译时警告,有参数。定制注解pub

2022-03-18 00:32:01 197

原创 java进阶8-反射

java进阶8-反射反射概念Class.forName("全类名")类.class对象.getClass()反射接口getConstructor(参数类型 形参)getModifier()getParamersTypes()getDeclareMethod()getDelareField()getAnnotation()使用反射创造实例总结反射概念程序可以访问、检测、修改、他本身状态和行为的能力。只知道类名,通过方法可以知道他的属性、方法、修饰符、构造方法、父类、接口、注解等相关内容、类加载后会形

2022-03-17 23:48:33 295

原创 java进阶7-多线程

java进阶7-多线程意义进程与线程进程引入线程作用java程序执行原理线程的创建继承Thread实现Runnable接口线程启动线程生命周期线程的调度与控制调度模式线程优先级Thread.sleep()Thread.yield()t.join()t. interrupt()正确停止线程线程同步一个线程一个对象守护线程设置守护线程Timer 定时器object与线程意义提高cpu的使用率进程与线程进程是一个程序,例如 qq,线程是进程任务之一进程引入线程作用提高进程使用率一个线程一个栈,共享

2022-03-15 00:47:38 297

原创 java进阶6-io流

java进阶6-io流流流体系图流的主要操作方法,缓冲流转换流打印流 printStream,对象流流把内存中的数据写到硬盘或网络等或把硬盘或网络中的数据输入到内存的过程就是流。流是抽象出来的概念,如同内存与硬盘之间的一个架起的一个管道,连通彼此,通过操作流控制数据的流入或流出,流体系图流的主要操作方法,输入内存read(),内存输出到硬盘为write( ),和flush(),共有的方法close( ),close()方法中含有flush()方法。字节流读的时候,是一个字节一个字节读的,直到

2022-03-11 01:11:05 79

原创 java进阶4-异常

java进阶4-异常异常体系结构异常分类objectthrowableerrorexceptionruntimeExceptionruntimeException 之外try{ }...catch(){...}...finaly{...}取得异常信息getMessage()printStackTrace()finaly和returnthrows 声明异常throw 自己抛出异常异常捕获顺序 catch自定义异常方法覆盖时如果要抛出异常异常体系结构当出现问题时告诉我们,并把详细消息告诉我们异常分类

2022-03-08 23:01:09 99

原创 java进阶3-常用类

java进阶3-常用类StringStringBuffer和StringBuiderStringBufferStringBuffer原理StringBuider包装类 基本类型对应常用方法自动装箱和自动拆箱日期类数字类随机数类 Random枚举类原理String唯一可以直接赋值的引用类型(不用new),由于字符串操作对内存来说,太耗性能,java把String单拎出来。String name= “wang”先在方法区中的常量池中,寻找有没有wang这个字符串,有就不在创建,把wang这个字符串的引用

2022-03-05 22:55:55 94

原创 java进阶2-数组

java进阶2-数组数组声明创建对象数组元素赋值使用初始胡语句创建数组对象二维数组遍历数组数组的工具类Arrays使用方法Arrays.sort() 对象数组排序Arrays.binarySearch() 搜索数组中的指定值,使用之前使用sort()对数组排序。Arrays.fill() 给数组元素赋值。数组数组是一组数组的集合。数组是引用类型。保存在堆中数组作为一个对象实例,数组中的元素是数组的属性,还有一个属性length。数组中的元素可以是基本类型,也可是引用类型,但必须是同一类型。

2022-03-05 20:51:55 67

原创 java进阶1-面向对象

java进阶1-面向对象final抽象类接口接口作用Objecttostringfinalize尽快回收垃圾==equals包important常用宝访问控制权限内部类实例内部类静态类局部内部类匿名内部类final不可改变被final修饰的变量是常量,必须赋值;被final修饰的方法,不能被重写;被final修饰的类,不能被继承;构造方法不能被final修饰,因为构造函数内在有不能被重写的性质,所以不能被final修饰。被final修饰的引用,不能再次被赋值,但该引用指向的对象可以被修改,就

2022-03-04 01:30:27 67

原创 java基础14-super

java基础14-supersuper意思在构造函数中使用省略super意思super 子类从父类继承来的那部分代名词,不是对象,是子类实例对象的一部分,this的一部分 super.属性= this.属性在构造函数中使用子类的构造函数中super(),就是调用父类的构造函数,本质和调用一个普通函数一样,只不过这个构造函数隐含了,父类中变量作为方法的局部变量;如没有写super(),系统自动分配,注意只是调用父类的构造函数,用于给子类添加父类的属性并初始化,此步走是在创建子类对象是进行的,调用父类构

2022-03-02 01:14:55 79

原创 java基础-13 方法覆盖和多态

java基础-13 方法覆盖和多态方法覆盖多态前提转型方法覆盖当子类继承父类中的方法,不够用时,重写;覆盖的前提是继承私有方法不能被继承,所以不能覆盖构造方法不能被继承,所以不能覆盖覆盖只与方法有关,与属性无关覆盖的方法不能比父类中的被覆盖的方法权限低,可以更高静态方法是相对于类说的,不能被覆盖覆盖的方法不能抛出更多异常多态一种行为在不同对象上具体效果不同,例如,工作,对于程序员是,编程,对于厨师是做饭。前提继承,覆盖(重写)转型向上转型,子到父,自动类型转换向下转型,父

2022-03-02 00:00:51 63

原创 java基础-12 继承

java基础-12 继承关键词 extends作用关键词 extends作用代码复用,衍生出方法覆盖和多态

2022-03-01 23:41:19 38

原创 java基础-11 this和static

java基础this和staticthisthis在构造方法中static静态变量,方法静态代码块this实例对象方面this保存在堆中,this保存了这个对象的内存地址,this代表了该对象this不能出现在静态方法(static)中this在构造方法中this()指 调用其他构造方法,调用哪个构造方法,根据参数而定,只能在第一行,目的是代码复用。static类方面用static修饰的变量,方法,用 类名+变量 或 **类名+方法名()**访问在类体中声明的变量分为实例变量和静态变量,

2022-03-01 23:26:50 146

原创 java基础10-封装

java基础10-封装封装怎样隐藏?使用private提供出口 set、get封装作用 信息隐藏,为了保证内部数据安全怎样隐藏?使用private前缀为private的变量只能在本类中访问提供出口 set、get

2022-03-01 23:02:14 52

原创 java基础-9 对象的创建和使用

java基础-9 对象的创建和使用类对象创建访问构造方法构造函数的主要职责,实例的变量也可是一个引用方法传参类类就是 属性+方法对象创建new 构造函数名();创建对象的时候,如不手动赋值,系统根据数据类型默认赋值,0或null或false访问java 不能直接操作堆内存中的数据,只能通过栈内的引用去访问对内的对象。访问对象内存,实际就是访问实例变量。访问两种方式,读取和修改。构造方法【修饰符】 方法名(【形参列表】){方法体}构造方法名与类名相同无返回类型,即使void也不行

2022-03-01 22:47:24 80

原创 java基础7-方法

java基础7-方法方法本质方法结构返回值详解return三级目录方法本质代码片段重复利用方法结构【修饰符列表】返回值 方法名(参数列表){方法体;}返回值详解必须有返回的东西,有返回值,写明返回类型,无返回值注明void;returnreturn 值;后面的值就是返回的值,如果只有return,则是结束函数,没用返回的意思,且后面不能在后面写方法中的语句;三级目录......

2022-02-26 15:05:05 68

原创 java基础6-控制语句

java基础6-控制语句选择语句ifswitch循环语句for转向语句选择语句ifif(){ }else if(){ }else{}switchswitch() { case 值; 语句; break; case 值; 语句; break; default: 语句}switch 只适用于int 当然byte,short、char转型之后也可使用循环语句forfor(初始表达式;布尔表达式;更新表达式;) {语句}其中布尔表达式最重要,决定是否循

2022-02-24 23:14:03 147

原创 java基础5-运算符

java基础-运算符优先级算术运算符++关系运算符逻辑运算符短路&&赋值运算符条件运算符字符串运算符优先级优先级不用背,不确定,就加小括号,小括号的优先级最高算术运算符跟运算有关的+、-、*、/、%、++、–、++最后结果都是一样的,值本身都加了1,但如果是赋给了其他变量,值在前,先赋值给其他变量,自己再加1;如果是值在后,就把加1的结果直接赋给其他值,同时自己加1;关系运算符与等于有关,>=、<、,<=、==、!=逻辑运算符&、|、!、

2022-02-24 00:28:42 338

空空如也

空空如也

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

TA关注的人

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