Paxos算法可分为两二段: 阶段一: 1.Proposer选择一个提案号Mn,然后向Acceptor的某个超过半数的子集发送编号为Mn的Prepare请求。 2.如果一个Acceptor收到一个提案编号为Mn的Prepare请求,且Mn大于该Acceptor已响应过的所有编号,那么它会将它已经批准 Read More
posted @ 2018-02-13 01:27 Tomas曼 Views(165) Comments(0) Diggs(0) Edit
环境: centOs系统 一、安装redis: 1.下载安装(先装c编译器yum -y install gcc) 2.启动: 3.交互 二、多节点集群搭建的配置工作: 其实就是启动的配置文件redis.conf不一样,下面是步骤: 1.根目录下创建 redis_cluster文件夹,cd进去: 创建 Read More
posted @ 2018-01-15 16:15 Tomas曼 Views(1427) Comments(1) Diggs(0) Edit
一.Spring支持四种事务隔离级别: 1.ISOLATION_READ_UNCOMMITTED(读未提交):这是事务最低的隔离级别,它充许令外一个事务可以看到这个事务未提交的数据。 2.ISOLATION_READ_COMMITTED(读已提交): 保证一个事务修改的数据提交后才能被另外一个事务读 Read More
posted @ 2017-10-21 15:41 Tomas曼 Views(6828) Comments(0) Diggs(1) Edit
这个项目就是一个例子,只有添加图书的功能: 项目架构: resource: 整合流程: 1.pom文件节点,这两个是整合用的,其他节点不再赘述: 如果mybatis用的是3.4.1,那么mybatis-spring版本要用1.3.0 2.applicationContextDay06.xml 3.j Read More
posted @ 2017-10-21 13:01 Tomas曼 Views(284) Comments(0) Diggs(0) Edit
1.Cglib动态代理 目标类: 测试: 测试结果: 测试第27行enhancer.create()方法调用了Service的构造器。 create()方法是生成代理对象,其本质是目标类的子类实例,所以会调用父类构造。 2.JDK动态代理 jdk动态代理原理是动态生成目标对象实现接口的实现类。 接口 Read More
posted @ 2017-10-14 23:56 Tomas曼 Views(630) Comments(0) Diggs(0) Edit
1.查询语句,where: 2.插入语句,trim: 3.修改语句,trim: 4.查询语句,foreach: Read More
posted @ 2017-10-14 02:24 Tomas曼 Views(371) Comments(0) Diggs(0) Edit
1、这回先创建数据库吧 下表cid是CategoryId的缩写,cname是CategoryName的缩写,pid是parentId的缩写 无限级分类一般都包含这三个属性,至少也要包含cid和pid才能建立无限级关联 ok,这个东东就是无限级分类了。 即便是外行人稍微看一眼也能发现cid为1的图书在 Read More
posted @ 2017-09-23 16:44 Tomas曼 Views(3113) Comments(0) Diggs(0) Edit
接着上面创建的maven项目来。 1.java目录下创建cn.happy.entity包 2.idea下创建数据库连接 配置连接参数 3.把数据库表变成实体类 导入成功,改一下包名就可以用了 4.新建cn.happy.dao包,在下面新建IUserDAO接口,代码如下 5.在IUserDAO同包下新 Read More
posted @ 2017-09-16 17:22 Tomas曼 Views(2112) Comments(0) Diggs(0) Edit
这里接着上一篇来 我们观察目录发现有两个pom.xml(project object module) 项目是里面的,所以外面的先不管它。 点击里面的pom.xml 1.在<url>节点下面加入阿里云仓库 2.修改原有的junit依赖 3.加入log4j依赖 打开http://maven.aliyun Read More
posted @ 2017-09-16 15:25 Tomas曼 Views(3790) Comments(0) Diggs(0) Edit
1.新建 Project 2.点击Next 3.填写组织名称和项目名称,点击next 4.在你的本地仓库目录下创建settings.xml文件,把mirror的url改成阿里云的 <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Read More
posted @ 2017-09-16 14:42 Tomas曼 Views(1856) Comments(0) Diggs(1) Edit
Layer: UI层: user interface 用户接口层 Biz层: service business login layer 业务逻辑层 DAO层: Date Access Object 数据访问层 1.建立三层架构 UI层(对应包ui):这里就是一个简单的测试类 Biz层(对应包serv Read More
posted @ 2017-07-25 18:31 Tomas曼 Views(1446) Comments(0) Diggs(0) Edit
这里使用触发程序实现此功能. 触发程序语法如下: Create trigger <tri_name> {before|after} {insert|update|delete} On <tab_name> For each row <触发程序SQL语句> 核心代码: 运行了三次插入操作,结果如下: Read More
posted @ 2017-07-12 17:50 Tomas曼 Views(8195) Comments(0) Diggs(1) Edit
一.创建/删除数据库. 二.创建若干表用于测试 这里预留了几个坑,下面要填坑的.. 添加汉字数据的时候如果报错,说什么未定义的数据类型,就把你的默认字符集latin改成utf8就行了.具体方法不赘述了 三.添加外键约束 运行这行代码会报错. SQL Error [1215] [HY000]: Can Read More
posted @ 2017-07-11 19:35 Tomas曼 Views(4748) Comments(0) Diggs(0) Edit
下面举例介绍注册事件的几种方法: 以光棒效果为例 1.bind注册: 2.on注册: 3.使用.hover模仿悬停事件: Read More
posted @ 2017-06-30 23:35 Tomas曼 Views(298) Comments(0) Diggs(0) Edit
列表的显示与隐藏 轮播图: html: css: jQuery: Read More
posted @ 2017-06-30 16:59 Tomas曼 Views(420) Comments(0) Diggs(0) Edit
jQuery选择器可以分为四类:基础选择器,层级选择器,属性选择器,过滤选择器 基础选择器: 层级选择器: 属性选择器: 过滤选择器:这就比较多了,总的来说就是以":"开头的选择器,下面举几个例子。 Read More
posted @ 2017-06-30 14:14 Tomas曼 Views(137) Comments(0) Diggs(0) Edit
Js创建对象与构造函数的继承关系 Read More
posted @ 2017-06-25 13:55 Tomas曼 Views(132) Comments(0) Diggs(0) Edit
需求:输入一个数,判断其类型(完全数,过剩数,不足数) 完全数:自身之外所有因数和==自身 过剩数:自身之外所有因数和>自身 不足数:自身之外所有因数和<自身 测试类: Read More
posted @ 2017-06-24 01:09 Tomas曼 Views(669) Comments(0) Diggs(0) Edit
需求:现有一个员工姓名list,其中包含单字母索引.要求输出一个字符串,去掉所有单字母,所有名字首字母大写并用逗号隔开. 测试类: Read More
posted @ 2017-06-24 00:45 Tomas曼 Views(289) Comments(0) Diggs(0) Edit
需求:读入一个文本文件,确定所有单词的使用频率并从高到低排序,打印出所有单词及其频率的排序列表 先用传统方法解: 再使用Java8的新特性解: 测试类: Read More
posted @ 2017-06-22 23:53 Tomas曼 Views(1703) Comments(0) Diggs(0) Edit
MySQL逻辑架构: 链接管理与安全性: MySQL5.5或更高版本版本提供了一个API,支持线程池(Thread-Pooling)插件,可以使用池中的少量线程来服务大量的连接。 优化与并行: MySQL会解析查询,并创建解析树,然后对其进行各种优化,包括重写查询,决定表的读取顺序,以及选择合适的索 Read More
posted @ 2019-05-19 23:52 Tomas曼 Views(279) Comments(0) Diggs(0) Edit
本文摘自网络: 1、阻塞IO(blocking IO) 在linux中,默认情况下所有的socket都是blocking,一个典型的读操作流程大概是这样: 图1 阻塞IO 当用户进程调用了recvfrom这个系统调用,kernel就开始了IO的第一个阶段:准备数据。对于network io来说,很多 Read More
posted @ 2018-01-22 00:25 Tomas曼 Views(350) Comments(0) Diggs(0) Edit
1.在没有配置的情况下,mybatis默认开启一级缓存。 打个断点测试一下就知道了。 在同一个SqlSession中,第一次查询后,调用mapper相同方法,SqlSession会从一级缓存中取数据,而且得到的是相同的对象。不会发送SQL。 如果SqlSession进行了提交,那么一级缓存将会清除。 Read More
posted @ 2017-10-14 21:39 Tomas曼 Views(1117) Comments(0) Diggs(0) Edit
1.概念 MyBatis中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟加载规则推迟对关联对象的select查询。延迟加载可以有效的减少数据库压力。 2.关联对象的加载时机 ①.直接加载 执行完对主加载对象的select语句,马上执行对关联对象的select查询 ②.侵入式延迟加载 执 Read More
posted @ 2017-10-14 12:26 Tomas曼 Views(1181) Comments(0) Diggs(0) Edit