java
文章平均质量分 59
落夜Lye
一入IT深似海
展开
-
spring @Transactional注解参数详解
事物注解方式: @Transactional当标于类前时, 标示类中所有方法都进行事物处理 , 例子:1 @Transactional public class TestServiceBean implements TestService {}当类中某些方法不需要事物时: @Transactional public class TestServiceBean转载 2017-11-18 10:28:18 · 250 阅读 · 0 评论 -
Spring缓存注解@Cacheable、@CachePut和@CacheEvict
1、@Cacheable:主要用来配置方法,能够根据方法的请求参数对其结果进行缓存。即当重复使用相同参数调用方法的时候,方法本身不会被调用执行,即方法本身被略过了,取而代之的是方法的结果直接从缓存中找到并返回了。参数介绍:value:缓存的名字,必须指定至少一个。key:缓存的key,可以为空,如果指定要按照SpEL表达式编写;如果不指定,则缺省按照方法的所有参数进行组转载 2017-02-24 09:43:25 · 904 阅读 · 0 评论 -
HashMap HashTable和ConcurrentHashMap
HashMap和Hashtable的区别HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们之间的分别。主要的区别有:线程安全性,同步(synchronization),以及速度。HashMap几乎可以等价于Hashtable,除了HashMap是非synchronized的,并可以接受null(HashMap可以接受为null的键值(key)和值转载 2017-02-25 15:33:32 · 226 阅读 · 0 评论 -
Liunx Zookeeper集群安装
Linux安装zookeeper集群步骤(本文中在一台服务器测试): 1.安装zookeeper: 从官网上面下载zookeeper安装包(本文使用的版本为zookeeper-3.4.9),放到/usr/java目录下面然后解压 在服务器上创建目录mkdir zookeepercd zookeepermkdir server1mkdir server2mkdir原创 2017-12-08 16:42:03 · 263 阅读 · 0 评论 -
Spring Data JPA根据属性名查询方法
Spring Data Jpa 支持定义在Repository接口中的方法名来定义查询,方法名是根据实体类的属性来确定的。 1)常规查询public interface PersonRepository extends JpaRepository{ //通过名字相等查询 List findByName(String name); //通过名字Liek查询,参数为name Lis原创 2017-11-16 10:40:45 · 6301 阅读 · 2 评论 -
Linux上安装ZooKeeper并设置开机启动(CentOS7+ZooKeeper3.4.10)
1下载Zookeeper 地址:http://mirror.bit.edu.cn/apache/zookeeper/2安装启动测试 说明:(以下操作都是使员管理员账号进行的)2.1上载压缩文件并解压 这里使用的是CentOS7的操作系统。在opt目录下新建一个名为zookeeper的目转载 2017-12-10 09:31:46 · 260 阅读 · 0 评论 -
liunx docker 安装 zookeeper
下载docker yum install docker 启动Docker并保持开机自启systemctl start dockersystemctl enable docker;下载zookeeperdocker pull zookeeper查看镜像docker images生成zookeep原创 2017-12-11 10:03:42 · 563 阅读 · 0 评论 -
Java HashMap
1、哈希的原理哈希的出现时因为传统数据结构如线性表(数组,链表等),树中,关键字与其它的存放位置不存在对应的关系。因此在查找关键字的时候需要逐个比对,虽然出现了二分查找等各种提高效率的的查找算法。但是这些并不足够,希望在查询关键字的时候不经过任何比较,一次存取便能得到所查记录。因此,我们必须在关键字和其对应的存储位置间建立对应的关系f。这种对应的关系f被称为哈希函数,按此思想建立的表为哈希原创 2017-02-16 23:17:04 · 226 阅读 · 0 评论 -
docker 容器启动时间同步
最近在学习docker容器发现时间不同步问题,时区不一致,刚好 相差8小时解决方法: 先 删除容器 ,重新启动镜像,在在启动参数中添加-v /etc/localtime:/etc/localtime:ro;如: docker run -d -p 2181:2181 -p 2888:2888 -p 3888:3888 -v /etc/localtim原创 2017-12-12 11:44:25 · 3613 阅读 · 0 评论 -
CentOS7安装ActiveMQ
1、简介ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现2、activemq的特性1. 多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP。应用协议: OpenWire,Stomp REST,WS N原创 2017-01-24 13:14:29 · 4361 阅读 · 0 评论 -
fastDFS文件系统安装
环境: CentOS 7.1用户: root数据目录: /fastdfs (注: 数据目录按你的数据盘挂载路径而定)安装包:FastDFS v5.11libfastcommon-master.zip(是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库)fastdfs-nginx-module_v1.16.tar.gznginx-1.11.5.tar.原创 2017-12-17 12:26:39 · 370 阅读 · 0 评论 -
VirtualBox实现宿主机和虚拟机之间网络的通讯
环境:宿主机操作系统 Windows10虚拟机软件 VirtualBox虚拟机操作系统 Linux7.1 VirtualBox的提供了四种网络接入模式,它们分别是: 1、NAT 网络地址转换模式(NAT,Network Address Translation) 2原创 2017-12-17 19:22:44 · 7093 阅读 · 0 评论 -
java后台批量下载文件压缩ZIP
@RequestMapping(value = "xxx/xxx",method = RequestMethod.POST ) @ResponseBody public Map feedBackDirectMultiDownload(HttpServletRequest request,HttpServletResponse response) throws IOE原创 2018-01-04 08:48:15 · 5331 阅读 · 0 评论 -
eclipse git提交代码 错误 401 unauthorized
最近在自己测试git提交代码发现 本地文件通过tortoiseGIT 提交给git服务器远程仓库可以提交成功,但是通过eclipse egit插件提交代码到远程仓库一直提示 401 unauthorized 错误。网上也找了很多方法总结下:一:安装EPP Marketplace Client (我安装了 还是不行)egit 有个bug:“EGit身份验证器阻止登录对话框”。 ...原创 2018-03-07 18:03:31 · 5510 阅读 · 0 评论 -
转载 Java源码分析:关于 HashMap 1.8 的重大更新
转载: http://blog.csdn.net/carson_ho/article/details/79373134前言HashMap 在 Java 开发中非常常见而HashMap 1.8 相对于 HashMap 1.7 更新多今天,我将通过源码分析HashMap 1.8 ,从而讲解HashMap 1.8 相对于 HashMap 1.7 的更新内容,希望你们会喜欢。 本文基于版本 JDK 1....转载 2018-03-02 12:13:39 · 316 阅读 · 0 评论 -
centos7 安装svn服务
1.安装SVN服务器端yum install subversion subversion安装在/bin目录:$ which svnserve/bin/svnserve2.创建一个svn版本仓库mkdir -p /usr/java/svn//创建一个svn版本仓库(可以随便起名字)svnadmin create /usr/java/svn/spring-hello3.修改数据根目录subve...原创 2018-03-05 13:23:56 · 1959 阅读 · 0 评论 -
centos7 安装gogs git 服务器
yum 源仓库里的 Git 版本更新不及时,最新版本的 Git 是 1.8.3.1,但是官方最新版本已经到了 2.16.2。想要安装最新版本的的 Git,只能下载源码进行安装。1.查看 yum 源仓库的 Git 信息:yum init git2.依赖库安装 # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-d...原创 2018-03-06 11:42:38 · 946 阅读 · 0 评论 -
sql server日期时间转字符串
一、sql server日期时间函数Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17 0原创 2017-08-28 09:38:29 · 11095 阅读 · 0 评论 -
SELECT 失败,因为下列 SET 选项的设置不正确: 'ARITHABORT'。请确保 SET 选项正确无误
SQL 执行语句是报错“SELECT 失败,因为下列 SET 选项的设置不正确: 'ARITHABORT'……”解决方法:“你先在Management Studio里面,新建查询,然后执行:SELECT is_ARITHABORT_on FROM sys.databases看看你数据库中的ARITHABORT选项是开(1)还是关(0)然后原创 2017-09-05 18:57:53 · 3205 阅读 · 0 评论 -
ArrayList、Vector、HashMap、HashSet的默认初始容量、加载因子、扩容增量
转载声明:原文转自http://www.cnblogs.com/xiezie/p/5511840.html 这里要讨论这些常用的默认初始容量和扩容的原因是:当底层实现涉及到扩容时,容器或重新分配一段更大的连续内存(如果是离散分配则不需要重新分配,离散分配都是插入新元素时动态分配内存),要将容器原来的数据全部复制到新的内存上,这无疑使效率大大降低。加载因子的系数小于等转载 2017-02-16 15:47:23 · 542 阅读 · 0 评论 -
java中List、ArrayList、LinkedList的区别
List接口是Collection的子接口,用于定义线性表数据结构。可以讲List利旧为存放对象的数组,只不过其元素个数可以动态的增加或减少。 该集合的特点:元素可重复,并且有序,允许以下标的形式操作元素。 List接口的两个常见实现类为ArrayList和LinkedList,分别用动态数组和链表的方式实现了List接口。ArrayList和LinkedLis原创 2017-02-16 14:39:11 · 575 阅读 · 0 评论 -
Nginx的优缺点
nginx 相对 apache 的优点:轻量级,同样起web 服务,比apache 占用更少的内存及资源抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单社区活跃,各种高性能模块出品迅速啊Nginx本身就是一个反向代理服务器Nginx支持7层负载均衡nginx 适合做静态,简转载 2017-02-08 16:06:33 · 10419 阅读 · 1 评论 -
Redis和Memcached的区别
Redis与Memcached的区别传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发转载 2017-01-19 15:01:58 · 275 阅读 · 0 评论 -
搭建Nginx(负载均衡)+Redis(Session共享)+Tomcat集群
阅读目录一、环境搭建二、Nginx的安装配置与测试三、配置Tomcat集群四、用Nginx实现集群的负载均衡五、安装配置Redis并实现Session共享感谢以下博主的精彩博文,虽然坑较多。。内容重复较多。。一、环境搭建 Linux下搭建Tomcat7、Java8 二、Nginx的安装配置与测试看博主另一篇文章转载 2017-01-19 19:43:47 · 398 阅读 · 0 评论 -
java中堆内存和栈内存的区别
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由new创建的对象和数组。 在堆中分配的内存,由Java虚拟机的转载 2017-01-20 16:11:21 · 276 阅读 · 0 评论 -
Active的多种部署方式
1、Master-Slave部署方式1)shared filesystem Master-Slave部署方式主要是通过共享存储目录来实现master和slave的热备,所有的ActiveMQ应用都在不断地获取共享目录的控制权,哪个应用抢到了控制权,它就成为master。多个共享存储目录的应用,谁先启动,谁就可以最早取得共享目录的控制权成为master,其他的应用就只能作转载 2017-01-24 14:12:51 · 712 阅读 · 0 评论 -
java中equals和==的区别
equals 方法是 java.lang.Object 类的方法。方式一:String a = “aaa” ;方式二:String b = new String(“aaa”);两种方式都能创建字符串对象,但方式一要比方式二更优。因为字符串是保存在常量池中的,而通过new创建的对象会存放在堆内存中。一:常量池中已经有字符串常量”aaa”通过方式一创转载 2017-02-16 10:11:06 · 192 阅读 · 0 评论 -
response.setHeader各种参数
一秒刷新页面一次 response.setHeader("refresh","1"); 二秒跳到其他页面 response.setHeader("refresh","2;URL=otherPagename");没有缓存:response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no转载 2017-03-06 14:07:21 · 2253 阅读 · 0 评论 -
ajax请求无法下载文件
原因ajax的返回值类型是json,text,html,xml类型,或者可以说ajax的接收类型只能是string字符串,不是流类型,所以无法实现文件下载。但用ajax仍然可以获得文件的内容,该文件将被保留在内存中,无法将文件保存到磁盘。这是因为JavaScript无法和磁盘进行交互,否则这会是一个严重的安全问题,js无法调用到浏览器的下载处理机制和程序,会被浏览器阻塞。实现下原创 2017-03-10 10:07:35 · 2342 阅读 · 0 评论 -
Java分布式应用基础
原文链接:https://www.zhihu.com/question/22764869/answer/31277656来源:知乎大型分布式网站架构设计与实践http://item.jd.com/11529266.html大型网站技术架构:核心原理与案例分析http://item.jd.com/11322972.html大型网站系统与Java中间件实践htt转载 2017-02-14 17:43:07 · 272 阅读 · 0 评论 -
Java后台下载文件时IE浏览器出现文件名乱码
原文:http://blog.csdn.net/u012117531/article/details/54808960使用Servlet实现文件下载功能时,使用IE下载出现文件名乱码;网上常见的解决办法是通过"user-agen"来判断浏览器:[java] view plain copyif (req.getHeader("user-ag转载 2017-03-24 18:11:39 · 1305 阅读 · 0 评论 -
Java中的23种设计模式详解(转)
资源:http://download.csdn.net/detail/zhangerqing/4835830原文链接:http://blog.csdn.net/zhangerqing设计模式(Design Patterns) ——可复用面向对象软件的基础设计模式(Design patter转载 2017-03-20 23:07:07 · 365 阅读 · 0 评论 -
Myeclipse git常用操作
1、从github获取项目Import -> Git -> Projects from git ->Clone URI 填写github上的项目https网址即可。2、提交github右键项目 team - > Commit -> Commit and Pust 既Commit 到本地仓库,又Push 到远程github3、单个文件回滚(本地)右键文件 team -> S原创 2017-08-01 17:46:31 · 568 阅读 · 0 评论 -
SQl Server 添加字段、修改字段
Sql Server 增加字段、修改字段、修改类型、修改默认值1、修改字段名: alter table 表名 rename column A to B2、修改字段类型: alter table 表名 alter column 字段名 type not null3、修改字段默认值 alter table 表名 add default (0原创 2017-08-25 15:37:46 · 30549 阅读 · 0 评论 -
设置oracle最大游标
1、查看ORACLE最大游标数 C:\Documents and Settings\Administrator>sqlplus "sys/orcl@orcl as sysdba" SQL> show parameter open_cursors; NAME TYPE VALUE ----------------------------------- -原创 2017-09-13 09:21:03 · 769 阅读 · 0 评论 -
使用Jackson的@JsonFormat注解时出现少八个小时
使用Jackson的@JsonFormat注解时出现少八个小时比如数据库存的日期是2015-01-05,转成json则变成了2015-01-04解决办法:@JsonFormat(pattern="yyyy-MM-dd") public Date getRegistDate() { return this.registDate; }改成@Json转载 2017-01-17 11:00:36 · 692 阅读 · 0 评论