- 博客(36)
- 收藏
- 关注
原创 elasticSearch从零整合springboot项目实操
对应如前面说所的,type这个字段在8.0将会被删除。ik分词器,如果想要自定义的搜索的标签可以自行加到ik分词器中。ik分词器作为一个插件,需要手动的添加到elasticSearch中的plugin中。elasticSearch 和solr的区别最大的就是 es对应的 是 json的格式。分词算法,有ik_smart 和ik_max_word ,其中ik_smart为最少切分 ,ik_max_word是最细粒度切分。对于某个字段搜索出来的结果有很多, 更具相似的设置对应的文档的权重进行排序。
2024-04-14 00:10:44
910
1
原创 spring面试八股
是基于aop的方式体现的, 当一个方法添加了@Transaction注解之后,spring会基于这个了i生成一个代理的对象,之后将这个代理的对象作为一个bean,当使用这个代理对象的方法的时候,如果有事物处理,那么会先把事物的自动提交给spring,然后去执行具体的业务逻辑,如果执行逻辑没有出现异常,那么这个逻辑就会直接提交,如果出现了任何异常情况,那么就进行回滚,用户可以控制对哪些异常进行回滚操作。ioc容器中返回的都是同一个Bean的实力。spring的Aop是如何实现的,和aspectJ的区别。
2024-04-07 21:30:36
253
原创 vue实现axios和事件Bus等父子组件的事件传递实现
路由守卫中,使用bus事件传递信息,弹出事件。vue中bus的事件线传递接收。父子组件之间的事件传递接收。
2024-04-03 11:25:09
622
原创 bgsssss
先将他进行一个扩容,然后将新的数据拷贝到新的数组中间去。StringBuilder 是 没有夹sycronnize锁的,但是StringBuffer每个都是加了锁。但是如果是在进行的对象的对比的时候。==对比的就是对象的一个地址,但是equals是比较对方具体的值。动态代理包括了 proxy代理和cglib动态代理:和aop关联。重写是指 参数和返回类型等其他的都必须和原本的方法一样。重载:原本的参数不同,返回类型也是可以和原本的方法不同。==和equals都是进行一个数据的对比的。
2024-03-24 16:13:18
801
原创 还是呀dd
不可重复读: 事物内多次读取同一个数据,在这个事物还没有结束的时候,另一个事物也访问了这个数据并对这个数据进行了修改,那么第一个事物在之后的读取这个数据的时候就出现了不一致,这种就是不可重复读。脏读: 当一个事物正在访问数据并且对其进行修改,但是还没有提交事物,这个时候另一个事物访问了这个数据,然后使用了这个数据, 但是此时数据库中还没有这个数据,被访问出来的数据就是脏数据。修改丢失:一个事物读取数据,另一个数据也访问了该数据,那么第一个事物修改了这个数据之后,另一个事物也修改了这个数据。
2024-03-22 01:01:36
404
原创 自学rabbitmq入门到精通
但是这样 jvm中开启多个线程就十分的消耗资源,然后使用线程的过程中也是十分占用内存的资源,所以这个选择再开一台服务器,代替来工作,减少单台服务器的压力。相对于发布订阅模式就是加了一个路由Key,如果说,消息的key是相同的,那么exchange就发送给对应的队列。和上面的一样,不过 使用 direct模式的交换机,可以指定路由key,也可以不指定路由key,然后创建三个队列,绑定对应的交换机,发现给交换机发送消息给队列, 3个队列同都收到了消息。headers的主题模式,带有参数的模式。
2024-03-16 13:02:33
715
原创 zookeeper Study
简单介绍一下流程 : 用户访问nignx , nignx做负载均衡,有两个服务可以选。两个服务是相同得,冗余部署(冗余:当前资源足够提供一个服务的情况下多给点资源以防突发情况。zookeeper就能够有监听功能,发现哪个服务是变化了,如果是服务2中有改动,那么会将未被改动的服务1得服务变成服务2的样子。秒杀系统中,能够保持服务中的数据一致性。一种分布式协调服务。zk都能进行操作,redis,kafka,rabbitmq,都能够用zk做协调管理服务。分布式登录系统中,登录状态存储放在zk中维护。
2024-03-09 16:39:56
672
原创 多线程详解、手撕生产者消费者模型
所以说如果继承了Thread类就不能够继承其他的类了,建议使用Runnabel进行是实现。举个列子,为什开启多线程,是同时独立执行的,会产生交替现象(但是线程开启不一定立即执行,是由cpu开启的)如果是单线程的, 那么只能我玩几秒钟,别人等我操作结束了,才能进行操作他的角色。如果是都线程就不一样了, 我和别人能够在同一个时刻操控各自的角色,一起愉快的玩原神了。线程船舰的三种方式继承Thread类,Runnable接口,Callable接口。结果可以看到,线程是单独执行的,不是依次向下依次执行的。
2024-03-06 16:19:06
571
原创 String、StringBuffer、StringBuilder的区别
String中的对象是不可变得,也可易理解为常量,线程安全,abstraicStringBuilder是StringBulder与StringBuffer得公共父类,定义了一些字符串得基本操作,如expandCapacity、append、insert、indexof等公共方法。每个对String类型进行改变得时候,都会生成一个新的String对象,然后将指针向新的String对象。操作少量得数据:使用String,单线程大量数据:StringBuilder 多线程大量数据:使用StringBuffer。
2024-03-05 18:02:10
344
原创 jvm类加载机制,双亲委派机制,juc
其次是考虑到安全因素,java核心api中定义类型不会被随意替换,假设通过网络传递一个名为java.lang.Integer的类,通过双亲委托模式传递到启动类加载器,而启动类加载器在核心Java API发现这个名字的类,发现该类已被加载,并不会重新加载网络传递的过来的java.lang.Integer,而直接返回已加载过的Integer.class,这样便可以防止核心API库被随意篡改。类的加载有类加载器王城,类加载器通常由JVM提供,JVM中由许多类加载器。lock,手动获取锁,可判断是否获取到锁。
2024-03-05 17:02:04
1881
原创 java中的hashMAP和concurrentHashMap的区别和使用场景
总的来说hashmap不是线程安全的,因为,对同一段进行读写操作可能发生错误,如果适用concurrenthashmap则是线程安全的,因为它使用了分段锁,能够在每个段都独立的加锁,不同的线程访问不同的段,提高了并发的性能。分段锁设计:concurrenthashmap内部使用分段锁的概念,将整个数据结构分成多个端,每个段都可以独立的加锁,不同的线程可以同时访问不同的段,从而提高并发性能。线程不安全:hashmap时线程不安全的,当多个线程同时对hashmap进行修改时可能会导致不一致的结果。
2024-03-05 00:12:39
621
原创 mysql八股文
如果在可重复读中,那么mvcc会备份一个快照读的数据,但是如果这时插入了数据或者删除了数据,就会出现读取到的数据多了一条或者少了一条。所有的事物依次逐个执行, 这样就只是单线程的了,没有并发,防止脏读,不可重复读以及幻读。repeatable-read(可重复读):对同一字段读取结果都是一致的,除非数据时被本身事物自己所修改,可以阻止脏读和不可重复读,但幻读仍有可能发生。read-committed(读取已提交的数据):允许读取(并发事物已经提交的)数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生。
2024-03-04 16:53:10
386
1
原创 kafka
他的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统,低延迟的实时系统、storm/spark六十处理引擎,web/nginx日志、访问日志、消息服务等等、用scala语言编写。用户活动跟踪:kafka进场用来记录web用户或者app用户的各种活动,如浏览网页、搜索和点击等活动,这些活动i你休息被各个服务器发布到kafka的topic中,然后订阅者通过订阅topic来做实时的监控分析,或者装载到hadoop、数据仓库中做离线分析和挖掘。但是却有着独特的设计。
2024-03-01 15:46:47
488
原创 一步让电脑白屏,解决白屏
打开任务管理器 ctrl+alt +del 三键一块按。运行新任务 、 输入 explorer。右键点击他,结束进程。又恢复了√√√√√√。
2024-03-01 15:43:25
412
原创 basebasesss
redis、rabbitmq,kafka,elasticSearch都有所了解么?linkedlist和arrylist的数据结构的区别?说说b树,红黑树,b+树?为什么mysql底层使用的是b+树?synchronized和 cas怎么样?有哪些锁的粒子性级别?springboot自动装配原理?说说spring中的 bean?说说hashmap的基本原理?此次是我一同学的面试经历。并发编程中的线程问题?算法的时间复杂度等等。
2024-02-26 18:14:23
411
1
原创 mybatis 概念
1.mybatis处理的${}占位符,使用的是jdbc对象是statement对象,执行sql语句的效率相对于#{}占位符更低。1.mybatis 处理#{}占位符,使用的jdbc对象的preparedStatement对象,执行sql语句的效率更高。2.使用preparedStatement对象,能够避免sql注入,是的sql语句的执行更加安全。2.${}占位符,是字符串的连接的方式,有sql注入的风险,同时存在代码安全问题。3.${}数据是原模原样的,不会改变数据类型。Mybatis中的#和$的区别?
2024-02-26 12:48:24
450
1
原创 一个基于vue-element-admin的模板细解
view是:就是app-main中的子路由的展示:一般都是index中展示主要的,然后弹窗页面啥的,特殊的有将弹窗形式改为全替换动画,,每个都有一个空的路由页面,就是父的展示,要点击子路由才会进行展示。auth.js:包括了cookie和localStorage等的操作,能够对用户的信息,侧边栏的状态,token、和权限树的进行的存储和删除。getter.js是拿到当前store中的所有的信息,包括,侧边栏的打开关闭信息。app.js:对应了侧壁那栏中的子路由和父路由的展示情况的js。
2024-01-30 13:27:30
423
1
原创 一文搞定springMVC、Spring、Mybatis的SSM极致上手
功能作用呢: 就是其他的类想要这个bean时,直接可以通过spring容器客户端.get(类在xml中设置的id标识) 简单来说就是通过反射创建了bean的对象,然后就返回了对象。通过aop实现面向切面的编程,传统的oop使用一些公用模块的耦合性太高,配置太多,使用aop就可以让公共的代码进行一次开发,多次使用。bean(id,name):因为spring容器中有很多的beans,每个bean的id是不能够重复的,不然就找不到相对应的了。对象销毁:当应用关闭的时候,销毁了容器,对象被销毁。
2023-12-23 01:28:12
1888
1
原创 springboot整合elasticSearch极速入门
总结起来都是使用client.indices方法,add就是create , get查询,删除delete.非常简单。批量的增加操作就是用bulk,十分简单,但是我没有给文档设置id,但是elasticSearch会自动生成文档的id。批量的查询:这里的查询都是使用SearchReqeust,而取代前面的getRequest。更新,update进行request请求,doc中设置相对应的文档的新field数据。批量的删除也是一样的,不过需要添加想要的文档id;关于文件的操作也是一样。
2023-12-18 15:58:18
378
原创 elasticSearch零基础极速入门(1)
这是一个数据库表:tablemysql库名table_name表名先说明正排索引: 如果是查询:那么肯定是select*from table where id= 1022这就是根据id进行查询.index(数据库名)field(字段)field(字段)document(文档)document(文档)elasticSearch就是先将这些数据都进行一个索引表的创建,直接就进行查询关键字,列如java,入门,这些词汇。
2023-12-17 21:46:25
48
1
原创 queryType店铺类型的redis缓存实现
》若有,那么将其存入redis中,再返回ok。-》若无,那么报错了呗,没数据。1. 首先是查询时看redis中有无数据。-》若有,那么直接返回ok。-》若无,那么继续到2。2.再查询数据库中有无信息。
2023-10-20 09:56:02
129
3
原创 windows中redis如何设置密码
然后输入ping,发现必须要用密码才能ping成功。然后打开redis-cli.exe,开始输入命令:config set requirepass 123456(密码)然后创建一个redis-cli.exe的快捷方式,然后打开属性,在目标后面加上redis.windows.conf,让这个密码生效。先打开redis.windows.conf,找到#requirepass boobare。1.临时密码,这个不好,需要每次使用时都进行设置。2.一般都用第二种方法,不需要每次打开时都要设置。
2023-10-07 18:35:40
1047
1
原创 8080端口被占用快速解决的办法
再打开任务管理器,一个一个找,很麻烦。出现端口被占用,很烦,很多人说要。网上流传很麻烦的方法。直接okk,简单粗暴。
2023-07-14 16:32:57
239
1
原创 springboot解决 An incompatible version [1.2.16] of the Apache Tomcat Native library is installed, whil
在springboot中@springBootApplication启动时,出现tomcat arp等报错,指定版本需要更新。将这个文件复制到C:\Windows\System32 中即可。这里选择倒数第三个,下载时可能会很慢,下载后,解压文件。在其中选择要下载的版本。
2023-07-10 23:46:32
376
1
原创 数据库如何连接打印和实现登录界面
dataSource 是输入的root,123456,url:jdbc:mysql://localhost:3320/book?new ResultBeanListHandle<bean>(bean.class)表示封装为bean的对象中。List<bean> list 表示用bean类型的list集合接受。(注意的是,此时数据库的数据名必须和bean中的属性名称是一致的,否则打印不出数据)复习一下遍历集合的方法:for(Bean bean:list){解释:用sql表示查那个表,查的条件。
2023-06-29 13:52:41
146
1
原创 解决springboot项目中出现注释乱码
先点击File——》Settings——》Editor——》File Encoding——》Default encoding for properties files 在此处修改为UTF-8。说明情况原因可能为springboot注释字符编码为iso-8859-1,需要改为utf-8。记得那个√要打上,点击apply即可。此时都注释为乱码。
2023-06-24 05:57:16
365
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人