- 博客(78)
- 资源 (3)
- 收藏
- 关注

原创 java 中 https 实现整理
HTTPS协议是安全通信过程中常用的应用层协议,本质上说就是HTTP+SSL/TLS的融合版本。SSL/TLS是基于TCP的传输层协议,它的握手协议主要分为三个阶段:1.协商算法: 客户端提供服务端自身支持的加密算法并发送一个随机数RNC,服务端提供客户端自身支持的加密算法并发送一个随机数RNS,双方商榷得到一个共同支持的加密算法2.验证证书: 单向认证情况下,只
2016-06-24 15:40:48
1722

原创 java threadPool 线程池简单分析
java 1.5 concurrent 工具包中提供了五类线程池的创建: ExecutorService executor=Executors.newCachedThreadPool(); ExecutorService cacheExecutor=Executors.newCachedThreadPool(new TestThreadFactory()); ExecutorS
2014-12-27 23:47:41
3888

原创 java 阻塞队列BlockingQueue
BlockingQueue ArrayBlockingQueue LinkedBlockingQueue.
2014-11-30 16:49:38
7322
原创 spring 事务
事务通常被用于需要执行多个变更操作的场景中,可能存在于单体式应用内,也可能存在于分布式应用,spring 中事务的实现通过切面代理机制来实现。应用中如果想简单实现一个事务,一般只需要开启事务管理的注解@EnableTransactionManagement,然后在具体的方法上带上注解@Transactional就行,如果涉及到事务的传播属性,隔离级别,回滚机制可以在@Transactional注解...
2020-05-05 10:44:40
289
原创 重定向response.redirect与location.href 区别
前后端分离已经逐渐成为目前web开发的主流模式,前后端基于restful接口完成交互,直接跟浏览器交互的是前端页面,这种模式想要实现浏览器重定向的功能只能通过在页面JS脚本中添加location.href 的方式进行。比如访问a.html页面,a页面中添加window.location="b.html",就能实现a页面到b页面的跳转,但是因为a,b页面都是存静态页面,所以两次请求的http响应码都...
2019-03-30 10:46:36
3711
转载 java AOP
AOP的实现有哪些AOP常见的实现有:Spring AOPAspectjGuice AOPJboss AOP等AOP Alliance 是什么, 为什么Spring AOP需要aopalliance.jar?AOP Alliance定义了AOP中的基础概念,但它并不是一种AOP的实现,它的目标为各种AOP实现提供统一的接口.Spring AOP, GUICE
2016-05-31 15:18:30
1486
原创 mybatis 中resultType与resultMap区别
mybatis中要返回如下对象的List集合:public class Host { private String hostType; private String hostAddr; public String getHostType() { return hostType; } public void setHostType(String hostType) {
2016-05-29 17:05:07
2951
转载 Java套接字Socket编程--TCP参数
在Java的Socket中,主要包含了以下可设置的TCP参数。属性说明默认值SO_TIMEOUT对ServerSocket来说表示等待连接的最长空等待时间; 对Socket来说表示读数据最长空等待时间。0TCP_NODELAY是否一有数据就马上发送。false
2016-05-25 23:14:08
3361
原创 synchronized 与 ReentrantLock 同步代码块简单实现
synchronized 与 ReentrantLock 简单实现
2016-05-08 21:06:29
1130
转载 java线程内存模型,线程、工作内存、主内存
java线程内存模型线程、工作内存、主内存三者之间的交互关系图: key edeas所有线程共享主内存每个线程有自己的工作内存refreshing local memory to/from main memory must comply to JMM rules 产生线程安全的原因线程的working memor
2016-05-06 22:20:07
4262
转载 volatile 变量作用
结论volatile解决了线程间共享变量的可见性问题使用volatile会增加性能开销volatile并不能解决线程同步问题解决i++或者++i这样的线程同步问题需要使用synchronized或者AtomicXX系列的包装类,同时也会增加性能开销 简介volatile关键字保证了在多线程环境下,被修饰的变量在别修改后会马上同步到主存,这样该线程对这个变量的修
2016-05-06 20:41:39
600
原创 域名注册与解析碎片整理
域名注册1.ICANN负责管理全球的所有域名,成立在美国,不受政府干预。2.ICANN不接受个人的域名申请, 个人要申请需要通过万网,互联先锋等域名代理机构,这些代理机构下面还可以逐级代理。3.国内域名注册代理商(万网,dnspod等)无法注册海外其他国家的域名,比如新加坡国家域名是,sg, 这类海外国家的域名可以通过互联先锋注册域名解析(baidu.com 为例说明)1.域名
2015-09-24 23:43:07
656
转载 http头中的host字段详解
Host:客户端指定自己想访问的http服务器的域名/IP 地址和端口号。今天同事问了一个问题引发了我对http头中host字段的详细思考,总结了以下5条。1.host字段可以是域名,也可以是ip地址。host字段域名/ip后可以跟端口号,如Host: www.6san.com:80802.host可以由程序自定义,某些程序为了防止运营商或防火墙拦截会定义虚假host
2015-06-30 14:31:06
1670
转载 Mysql Not in的问题
今天用了Mysql的not in,大致是select * from A where A.id not in (select fid from B).发现无论如何结果都是0条记录。后来发现select fid from B里面有一条NULL值,查了资料才知道mysql 的not in里面如果有一个NULL值,将返回0条记录。要解决这个问题需要把 select fid
2015-04-24 16:36:03
698
转载 java Daemon Thread User Thread
在Java中有两类线程:用户线程 (User Thread)、守护线程 (Daemon Thread)。所谓守护 线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因 此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。用户
2015-03-07 13:14:24
618
转载 MySQL VARCHAR存储大小
经常有开发在问建表语句的时候varchar字段的长度大小。或者建表语句中的字段varchar是乱写的。比如直接写个varchar(50000)。今天统一总结下:提示:VARCHAR(N) 指的是可以存放的最大字符个数,不是字节数。需要区分字符和字节。一个汉字,一个数字,一个字母都是一个字符。字节是计算机的基础存储单元,8位一个字节。 具体区分可以查看 字符,字节和编码
2015-01-14 16:28:08
1411
转载 while(true)循环与CPU占用率问题
一、为什么死循环占用CPU高一个进程如果是死循环,那么占有的CPU会很高,可以操作系统时间片运行的,到了一定时间不是会自动切换到别的进程吗?既然即便是死循环,到时间还是会切换到别的进程,为什么占用CPU会高呢? 到时候的确会切换到别的进程。可以这样理解:当切换到别的进程时,别的进程告诉系统自己没什么事情要做,不需要那么多的时间,这个时候系统就会切换到下一个进程,直到回到这个死循环的
2014-12-30 17:54:09
13308
转载 sql语句中left join、inner join中的on与where的区别
table a(id, type):id type----------------------------------1 1 2 1 3 2 table b(id, class):id class---------------------------------1
2014-12-04 15:57:43
572
原创 HashMap Hashtable ConcurrentHashMap 一点区别
HashMap Hashtable ConcurrentHashMap 区别
2014-11-29 23:21:01
1012
转载 数据库集群实施
分布式数据方案提供功能如下:(1)提供分库规则和路由规则(RouteRule简称RR),将上面的说明中提到的三中切分规则直接内嵌入本系统,具体的嵌入方式在接下来的内容中进行详细的说明和论述;(2)引入集群(Group)的概念,保证数据的高可用性;(3)引入负载均衡策略(LoadBalancePolicy简称LB);(4)引入集群节点可用性探测机制,对单点机器的可用性
2014-11-06 23:08:37
1808
转载 数据库 shard 分片存储
2.1.1什么是数据切分"Shard" 这个词英文的意思是"碎片",而作为数据库相关的技术用语,似乎最早见于大型多人在线角色扮演游戏中。"Sharding" 姑且称之为"分片"。Sharding 不是一门新技术,而是一个相对简朴的软件理念。众所周知,MySQL 5 之后才有了数据表分区功能,那么在此之前,很多 MySQL 的潜在用户都对 MySQL 的扩展性有所顾虑,而是否具备分区功能就成
2014-11-06 22:58:44
8943
转载 ibatis 中 $与#的区别
在sql配置中比如in(#rewr#) 与in ($rewr$)在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,#可以进行与编译,进行类型匹配,而$不进行数据类型匹配,例如: select * from table where id = #id# ,其中如果字段id为字符型,那么#id#表示的就是'id'类型,如果id为整型,那么
2014-10-27 18:06:09
619
转载 linux的less命令
less 在查看之前不会加载整个文件。可以尝试使用 less 和 vi 打开一个很大的文件,你就会看到它们之间在速度上的区别。 在 less 中导航命令类似于 vi。本文中将介绍一些导航命令以及使用 less 的其它一些技巧。1 搜索当使用命令 less file-name 打开一个文件后,可以使用下面的方式在文件中搜索。搜索时整个文本中匹配的部分会被高
2014-10-11 15:27:50
687
转载 mysql异常处理
针对存储过程 、触发器或函数内部语句可能发生的错误或警告信息,需要进行相关异常或称 例外的捕捉,然后作出相应的处理,异常处理的方式如下:DECLARE {CONTINUE | EXIT} HANDLER FOR {SQLSTATE sqlstate_code| MySQL error code| condition_name} handler_actions
2014-10-10 16:17:17
931
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人