Posts
Narule
Cancel

Mybatis的缓存

Mybatis的缓存 mybatis是一个查询数据库的封装框架,主要是封装提供灵活的增删改sql,开发中,service层能够通过mybatis组件查询和修改数据库中表的数据;作为查询工具,mybatis有使用缓存,这里讲一下mybatis的缓存相关源码。 缓存 在计算机里面,任何信息都有源头,缓存一般指源头信息读取后,放在内存或者其他读取较快的地方,下次读取相同信息不去源头查询而是直...

SpringBoot-启动流程

SpringBoot-启动流程 平时开发springboot项目的时候,一个SpringBootApplication注解加一个main方法就可以启动服务器运行起来(默认tomcat),看了下源码,这里讲下认为主要的流程 主要流程如下 0.启动main方法开始 1.初始化配置:通过类加载器,(loadFactories)读取classpath下所有的spring.factories配...

ReentrantLock锁

ReentrantLock锁 ReentrantLock是Java中常用的锁,属于乐观锁类型,多线程并发情况下。能保证共享数据安全性,线程间有序性 ReentrantLock通过原子操作和阻塞实现锁原理,一般使用lock获取锁,unlock释放锁, 下面说一下锁的基本使用和底层基本实现原理,lock和unlock底层 lock的时候可能被其他线程获得所,那么此线程会阻塞自己,关键原理底层...

Tomcat用线程池处理http并发请求

Tomcat用线程池处理http并发请求 通过了解学习tomcat如何处理并发请求了解到线程池,锁,队列,unsafe类,下面的主要代码来自 java-jre: sun.misc.Unsafe java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor.Worker java.util.c...

Tomcat如何建立连接获取http请求

tomcat-如何建立连接,获取远程请求 学习探讨tomcat如何建立网络连接协议,并处理客户端过来的请求 建立网络连接,指定http1.1通信协议 tomcat在创建时,会创建连接对象,负责处理客户端的请求,基于socket connector 连接 protocol 协议 endpoint终端 socket插座,端口连接 创建初始化,对象创建顺序 connector >...

电影给人们带来什么

电影推荐 红猪 千寻 变形金刚 肖申克的救赎

java 面向对象思想 封装多态继承

java 面向对象思想 封装多态继承 面向过程与面向对象 编程分为面向对象编程和面向对象编程,汇编,C语言是面向过程写代码,C++/Java是面向对象 其实面向过程和面向对象在本质都是一样写代码,然后将代码翻译成机器码让中央处理器去执行,但是在实现功能和整体设计上,相对于人来说,特别是Java,面向对象在设计上更抽象,是写代码在设计上的升华。 Java里说,万物皆对象,如果说java...

Java中的数据结构

数据结构 本文准备讲一下软件开发中的数据结构。 物理存储 因为数据结构是用来存储数据的具体方式,在讲数据结构之前,说说数据物理存储。 平时软件开发中,一个8G的内存可以同一时间存储8G的数据,在物理上来说,这些存储单元是连续的,理论上可以可以看成是地址从0开始到 8*2^30次方。理想的话,什么数据通过寻址就能找到,很方便 但是数据的使用在计算机中并不只是查询,也可以是修改,添加,...

互联网备忘录

互联网备忘录 写一个服务,保存个人信息到互联网方便查看,支持终端加密 写了一个互联网信息备忘录,数据存储使用mysql 互联网通信https证书加密,备份加密Aes加密,用户自己保存密钥,用户需要使用邮箱注册账号 服务地址: narule.net 内容 用户登录后 1.保存用户个人数据到服务端 2.保存数据到服务端前可在客户端加密 3.客户端信息查看(服务端加密数...

nginx控制ip连接和请求数

nginx有两个模块,分别用来配置 ip最大连接数 和单位时间内最多请求数 ip连接限制 ngx_http_limit_conn_module 官网模块地址: http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html 主要指令 limit_conn_zone 使用示例: http{ limit_conn_zone...