- 博客(36)
- 收藏
- 关注
原创 Activiti
workflow,工作流,通过计算机对业务流程自动化执行管理。Activiti工作流引擎(一堆jar包API),业务系统访问activiti的接口,就可以方便操作流程相关的数据,这样就可以把工作流环境与业务系统环境集成在一起。BPM/BPMNBPM:Business Process Management,业务流程管理;BPMN:Business Process Model And Notation,业务流程模型和符号。业务流程图文件后缀:.bpmn工作...
2022-03-26 13:13:00 9216 2
原创 SpringBoot-ElasticSearch
修改ES依赖版本与安装的ES软件版本一致 <properties> <java.version>1.8</java.version> <!-- 修改依赖的版本与安装的elasticsearch版本一致 --> <elasticsearch.version>7.6.2</elasticsearch.version> </properties>
2021-08-06 16:43:33 167
原创 ElasticSearch
ElasticSearch基于Lucene(基于java)的分布式开源搜索引擎。开箱即用,自带分布式协调管理功能,仅支持json文件格式,更注重核心功能,高级功能多由第三方插件提供:如图形化界面需要kibanna支撑。实时查询更快(ES开发维护者较少,更新快,学习成本较高)。基本环境要求jdk1.8安装 以windows版本为例,下载解压后即可使用。默认自成集群(一个也是集群)。 修改默认配置文件:安装目录下 config/...
2021-07-29 17:27:05 159
原创 springboot任务
异步任务主配置类上添加:@EnableAsync // 开启异步任务其他方法调用@Async标注的方法,当此标注的方法阻塞时不影响调用它的方法继续向下继续续执行。@Servicepublic class TaskService { // 异步任务:当此方法在他处被调用时,不用等到此异步方法运行结束,他处方法可继续向下运行。 @Async public void async() throws InterruptedException { System.
2021-05-29 19:12:30 154
原创 springboot-rabbitmq
依赖pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <dependency> <gr
2021-05-08 22:48:06 203
原创 RabbitMQ
Message Queue消息队列,又称消息中间件,是典型的生产者和消费者模型,生产者不断向队列中生产消息,消费者不断从队列中获取消息。因为消息的生产和消费都是异步进行的,所以只需要关心消息的发送和接收,没有业务逻辑的侵入,轻松实现系统间的解耦。AMQPAdvanced Message Queue Protocol(高级消息队列协议),AMQP不是从API层面进行限定的,而是直接定义网络交换的数据格式。创建虚拟机时,虚拟机的命名必须是以“/”开头,生产者可以将消息发送给交换机,也可以
2021-03-27 18:09:43 241
原创 win10安装docker及docker安装镜像
准备文件轻量级的虚拟机、linux系统、linux客户端安装安装virtualBox好后导入虚拟机文件centos,启动虚拟机,以root/123456登录。使用linux客户端工具链接linux服务器进行命令操作:本机网络要与虚拟机网络处于同一网段,本机无线网则虚拟机选无线网卡,本机有线则虚拟机桥接有线网卡,设置好网络后重启虚拟机网络:service network restart查看linux IP地址:ip addr正式安装1.查看内核版本 <Docker 要求
2021-03-26 22:48:16 1427
原创 springboot-cache
几个概念Cahce:缓存接口,定义缓存操作。实现的有RedisCache、EhCache、ConcurrentMapCache等;CacheManager:缓存管理器,管理各种缓存组件,默认使用ConcurrentMapCacheManager;@Cacheable:主要加在方法上,能够缓存方法的返回结果(方法的结果缓存后,下一次调用该方法将不执行,直接从缓存中获取同一对象 ); value:缓存组件名,将结果放在哪个缓存中,可多个 key:缓存数据的key,默认使用方法参数...
2020-12-23 17:52:13 158
原创 springboot数据库操作
连接数据库1. 配置数据库连接参数# 数据库连接参数spring.datasource.username=iop0spring.datasource.password=iop0spring.datasource.url=jdbc:oracle:thin:@101.2.41.15:1521:ceshispring.datasource.driver-class-name=oracle.jdbc.OracleDriver# 指定使用的连接池类型spring.datasource.type=
2020-12-11 09:44:17 284
原创 springboot容器
嵌入式springboot默认使用嵌入式的tomcat,依赖spring-boot-starter-web默认引入的是tomcat的jar包。修改servlet相关配置:server.port=8888; server.xxx=...;修改tomcat位置:server.tomcat.xx=xxx嵌入式容器三大组件注册嵌入式tomcatspringboot项目没有web.xml,无法在配置文件web.xml中配置三大组件,使用配置类来代替web.xml的配置作用。1. 创建自己的
2020-12-06 15:46:06 1095
原创 springboot异常定义
在BasicErrorController.java中/*** 默认通过 /error 进入此Controller*/@Controller@RequestMapping("${server.error.path:${error.path:/error}}")public class BasicErrorController extends AbstractErrorController { private final ErrorProperties errorProperties;
2020-12-01 20:24:22 154
原创 Spring Boot——日志
前言在实际开发过程中,会使用到各种功能的框架,而每个框架的日志实现各不相同,所以在springboot中对日志的使用进行了统一。springboot版本2.3.3,日志依赖如图:由上图可知springboot定义了统一的日志抽象层是slf4j,之后要使用哪种日志框架实现日志的输出就导入改框架实现了slf4j的相关jar包即可,同时将其他日志框架jar移除。通常springboot使用的日志实现框架为logback,因为它比log4j更优秀。日志实现springboot中抽象层 slf
2020-09-11 14:42:04 331
原创 spring boot 自动配置原理
springboot自动导入原理springboot能根据场景自动导入jar包的原理。在pom.xml文件中会先导入springboot启动器父项目,其作用如图从上面的项目依赖图中可以看出,最终spring-boot-dependencies给当前spring boot项目:1. 对一些依赖管理2. 默认插件配置3. 对spring boot的依赖进行版本管理spring boot将不同场景都剥离出来,做成一个个场景启动器,需要使用哪个场景就导入哪个场景的启动器依赖。所以真正
2020-09-11 11:33:00 184
原创 ThreadLoacl
ThreadLocal线程局部变量,应用场景多线程。将公共变量复制一份到当前线程中,避免了线程之间使用同一个变量而产生线程安全问题。线程之间的变量是相互隔离的,互不影响,使线程安全运行。区别ThreadLocal与synchronized之间的区别,同样起到使线程安全的作用,两者之间的区别在实现线程安全的方式不一样。ThreadLocal:将存在线程安全隐患的变量复制一份到当前线程中。线程并发访问,一个线程一份变量。以空间换时间。synchronized:将存在安全隐患的过程让线程排队.
2020-08-29 17:40:59 154
原创 redis—几个概念
哨兵sentinal,是一个分布式系统,对主从结构中的每台服务器进行监控,出现故障时通过投票机制选出新的master,并将所有的slave连接到新的master。哨兵本身也是一台redis服务器,只是不提供数据服务。哨兵之间能互相通信,交换彼此的监测信息,通常部署奇数台,方便出投票结果。(监测替换)集群将网络中若干台计算机联通起来,统一管理,使其对外实现单机效果。作用:负载均衡,提高容灾性,分散单台服务器的存储压力。缓存预热系统启动前,提前将相关数据加载到缓存中,避免用户请求
2020-08-14 18:15:14 126
原创 redis—主从复制
主从结构主从结构类似如下:一个master对应多个slave,一个slave对应一个master。master:写数据,并将数据同步到slave中(基本无读数据操作)slave:读数据(基本无写数据操作)优点:1. 读写分离,提高服务器的读写负载能力2. 故障恢复,当master出现故障,由slave提供服务工作流程1.主从建立连接 slave连接master2. 主从数据同步 master同步数据给slave3. 主从命令传播 master反复...
2020-08-09 12:49:39 177
原创 redis—事务
事务存在的问题:当多个线程对同一个key进行操作线程A 线程B 1 set name x 2 set name y 3 get name // y 4 get name // y 线程A对name操作后,紧接着线程B对name也进行了操作,导致A获取的name值不是自己更新的值。将线程A的操作都放在一个事务中。开启事务,将事务中的命令暂存入队列,到真正执行时执行。指令:multi 事务块开始 disc...
2020-08-07 18:28:32 103
原创 redis—数据持久化
redis是内存型的nosql数据库,当出现断电等异常会导致内存数据丢失,因此内存中的redis数据存在数据安全性。为避免此情况的发生,需要将redis数据备份到磁盘中,此过程称为redis数据持久化持久化方式:rdb和aof,rdb和aof分别为两种备份方式产生的数据文件的后缀名。RDB属于全量的持久化方式(默认持久化方式),修改redis.conf#备份数据文件名称dbfilename dump_8888.rdb#备份文件存放路径dir ./data/#rdb文件格式校验
2020-08-03 22:10:14 170
原创 redis—基本数据类型
redis简介内存中的非关系型数据库(nosql),以键值对KV的形式存储数据。单线程:redis网络请求模块使用单线程来处理所有网络请求(所以无需担心线程安全问题),但redis其他工作模块照样是使用多线程。速度快:redis数据存在于内存中,读写速度快; 单线程redis可完成10万次/秒的查询; 内部采用多路复用I/O,防止I/O阻塞影响效率,I/O影响redis速度,多路复用切换时比多线程I/O切换更省时间和资源。redis...
2020-08-03 10:04:06 118
原创 rest
restResource representational state transfer:资源表述性状态转移。Resource :网络中一切皆资源;representation:表现层,数据呈现的形式,txt.、json、xml都是表现层,呈现出来是什么样的,资源的表现层一般在响应头中content-type能体现;state transfer:状态转移,通过http的动作(get,post,put,delete,patch等)使资源的状态发生改变。uri规范URI规则:一般和数据库
2020-07-31 14:34:16 173
原创 Spring+SpringMVC+Hibernate整合
SpringMVC与Spring的整合无非就是在Spring的基础上增加了SpringMVC的配置xxx-servlet.xmlHibernate与Spring的整合无非就是将通过hibernate.cfg.xml获得的SessionFactory交给SpringIOC管理Spring单与hibernate整合时:以下配置了JdbcTemplate和hibernateTempla...
2020-03-29 23:01:53 359
原创 hibernate
hibernate:是关系对象映射框架,对jdbc进行了轻量级的封装。简单说就是将表数据映射到POJO上。既然是映射,当然需要配置数据库表与实体类的映射关系,配置文件中当指定表中字段与实体属性如何对应。映射关系配置文件如下:(路径可以随便放,只需在hibernate主配置文件中指明映射文件的路径即可)<?xml version="1.0" encoding="UTF-8"?&g...
2020-03-24 21:47:10 170
原创 SpringMVC
一、SpringMMVSpringMVC是基于Spring框架之上的后端框架请求流程:客户端发起请求,请求被配置统一进入DispatcherServlet,由此servlet在HandlerMapping协助下格局请求路径将请求分发给配置了对应路径的Controller和method,执行方法后返回视图名称,经由视图解析器解析成页面返回。DispatcherServlet来源如下:...
2020-03-14 18:05:43 105
原创 Spring
Spring与Servlet多一个applicationContext-*.xml的配置,也是因为多了这个配置文件使项目管理javaBean变得简单方便。中间件启动时需要将加载spring Ioc的配置,通过在web.xml中添加以下配置实现<!-- spring配置开始 --> <context-param> <param-name>con...
2020-03-07 20:55:16 98
原创 写在Spring之前
在不使用Spring框架前,单使用Servlet进行数据交互。请求流程:客户端发起请求,请求到达容器,将请求解析成http请求,根据请求路径参数匹配web.xml中的servlet,初始化此servlet,并将包装好的httpServletRequest和空的HttlServletResponse一并传入此servlet的service()方法中,执行业务逻辑,将需返回的数据写入respons...
2020-03-06 10:47:34 285
原创 Oracle数据导入
步骤:1.创建数据库2.配置tcp/ip监听3. cmd: sqlplus / as sysdba异常时将当前用户添加到ora_dba查看当前用户:net user查看用户组:net localgroup//////net localgroup ora_dba添加用户或用户组:net localgroup ora_dba administrator/add; ...
2020-01-08 22:33:16 116
原创 Java模拟http请求
Java实现http请求主要有3种方式:URLConnection、HttpURLConnection、HttpClient一URLConnection 抽象类,属于Java发送http请求的原生api,操作简单1. 构造URL对象2. 获取URL对应的URLConnection对象3. 设置URLConnection的属性值4. 获取输出流写入数据5. 获取输...
2019-11-17 20:01:45 788
原创 常用集合
常用集合List、Set、Map集合中存在两种数据存储方式:顺序存储和链式存储List 接口,interface List<E> extends Collection<E>实现类ArrayList,LinkdList、VectorArrayList底层实际维护的是数组,对集合的操作最后都是对数组的操作,所以查找快,增删慢(要改变增删元素后面的...
2019-09-16 22:55:02 118
原创 cookie和session
cookie和session: 都是记录用户状态的机制因为http协议是无状态的,两次连接访问之间没有关联,因此无法从连接上判断用户是否已经登录等权限,而每次访问都去数据库检查的话耗费资源,所以产生了cookie和session两种记录状态的机制。使用时机:判断用户是否已经进行了某种操作或已具有某种状态(如是否已登录)在客户端记录用户状态的机制为Cookie在服务端记录状态的为Se...
2019-08-25 21:17:16 91
原创 filter
Filter 过滤器对web资源进行过滤,通常拦截request进行处理,也可以对response处理,然后交给下一个filter或者servlet实现filter接口,并实现其中的抽象方法public class Item implements Filter { public void destroy() { /*销毁时调用*/ } pub...
2019-08-24 20:09:08 77
原创 Listener
Listener 监听器监听容器中的某一动作,并根据此动作按照需求做出相应响应。常用的监听器有:监听对象产生和销毁:ServletContextListener HttpSessionListenerServletRequestListener监听属性的改变:ServletContextAttributeListener Http...
2019-08-20 16:21:59 99
原创 JSON
JSON:JavaScript object notation , js对象表示法,一种轻量级的文本数据交换格式(纯文本)json语法是js语法的子集,json使用js语法来描述数据对象,js能够使用内建的eval()函数用json数据来生成原生的js对象。json对象数据结构:1. 键值对 {key1:value1,key2:value2,...},key必须是字符串...
2019-08-11 12:58:51 132
原创 Ajax
Ajax:异步的JavaScript and XML运行原理:页面发起请求,请求会发送至浏览器内核中的Ajax引擎中,Ajax引擎会将请求发送给服务端,服务端返回处理数据给Ajax,会触发设置的事件,从而起到刷新局部页面数据的效果(依然是http协议)。async:true 异步请求,在请求发送后不管服务端有没有返回数据,都可以对客户端页面进行操作async:false 同步请求...
2019-08-10 15:33:11 117
原创 http
一、socket(套接字)1. socket是通信的基石,是支持TCP/IP网络通信协议的基本操作单元。包含了网络通信必须的五种信息:连接使用协议,本地IP地址,本地协议端口,远程IP地址,远程协议端口。2. socket连接:至少一对socket,客户端ClientSocket和ServerSocketa.ServerSocket 处于监听状态,监听来自客户端的请求b....
2019-08-09 15:57:17 102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人