随笔分类 - 2020年7月
摘要:SpringBoot之Mybatis操作中使用Redis做缓存 转自:http://www.cnblogs.com/5ishare/ 今天这篇博客学习下Mybatis操作中使用Redis做缓存。这里其实主要学习几个注解:@CachePut、@Cacheable、@CacheEvict、@CacheC
阅读全文
摘要:StringUtils中 isNotEmpty 和isNotBlank的区别【java字符串判空】 1 isNotEmpty(str)等价于 str != null && str.length > 0 2 isNotBlank(str) 等价于 str != null && str.length >
阅读全文
摘要:jdbc,mybatis,hibernate各自优缺点及区别 先比较下jdbc编程和hibernate编程各自的优缺点。 JDBC: 我们平时使用jdbc进行编程,大致需要下面几个步骤: 1,使用jdbc编程需要连接数据库,注册驱动和数据库信息 2,操作Connection,打开Statement对
阅读全文
摘要:连接过程: public ChannelSftp connectWithABS(String ip, int port, String username, String password) { logger.info("SFTP 连接" + ip + " " + port + " " + usern
阅读全文
摘要:什么是一级缓存 一般提到MyBatis缓存的时候,都是指二级缓存。一级缓存 (也叫本地缓存)默认会启用,并且不能控制,因此很少会提到。 MyBatis 的一级缓存机制 MyBatis 的一级缓存存在于 SqlSession 的生命周期中,在同一个 SqlSession 中查询时,MyBatis 会把
阅读全文
摘要:UDP与TCP报文格式,字段意义 UDP报文 1、UDP有两个字段:数据字段和首部字段。 首部字段 首部字段很简单,只有8个字节,由4个字段组成,每个字段的长度都是两个字节。 1)源端口:源端口号。在需要对方回信时选用。不需要时可用全0。 2)目的端口:目的端口号。这在终点交付报文时必须要使用到。
阅读全文
摘要:1. TCP报头 源端口:指定了发送端的端口(图1 TCP报头结构) 目的端口:指定了接受端的端口号 序号:指明了段在即将传输的段序列中的位置 确认号:规定成功收到段的序列号,确认序号包含发送确认的一端所期望收到的下一个序号 TCP偏移量:指定了段头的长度。段头的长度取决与段头选项字段中设置的选项
阅读全文
摘要:结论 1. in()适合B表比A表数据小的情况 2. exists()适合B表比A表数据大的情况 当A表数据与B表数据一样大时,in与exists效率差不多,可任选一个使用. select * from Awhere id in(select id from B) 以上查询使用了in语句,in()只
阅读全文
摘要:https://www.cnblogs.com/xuanhai/p/5810918.html 详细说明 在此地址查看 EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或FalseEXISTS 指定一个子查询,检测 行 的存在。 EXISTS(包括
阅读全文
摘要:一、 channel 信道: 概念:信道是生产消费者与rabbit通信的渠道,生产者publish或是消费者subscribe一个队列都是通过信道来通信的。信道是建立在TCP连接上的虚拟连接,什么意思呢?就是说rabbitmq在一条TCP上建立成百上千个信道来达到多个线程处理,这个TCP被多个线程共
阅读全文
摘要:目录 一、Mongodb 二、Memcached 1.介绍 2.Memcached工作方式分析 3.如何实现分布式可拓展性 三、Redis 1.介绍 2.工作方式分析 3.如何实现分布式可拓展性 四、三种数据库对比 1.redis和Mongodb应用场景对比 2.Memcached和Redis应用场
阅读全文
摘要:InnoDB存储引擎 InnoDB是一个事务型的存储引擎,设计目标是处理大数量数据时提供高性能的服务,它在运行时会在内存中建立缓冲池,用于缓冲数据和索引。 InnoDB优点 1.支持事务处理、ACID事务特性; 2.实现了SQL标准的四种隔离级别; 3.支持行级锁和外键约束; 4.可以利用事务日志进
阅读全文
摘要:共享锁,又称为读锁,获得共享锁之后,可以查看但无法修改和删除数据。 排他锁,又称为写锁、独占锁,获得排他锁之后,既能读数据,又能修改数据。 为什么要加锁 很多人都知道,锁是用来解决并发问题的,那么什么是并发问题呢?并发情况下,不加锁会有什么问题呢? 拿生活中的洗手间举例子,每个洗手间都会有一个门,并
阅读全文
摘要:数组分页 查询出全部数据,然后再list中截取需要的部分。 mybatis接口 List<Student> queryStudentsByArray(); xml配置文件 <select id="queryStudentsByArray" resultMap="studentmapper"> sel
阅读全文
摘要:1,commit()是提交事物,默认是先执行flush,事物提交成功后是不能进行回滚的. 2,flush()是刷新缓存(有些资料说是清楚缓存是不对的,数据仍然在缓存中),将缓存中的数据刷到数据库,使数据库中数据和缓存保持一致。为了保持一致,则有可能发送对应的sql语句(若缓存中的对象和数据库中的对象
阅读全文
摘要:一、why(为什么要用Hibernate缓存?) Hibernate是一个持久层框架,经常访问物理数据库。 为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。 缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。
阅读全文
摘要:1、getCurrentSession()与openSession()的区别?* 采用dugetCurrentSession()创建的session会绑定到当前线程中,而采zhi用openSession(),创建的session则不会* 采用getCurrentSession()创建的session
阅读全文
摘要:Hibernate 中对象的状态: 在Java中,当new了一个对象时,该对象的生命周期就开始了,当没有一个变量引用它的时候,他的生命周期也就随之而结束,Java垃圾回收器就会清理被它占用的内存。 在Hibernate中,对于需要被持久化的对象,在它的生命周期中有三种状态: 临时态 transien
阅读全文
摘要:一:事务认识 大家所了解的事务Transaction,它是一些列严密操作动作,要么都操作完成,要么都回滚撤销。Spring事务管理基于底层数据库本身的事务处理机制。数据库事务的基础,是掌握Spring事务管理的基础。这篇总结下Spring事务。 事务具备ACID四种特性,ACID是Atomic(原子
阅读全文
摘要:初识Spring(为什么要使用Spring?) Spring,英文翻译是春天的意思,而在Java中,是一个开放源代码的设计层面框架(手动滑稽,程序员的春天),他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java
阅读全文

浙公网安备 33010602011771号