- 博客(52)
- 收藏
- 关注
转载 PageHelper
引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写count和select, 如下就是项目在没有使用分页插件的时候的语句 复制代码 <select id="size" parameterType="Map" resultType="Long"> sel...
2019-03-27 22:45:07
139
原创 shiro
1.Authenticator:认证器,管理登陆与登出。 2.Authorizer:授权器,赋予主体权限。 3.Session Manager:session管理器,session管理机制。不借助任何web容器使用session 4.Session Dao:session操作,主要增删改查。 5.Cache Manager:缓存管理器 6.Pluggable Realms(1 or more):s...
2019-03-27 19:15:02
103
转载 webservice
在java项目中使用webservice 今天学习webservice,主要参考了网络上的一些文章。 1.关于原理的介绍:个人认为这篇文章写得不错了,戳这里。 2.关于demo的编写:个人认为这篇文章很简洁,也能运行成功,戳这里。 按照上面那篇文章的demo运行成功以后,我想在java web中加入一个webservice服务,供其他的java web项目调用。 1.首先,在项目中添加com.xd...
2019-03-27 16:48:56
105
转载 tcp的三次握手与四次挥手详解
TCP三次握手四次挥手详解 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。 因此在这里详细解释一下这两个过程...
2019-03-25 10:36:26
110
转载 Lombok详解
Lombok使用 介绍 在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。 IDEA中的安装 打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse repositories –> 搜索lombok –> 点击安装 –> 安装完成重启IDEA –> 安装成功 引入依赖 ...
2019-03-17 21:55:36
367
转载 java反射(通熟易懂)
反射之中包含了一个「反」字,所以想要解释反射就必须先从「正」开始解释。 一般情况下,我们使用某个类时必定知道它是什么类,是用来做什么的。于是我们直接对这个类进行实例化,之后使用这个类对象进行操作。 Apple apple = new Apple(); //直接初始化,「正射」 apple.setPrice(4); 上面这样子进行类对象的初始化,我们可以理解为「正」。 而反射则是一开始并不知道我要初...
2019-03-14 14:14:08
154
转载 java反射
反射是框架设计的灵魂 (使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码)) 一、反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 要想解剖一个类,必须先要获取到该类的字节码文件对...
2019-03-14 14:13:06
135
转载 ZooKeeper是什么
一. ZooKeeper是什么 ZooKeeper由雅虎研究院开发,是Google Chubby的开源实现,后来托管到Apache,于2010年11月正式成为Apache的顶级项目。 ZooKeeper是一个经典的分布式数据一致性解决方案,致力于为分布式应用提供一个高性能、高可用,且具有严格顺序访问控制能力的分布式协调服务。 分布式应用程序可以基于ZooKeeper实现数据发布与订阅、负载均衡、命...
2019-03-11 13:34:16
196
原创 java堆(heap)及分代
java堆不是数据结构意义上的堆(一种有序的树),而是jvm的堆,也即是运行时的数据区。所有类的实例和数组都是在堆上分配内存,它在JVM启动时被创建,对象所占的内存是由自动内存管理系统也就是垃圾回收器回收。 堆内存是由存活的对象以及死亡的对象组成的。存活的对象不会被垃圾回收器回收;死亡的对象是还没有被垃圾回收器回收的对象,等下一个周期回收 永久代:永久代主要存在类定义,字节码,和常量等很少会变更的...
2019-03-09 17:22:28
232
转载 分布式锁的作用及实现(Redis)
一、什么是分布式锁? 要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁、进程锁。 线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(state)。 进程锁:为了控制同一操作系统中多个进程...
2019-03-07 16:27:18
172
转载 redis
什么是Redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。Redis全称为:Remote Dictionary Server(远程数据服务),该软件使用C语言编写,Redis是一个key-value存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set)、hash。 Red...
2019-03-07 15:59:03
95
原创 堆(heap)和栈(stack)
jvm中有的结构由类加载器,方法区,java堆(heap),直接内存,垃圾回收器,寄存器,java栈(stack),和执行引擎组成 类加载器加载的class信息放在方法区中的内存空间, java堆在java虚拟机启动的时候创建,它是java程序主要的工作区域,几乎所有的实例都放在堆中,堆空间所有的内存都是共享的。 java栈在线程创建的时候被创建,存放局部变量,方法参数等 ...
2019-03-07 09:16:35
127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅