- 博客(23)
- 资源 (7)
- 收藏
- 关注
原创 Security 身份认证和访问控制
基本解读身份认证和访问控制(Authentication and Access Control)应用程序安全性差不多可以归结为两个独立的问题:身份认证(你是谁)和授权(authorization)(你可以做什么?)。有时人们会说“访问控制”而不是“授权”,这可能会造成困惑,但是以这种方式思考可能会有所帮助,因为“授权”在其他地方又有其他含义。Spring Security的体系结构旨在将身份认证与授权分开,并且具有许多策略和扩展点身份认证在AuthenticationManager接口的
2020-12-30 18:10:28
591
1
原创 voliate 关键字
voliatecpu术语定义术语英文单词术语描述内存屏障cache barriers处理器的指令 , 用于实现对内存操作的顺序限制原子操作atomic opers不可中断的一个操作缓存行填充cache line fill当处理器识别到内存的读操作是可缓存的,处理器读取整个缓存行到适合的缓存(L1,L2,L3)缓存命中cache hit当进行高速缓存行填充的内存位置不变时,处理器从缓存中读取,而非内存写命中write hitpp写
2020-07-28 13:18:07
992
原创 Synchronized&Lock&AQS简介
锁加锁的目的:序列化访问临界资源 , 即同一时刻只有一个线程访问临界资源(同步互斥访问)锁:隐式锁和显式锁隐式锁:Synchronized加锁机制Jvm 内置锁 , 不需要手动加锁和解锁Jvm会自动加锁和解锁Synchronized加锁 几乎不可能跨方法加锁显式锁ReentrantLock 实现juc里的Lock .实现基于AQS实现 , 需要手动加锁和解锁R...
2020-06-18 14:39:20
353
原创 Mysql 锁机制
mysqlmysql 的锁定义锁是计算机协调多个进程或多个线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。锁的分类在性能中分为乐观锁和悲观锁在操作中分为读锁和写锁写锁(排他锁): 在当前页面页面未操作完成,会阻止其他读锁和写锁的操作读锁(共享锁): 对相同的数据 , 支持多
2020-06-17 15:25:42
136
原创 JMM & volatile的简介(上)
冯诺依曼计算机模型控制器(Control)运算器(Datapath)存储器(Memory)输入(Input system). 输出(Output system)CPU内部结构CPU的结构主要由运算器、控制器、寄存器三大块组成。运算器就是中央机构里负责执行任务的部门,也就是专门干活的;而控制器就是中央机构的领导小组,针对不同需要,给运算器下达不同的命令;寄存器可以理解...
2020-05-03 00:37:29
138
原创 rabbitmq的基本介绍和使用
RabbitMq基本概念基本使用五种工作模式导入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> <version>1.5.2.RELE...
2020-05-02 00:25:03
275
原创 jvm的简单介绍
jvm 虚拟机栈内存例如 : 方法的执行时会开辟一个栈帧,进行局部变量的计算等局部变量表局部变量的计算操作数栈动态链接方法出口方法执行完后, 返回调用该方法的我位置程序计数器(线程私有(jvm 中的地址,记录字节码执行的位置))本地方法栈内存:在进行递归调用的时候所保存的栈帧的内容,栈帧的组成部分有:局部变量表、操作数栈、当前...
2020-04-14 21:18:36
107
原创 JMM&volatile(二)
线程的生命状态为什么用到并发充分利用到多核cpu 的计算能力方便业务的拆分 , 提升应用性能并发的会产生问题高并发的场景下 , 导致频繁的上下文切换临界区的安全问题 , 容易产生死锁线程的上下文切换...
2020-04-12 18:56:39
118
原创 Mybatis缓存
Mybatis 的缓存MyBatis提供一级缓存和二级缓存的机制。一级缓存为sqlsession级别二级缓存为全局一级缓条件同一个回话中(session)相同的mapper相同的方法不能执行session.clearCache()不能执行增删改的操作(增删改(默认执行4方法)) 在操作数据库时,需要构造sqlsession对象,在对象中有一...
2020-04-09 15:12:50
106
原创 mybatis的基本了解
熟悉mybatis源码分析带徒手mybatis传统JDBC的弊端:总结:1、jdbc底层没有用连接池、操作数据库需要频繁的创建和关联链接。消耗很大的资源2、写原生的jdbc代码在java中,一旦我们要修改sql的话,java需要整体编译,不利于系统维护3、使用PreparedStatement预编译的话对变量进行设置123数字,这样的序号不利于维护4、返回result结果集也需要硬编码。myba...
2020-04-09 13:08:18
213
原创 navicat连接阿里云服务器 与 ssh tunnel:server does not support diffie-hellman-group1-sha1 forkeyexchange问题解决
navicat连接阿里云服务器的mysql点击个人博客网址阿里云开放安全组(MySQL端口3306)查看用户的权限(服务器上面查看) root的 host是 % 证明权限没问题更改mysql user表中登陆用户权限show databases;use mysql;select user,host,password from user;update user se...
2020-04-07 16:07:52
940
原创 spring的结伴使用
spring (春天)Spring 优点(轻量级框架)ioc容器Aop面向切面编程对事物的支持使用建立xml文件,导入配置文件 , beans 是Java对象 , 有spring创建管理 , 例如 <beans name = "hello" class = "路径名"> <property name = "set方法的后接部分" Value = "参...
2019-10-25 21:32:39
117
原创 EL表达式
EL表达式全域查找(常用)EL是JSP的内置对象jsp2.0 开始,不让使用java脚本 , 二十使用el表达式 , 动态标签代替javajj脚本EL 代替的是<%= ... %>EL表达式读取四大域${xxx} , 全域查找 名为xxx的属性 , 不存在 输出空字符串,${pageScope.xxx} , ${requestScope.xxx} , ${se...
2019-10-24 16:29:20
106
原创 JSP的三大指令
#jsp的三大指令1. page --------> <% @page language=“java” info=“xxx” … %>2. include3. taglibpage指令一个页面可以有个N个指令 , 位置无所谓pageEncoding 和 contextType: pageEncoding 指定当前jsp页面的编码 ,在服务器要把jsp编...
2019-10-23 20:06:37
279
原创 httpSession , jsp ,
HttpSession概述Httpsession是由javaweb提供, 用来跟踪会话类, session是服务端对象 , 保存在服务端!!HttpSession是javaweb的三大域之一(request , session ,application(ServletContext)),它底层依赖Cookie , 或是URL重写HttpSession的作用会话范围 :...
2019-10-22 22:05:50
234
原创 Servlet简单介绍
Servlet生命周期函数,汤姆猫调用的函数Servlet只有一个实例对象 , 会出现一个Servlet同时处理多个请求 , 不为线程安全, 但会高效率 ,所以不该在Servlet中创建成员变量 , 可以局部变量(创建成员变量进行读写时可能会出现死锁的情况)可以创建无状态方法(即一个类只有操作集)可以创建有状态成员(只读),(即一个成员只有get方法,没有set)动态资源 ,...
2019-10-20 22:25:03
173
原创 C 多线程编程以及线程函数
C 多线程编程以及线程函数优势使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操作方式使用多线程的理由之二是线程间方便的通信机制。对不同进程来说,它们具有独立的数据空间,要进行数据的传递只能通过通信的方式进行,这种方式不仅费时,而且很不方便。线程则不然,由于同一进程下的线程之间共享数据空间,】多线程程序作为一种多任务、并发的工作方式,当然有以下的优点:...
2019-10-18 15:14:40
777
原创 setbuf ,strtod,memchr函数
jlibc的一些函数void setbuf(FILE *stream, char *buffer)给stream一个buffer的缓冲区buffer – 这是分配给用户的缓冲,它的长度至少为 BUFSIZ 字节,BUFSIZ 是一个宏常量,表示数组的长度。(也可自己定义)#include <stdio.h>int main(){ char buf[BUFSIZ]...
2019-10-18 15:11:30
199
原创 Epoll编程的基本步骤
Epoll编程解决select的数量限制使用与高并发 ,例如c10kepoll用作处理大量文字描述符,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。另一点原因就是获取事件的时候,它无须遍历整个被侦听的描述符集,只要遍历那些被内核IO事件异步唤醒而加入Ready队列的描述符集合就行了。epoll除了提...
2019-10-18 15:08:21
1079
原创 Linux常用命令——文件及管理目录
文章目录Linuxc常用命令文件及管理目录`cp` 复制文件`mv` 移动文件`more` 分屏显示文件`diff` 比较两个文件`file` 查看文件类型`sort` :排序Linuxc常用命令文件及管理目录 ls: 显示目录-a 显示所有文件 -l 显示详细列表chagrp:设置文件组(root权限)空:显示文件设置组-R: 递归 堆目录下所有的文件设置文件组...
2019-02-24 00:01:41
216
原创 Linux的I/O,进程等基础
文件的I/O 模型例如open()read()write()close()#文件描述符在 I/O调用中文件描述符是一个非常小的非零整数,常用open()打开,在参数中指定I/O操作的目标文件的路径名 。通常有shell启动的进程会继承3个已打开的文件描述符例如 :0为标准输入、1为标准输出、2位标准错误上述的3种一般都指向终端。stdio函数...
2019-02-23 22:26:24
187
qt-everywhere-opensource-src-5.6.2.tar.gz
2019-08-16
jdk安装包.zip
2019-06-26
linux-0.11. linux-2.0.1.,,linux-5.0.4. linux-5.0.9的内核源码
2019-04-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人