- 博客(39)
- 收藏
- 关注
原创 Spring事务原理
事务基本原理1、获取连接 Connection con = DriverManager.getConnection()2、开启事务 con.setAutoCommit(true/false);3、执行 CRUD4、提交事务/回滚事务 con.commit() / con.rollback();5、关闭连接 conn.close();说明:Spring的事务管理功能后,我们可以不再写步骤...
2020-04-19 18:45:07
148
原创 SpringMVC原理
#Spring MVC 原理1.mvc初始化原理1.DispatcherService init() Ioc 容器的初始化 applicationContext 初始化九大组件 initSratgeies initHandlerMappings List H...
2020-04-19 18:44:31
125
原创 AOP原理
##AOP原理创建代理对象 getBean -> instantiateBean实例化Bean -> adviceSupport 匹配 pointcut(持有代理目标对象信息、持有AopConfig) -> AopProxy创建代理对象 -> BeanWrapper -> 注册到容器beanWrapperMap调用具体方法 ...
2020-04-19 18:43:01
143
原创 IOC与DI原理
#IOC实现原理(手写版)四个模块####annotation 模块: 自定义配置 xml、annotation、javaConfig applicatonContext.xml 注解:@Controller、@Service、@AutoWired、@Repistory、@RequestMapping、@RequestParam、 @Compent javaCo...
2020-04-19 18:42:30
220
原创 spring介绍
##Spring前世今生###1.没有spring 怎么开发? servlet + jsp###2.spring出现于2017年:开源的轻量级的Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架简化开发、高内聚、低耦合管理bean及依赖关系还提供日志记录、性能统计、安全控制、异常处理、面向切面、管理事务JDBC的封装、集成Hibe...
2020-04-19 18:41:04
122
原创 Zookeeper面试整理
ZooKeeper是什么? 分布式协调服务、为分布式服务提供一致性服、数据发布/订阅、分布式锁、master选举等服务。ZK提供了什么? 文件系统 通知机制ZK文件系统 树状的目录(节点)结构,与文件系统不同,各个节点都存放数据,不能存放大数据,节点限制为1M主从同步Zab协议,两字模式原子广播模式和恢复模式 原子...
2020-04-19 18:39:07
196
原创 Zookeeper核心原理
Watcher的基本流程 三个过程客户端注册监听watcher 服务器处理watcher 客户端回调watcher客户端注册watcher三种方式 getData、exists、getChildren...
2020-04-19 18:38:32
86
原创 Zookeeper的核心原理
分布式锁原理 利用临时有序节点实现 节点下最小的节点获取锁 其余节点监听比他小的节点 避免了惊群效应Zookeeper的数据同步原理 读请求:可直接从当前节点读取数据 写请求:转发到leader,leader广播事务请求,半数通过写入成功问题? leader如何选择? 启动选举...
2020-04-19 18:37:41
112
原创 zookeeper相关概念
###相关名词 **数据模型:**文件系统类似 znode 节点类型 持久节点 :直到主动删除 持久有序节点:一级自节点维护顺序 临时节点:会话结束 临时有序节点:维护顺序会话状态 not_connected 为连接 connecting 初始化...
2020-04-19 18:36:59
79
原创 注册中心简介
###服务间调用问题? 存在问题待解决? 客户端如何维护目标服务的地址信息 服务端服务状态变化,客户端如何感知 客户端对目标服务如何让负载均衡注册中心的出现在这里插入图片描述注册中心: Dubbo体系中的Zookeeper Spring Cloud中...
2020-04-19 18:34:49
249
原创 Condition实现三个线程顺序打印ABC
import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class ABCPrint { private int threadFlag = 1;//当前正...
2020-01-07 17:39:48
847
转载 数据库事务特效及隔离级别详解
这个问题的有趣之处,不在于问题本身(“原子性、一致性的实现机制是什么”),而在于回答者的分歧反映出来的另外一个问题:原子性和一致性之间的关系是什么? 为了保证...
2019-08-20 18:57:11
178
转载 https详解
Https介绍什么是HttpsHTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以...
2019-06-02 18:11:24
417
转载 对is-a has-a like-a的理解
1、is-a,has-a,like-a是什么在面向对象设计的领域里,有若干种设计思路,主要有如下三种:is-a、has-a、like-ajava中在类、接口、抽象类中有很多体现。2、is-a是什么is-a,顾名思义,是一个,代表继承关系。如果A is-a B,那么B就是A的父类。一个类完全包含另一个类的所有属性及行为。例如PC机是计算机,工作站也是计算机,PC机和...
2019-05-03 23:33:39
139
转载 聊天系统 数据库功能表结构如何设计?
User(--用户表 字段 字段类型 字段描述 备注U_ID Int 主键、自增U_LoginID Varchar(20) (登陆账号) U_NickName Varchar(20) (昵称) U_PassWord Varchar(20) (密码) U_SignaT...
2019-02-20 14:01:34
10513
原创 mac上 navicat编码问题
今天转到mac开发,在搭建环境 遇到mac上装的 navicat mysql 编码设置始终不起作用,程序接口返回的始终使乱码,纠结了好久,最后自己琢磨到了原来是在创建数据库链接选择utf-8 ,正确设置如下:1.创建连接的时候设置1标题 2.创建数据库时设置编码...
2018-11-12 14:53:58
707
原创 通过监测kill 信号参数 在停服前做些清理或扫尾工作
package com.maweis.lotus;import com.maweis.lotus.handler.Constant;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Component;import sun.misc.Signal;i...
2018-05-31 17:55:15
195
原创 logback日志按业务逻辑生成文件
logback.xml配置如下<?xml version="1.0"?><!--<configuration>--><!--<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">--><!--&lt;
2018-05-30 13:52:47
1841
原创 java实现组合算法
package com.maweis.lotus.majhong.logic;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.ArrayList;import java.util.List;public class CombinerLogic { private static ...
2018-05-30 13:45:37
3298
原创 Java代码强制kill端口
package com.maweis.lotus.utils;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util....
2018-05-30 13:42:03
2523
转载 maven项目改名
1.选中项目名,按F2,更改项目名。2.修改项目的context root,右键项目,选择最后一项。修改名称3.修改或者增加maven编译配置,pom.xml文件。修改成对应的项目名:4.修改项目的.project文件,打开workspace招到对应的项目,打开.project文件,修改成对应的项目名5.修改.Settings目录下的文件。打开.settings目录找到如下文件:修改对应
2017-04-21 16:18:32
755
转载 设计模式:策略模式
设计模式:策略模式 <div class="article_manage clearfix"> <div class="article_l"> <span class="link_categories"> 标签: <a onclick="_gaq.push(['_trackEven
2017-04-11 16:49:04
239
原创 常见排序原理(基于个人理解)
冒泡排序:循环比较两个相邻的元素,每次循环比较会把最大的一个元素(或者最小一个元素)排到最后。选择排序:每次选择一个最大的(或最小的)元素,排到元素最后。插入排序:将数列分为有序和无序两个部分,每次处理就是将无序数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。快速排序:选一个基准,重新排序数列,所有元素比基
2017-04-11 14:46:53
307
转载 ConcurrentHashMap原理分析
原文出处: Hosee并发编程实践中,ConcurrentHashMap是一个经常被使用的数据结构,相比于Hashtable以及Collections.synchronizedMap(),ConcurrentHashMap在线程安全的基础上提供了更好的写并发能力,但同时降低了对读一致性的要求(这点好像CAP理论啊 O(∩_∩)O)。ConcurrentHashMap的设计与实现非常精巧,大量的利用了
2017-04-11 13:58:54
337
转载 HashMap的数据结构
1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特点是:寻址困难,插入和删除容易。哈希表那么
2017-04-11 13:40:43
239
原创 Thrift动态代理客户端
package com.yunsign.common.thriftclient;import java.lang.reflect.Method; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TMultiplexedProtocol; import org.apache.
2017-04-10 14:52:10
1736
1
原创 通过js提交post隐藏表单
function postRequest(URL, PARAMS) { var temp = document.createElement("form"); temp.action = URL; temp.method = "post"; t
2017-03-29 16:06:53
3418
原创 linux权限管理
linux权限管理一、文件基本权限1.基本权限的修改 ls -l 可查看权限 -rw-r--r-- #10位长度 第1位 - #文件类型(-普通文件 d目录 |软连接文件) 第2-4位 rw- #u所有者权限 第5-7位 r-- #g所属组权限 第8-10 r-- #o其他人权限 r 读 w 写 x
2016-08-04 17:45:42
229
原创 linux软件包安装
1.linux软件包安装1.1 RPM包安装(依赖性繁琐) rpm -ivh 全包名 选项: -i 安装 -v 显示详情信息 -h 显示进度1.2 RPM包升级 rpm -Uvh 包全名 选项: -U 升级1.3 RPM包卸载(依赖性卸载) rpm -e 包名
2016-08-03 16:20:04
329
原创 linux网络管理
linux网络管理1.网络基础 1.1 iso/osi七层模型 IOS:在计算机网络中,IOS是互联网操作系统, 思科公司为其网络设备开发的操作维护系统。 应用层:给用户提供服务 表示层:数据表示、加密、压缩 会话层:对应用会话管理、同步 传输层:可靠与不可靠的传输(TCP、UDP)、传输
2016-08-02 15:40:05
306
原创 linux用户管理
linux用户管理1.用户和用户组 用户:使用操作系统的人 用户组:具有相同系统权限的一组用户 配置文件 /etc/group 存储系统中所有的用户组信息 - Group: x :123 : abc,def,xyz - 组名称:组密码占位符:组编号: 组中用户名列表 cat /etc/grou
2016-07-29 16:23:26
169
原创 linux磁盘管理
磁盘管理df 查看磁盘分区使用情况 - l 仅显示本地磁盘(默认) - a 显示所有文件系统的磁盘使用情况 - h 以1024进制计算最合适的单位显示磁盘容量 - H 以1000进制计算最合适的单位显示磁盘容量 - T 显示磁盘分区类型 - t 显示指定类型文件系统的磁盘分区 - x 不显示指定类型的文件系统的磁盘分区du 统计磁盘
2016-07-29 15:26:07
395
原创 vi编辑器
一、vi编辑器 概述 Visual Interface 可视化接口 类似windows中的记事本 vi->vim vim提升 -支持多级撤销 -可以跨平台 -支持语法高亮 -支持图形界面 vi编辑器的操作模式 Command mode 命令模式 Insert mode 输入模式 Last Line mode低行模式
2016-07-29 11:06:33
249
原创 Shell入门基础
Shell基础一、Shell概述 Shell是命令行解释器 Shell是依赖Ascii码表翻译成二进制 用户--->Shell--->计算机内核 计算机内核---> Shell ---> 用户 Shell还是功能强大的编程语言 分类 Bourne Shell C Shell 这两种语法
2016-07-28 17:07:47
238
原创 linux常用命令之压缩与解压缩命令
linux常用命令之压缩命令1.常见压缩格式 .zip .gz .bz2 .tar.gz .tar.bz a. .zip格式压缩及解压缩 zip 压缩文件名 源文件 #压缩文件 zip -r 压缩文件名 源目录 #压缩目录 unzip 压缩文件 #解压文件 b. .gz格式压缩及解压缩 gz 源文件 #压缩
2016-07-28 14:24:27
334
原创 linux常用命令之关机重启命令
linux常用命令之关机重启命令1.shutdown命令(常用)-c 取消上一个命令-h 关机-r 重启shutdown -h now 立即重启shutdown -r 05:30 凌晨五点三十分重启shutdown -c 取消上次命令2.不常用关机的命令 haltpoweroffinit0其他
2016-07-28 14:00:34
955
原创 linux命令之挂载
挂载命令mount 查看系统中已经挂载好的目录mount -a 依据/etc/fstab文件自动挂载的内容,自动挂载挂载命令格式 mount [-t 文件系] [-o 特殊选项] 设备文件名 挂载点 选项: -t 文件系统:ext3、ext4、iso9660等文件系统 -o 特殊选项:可以挂载额外的选项 cd /home vi h
2016-07-28 13:37:23
192
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人