- 博客(37)
- 资源 (7)
- 收藏
- 关注
原创 JPA @GeneratedValue AUTO 插入实体提示主键冲突
一、JPA提供的四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO.TABLE:使用一个特定的数据库表格来保存主键。 SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。 IDENTITY:主键由数据库自动生成(主要是自动增长型) AUTO:主键由程序控制。 AUTO默认的配置。如果不指定主键生成策略,默认为AUTO。生成原理: JPA 会在数据库中生成 hibernate_sequence, 主键也在该表中维护。问题描述: 程序...
2022-03-29 16:08:29 990
转载 Service Mesh服务网格新生代--Istio
Service Mesh新秀,初出茅庐便声势浩荡,前有Google,IBM和Lyft倾情奉献,后有业界大佬俯首膜拜,这就是今天将要介绍的主角,扛起Service Mesh大旗,掀起新一轮微服务开发浪潮的Istio!今天的主角名叫 Istio,估计很多同学在此之前可能完全没有听过这个名字。请不必介意,没听过很正常,因为Istio的确是一个非常新的东西,出世也才四个月而已。今天的内容将会分成三...
2019-07-15 17:21:39 258
转载 堆排序
主要思想(升序):将待排序序列构造成一个大顶堆,此时,堆顶就是该序列的最大值。将堆顶与末尾元素交换,此时末尾元素就是最大值。然后将剩余 n-1 个元素重新构造一个大顶堆,这样得到n个元素的次小值。如此反复执行,得到一个有序序列。步骤:1、创建大鼎堆;从最后一个非叶子节点从下到上、从右到左调整堆2、将堆鼎与堆尾交换3、调整堆结构 比较堆顶与子节点,如堆顶小于子节...
2019-07-15 16:51:50 140
转载 Latency numbers every programmer should know
Latency numbers every programmer should knowLatency numbers every programmer should knowL1 cache reference ......................... 0.5 nsBranch mispredict ............................ 5 nsL2 ...
2019-07-15 16:49:49 226
转载 Java抽象类与接口的设计理念差异
1、抽象类与接口的抽象层次是不同的抽象类是对类抽象,接口是对行为抽象。类包含了属性与行为,所以说接口是更具体的抽象。2、抽象类与接口的设计层次是不同的抽象类是一种自下而上的设计,先有子类才能提取共同的属性与行为,抽象出父类;接口是一种自上而下的设计,先规定行为方法,只要可以实现这些行为,就可以成为接口的实现类。3、抽象类与其派生类的关系和接口与其实现类的关系本质是不同的...
2018-04-12 14:06:15 274
原创 java 引用类型作为方法参数使用问题
引用类型作为方法的参数,在参数被垃圾回收前的任意地方都有可能被修改。常见的List 作为参数,在没有保护机制的前提下,可能在你不知情的情况下被修改, 然后恭喜你踩雷了,使用时一定要非常小心,尤其是多人合作时!!!
2017-12-06 17:28:30 857
转载 Java中byte[]转String问题 丢失字节
最近的项目中要使用到把byte[]类型转换成String字符串然后通过网络发送,但发现发现出去的字符串和获取的字符串虽然是一样的,但当用String的getBytes()的方法得到的byte[]跟原来的byte[]是不一样的。bytebytes[] = new byte[] { 50, 0, -1, 28, -24 };String string = new String(
2017-05-26 18:01:49 7715 4
转载 第30课 Master的注册机制和状态管理解密
一 、master对其他组件注册的处理1, master接受注册的对象主要就是:driver,application,worker;需要补充说明executor不会注册给master,executor是注册给driver中的schedulerbackbend的;2, worker是再启动后主动向master注册的,所以如果在生产环境下加入新的worker到已经正在运行的Spark集
2016-07-02 15:35:50 554
转载 第29课 Master HA彻底解密
1、MasterHA解析 2、Master HA的四种方式 3、Master HA的内部工作机制 4、Master HA的源码解析实际提交程序的时候,提交给作为Leader的Master;程序在运行前是粗粒度的资源分配模式,一般一个Master挂掉后,并不影响集群的运行。一、Master HA解析 1、生产环境下一
2016-06-26 17:01:40 698
转载 第28课 Spark天堂之门解密
一:Spark天堂之门:SparkContext!1, Spark程序在运行的时候分为Driver和Executors两部分;2, Spark的程序编写是基于SparkContext的,具体来说包含两方面:a) Spark编程的核心基础---RDD,是由SparkContext来最初创建(第一个RDD一定是由SparkContext来创建的);b)
2016-06-26 11:43:07 624
转载 更好的Java
Java是最流行的语言之一,但是似乎没人喜欢使用它。好吧,Java仅仅是一种“还好”的编程语言。自从Java 8的面世,我决定编辑一个关于Java的列表,包括库、最佳实践以及工具让我们能更好的使用Java。 这篇文章在Github上,你可以自由的添加你所使用到的一些Java工具及最佳实践。风格结构构建者模式Dependency injectionAvoid
2016-06-25 11:10:51 459
转载 maven 不同环境打包方案
大型项目中,分开发环境、测试环境、生产环境等;不同环境,配置不同,或数据源,或服务器,或数据库等;问题来了,如何使用Maven针对不同的环境来打包呢?Maven提供了Profile的概念,用来解决此类问题,其原理很简单,就是使用变量替换;举个例子来说明,测试项目目录结构如下图所示:比如开发环境和生产环境的数据库不同,db.prop
2016-06-23 15:28:34 14021
转载 25 Spark Sort-Based Shuffle内幕彻底解密
本期内容:1 为什么使用Sort-Based Shuffle2 Sort-Based Shuffle 实战3 Sort-Based Shuffle 内幕4 Sort-Based Shuffle的不足一、为什么需要Sort Based Shuffle?1、Shuffle一般包含两阶段任务;第一部分,产生Shuffle数据
2016-06-18 18:10:58 539
转载 五分钟理解一致性哈希算法(consistent hashing)
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正
2016-06-18 12:01:31 275
转载 Redis 分区实现原理
摘要Redis Partitioning即Redis分区,简单的说就是将数据分布到不同的redis实例中,因此对于每个redis实例所存储的内容仅仅是所有内容的一个子集。分区(Partitioning)不仅仅是Redis中的概念,几乎是所有数据存储系统都会涉及到的概念,这篇文章将会在理解分区基本概念的基础之上进一步了解Redis对分区的支持。我们为什么要分区我们为什么要分区
2016-06-18 10:42:30 8865
转载 mybatis中使用in查询时的注意事项
1. 当查询的参数只有一个时 findByIds(List ids) 1.a 如果参数的类型是List, 则在使用时,collection属性要必须指定为 list id="findByIdsMap" resultMap="BaseResultMap"> Select refid="Base_Column_List
2016-06-14 13:41:34 1758
原创 使用 aop拦截 springMVC的controller并获取请求参数及返回结果
有人说使用aop拦截不到springMVC的controller,一般出现此种情况大多是由于配置错误造成,不废话直接进入主题:1、applicationContext.xml 配置扫描 除@controller外的bean2、 applicationContext-mvc.xml 配置扫描 @controller bean
2016-06-08 15:16:59 17416
转载 Spring配置项<context:annotation-config/>解释说明
在基于主机方式配置Spring的配置文件中,你可能会见到这样一条配置,他的作用是式地向 Spring 容器注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor 以及 RequiredAnnotationBeanPostPr
2016-06-08 14:18:23 253
转载 MongoDB与物联网应用讲座
我是TJ,来自MongoDB的高级解决方案架构师,主要工作是帮助客户成功使用MongoDB,涉及到模式设计,最佳操作性能调优等。那么什么是物联网呢?它是技术领域排名第二或第三的流行词汇。根据profoundry的数据,在30天的时间里,就出现了9300万的谷歌搜索结果和3万6千的推特提到了物联网。作为一个流行词汇,这就意味着有无数的解释,这样就使得其很难有一个人们普遍认同的定义
2016-04-15 16:36:03 4117
转载 jQuery Validate 插件
来源:http://www.runoob.com/jquery/jquery-plugin-validate.html jQuery ValidatejQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编
2016-03-09 11:05:39 386
原创 mysql 数据 移植到mongodb方式
不废话,直接上工具 mongolfier(https://github.com/iolo/mongolfier)支持脚本编写,非常灵活,速度还可以。
2016-01-28 19:20:26 393
原创 spring 声明式事务、异步调用、AOP灯增强类功能 失效问题
今天测试的时候发现一个问题,就是我们现有项目中的事务配置是无效的,原因如下:服务器启动时配置文件的加载顺序是 web.xml --->applicationContx.xml(spring总配置文件)-->applicationContext-mvc.xml,由于applicationContx.xml中Controller会先进行扫描装配,但是此时service还没有进行事务增强
2015-11-10 15:41:42 776
转载 Java发送邮件javax.mail
在下载使用javax.mail的jar包时候,注意:有的jar没有包含sun的实现,只包含了api,这类jar名称通常为javax.mail-api-x.x.x.jar,在使用smtp协议发邮件过程中会报错:[java] view plaincopyjava.lang.ClassNotFoundException: com.sun.m
2015-10-09 11:34:57 503
转载 Mybatis List列表In查询实现的注意事项
在SQL开发过程中,动态构建In集合条件查询是比较常见的用法,在Mybatis中提供了foreach功能,该功能比较强大,它允许你指定一个集合,声明集合项和索引变量,它们可以用在元素体内。它也允许你指定开放和关闭的字符串,在迭代之间放置分隔符。这个元素是很智能的,它不会偶然地附加多余的分隔符。下面是一个演示示例: Select from jria wher
2015-09-22 14:46:28 2181
转载 activemq 控制面板说明
Number Of Consumers 消费者 这个是消费者端的消费者数量 Number Of Pending Messages 等待消费的消息 这个是当前未出队列的数量。可以理解为总接收数-总出队列数 Messages Enqueued 进入队列的消息 进入队列的总数量,包括出队列的。 这个数量只增不减 Messages Dequeued 出了队列的消息 可以理解为是消费这
2015-08-06 11:36:45 1694
转载 解决Cannot change version of project facet Dynamic web module to 2.x
我们用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的,而一般现在至少都是2.5,在Project Facets里面修改Dynamic web module为2.5的时候就会出现Cannot change version of project facet Dy
2015-07-21 14:58:23 376
原创 jackson json 序列化与反序列化时json中字段名称问题
在使用jackson进行序列化与反序列时,难免遇到名称不一致问题,该如何进行匹配呢?下面有一个场景:public clsss RequestMsg{private String osType;@JsonProperty("os_type")public String getOs_Type(){return this.osType;}@JsonProp
2015-07-16 18:24:42 21007 1
转载 前后端分离了,然后呢?
前言前后端分离已经是业界所共识的一种开发/部署模式了。所谓的前后端分离,并不是传统行业中的按部门划分,一部分人纯做前端(HTML/CSS/JavaScript/Flex),另一部分人纯做后端,因为这种方式是不工作的:比如很多团队采取了后端的模板技术(JSP, FreeMarker, ERB等等),前端的开发和调试需要一个后台Web容器的支持,从而无法做到真正的分离(更不用提在部署的时候
2015-06-25 17:11:53 786
转载 CountDownLatch的介绍和使用
CountDownLatch的介绍和使用本文由arthinking发表于3年前 | Java基础 | 评论数 5 | 被围观 19,761 views+1、类介绍2、使用场景3、方法说明4、相关实例1、类介绍java.util.concurrent类 CountDownLatchjava.lang.Objectjava.util.concurr
2015-06-15 14:18:51 347
转载 Memcache,Redis,MongoDB(数据缓存系统)方案对比与分析
一、问题: 数据库表数据量极大(千万条),要求让服务器更加快速地响应用户的需求。二、解决方案: 1.通过高速服务器Cache缓存数据库数据 2.内存数据库 (这里仅从数据缓存方面考虑,当然,后期可以采用Hadoop+HBase+Hive等分布式存储分析平台)三、主流解Cac
2015-05-25 11:43:00 403
转载 java系统高并发解决方案(转载)
一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经不是
2015-05-25 11:23:22 460
转载 MYSQL远程登录权限设置
Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录:1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;IDENTIFIED BY后跟的是密码,可设为空。2. FLUSH privileges; 更新 Mysql为了安全性,
2015-05-25 11:06:23 425
转载 redis 主从
一、原理Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面是关于redis主从复制的一些特点:1.master可以有多个slave2.除了多个slave连到相同的master外,slave也可以连接其他slave形成图状结构3.主从复制不会阻塞master
2015-05-25 11:00:30 325
转载 redis数据丢失及解决
Redis的数据回写机制Redis的数据回写机制分同步和异步两种,同步回写即SAVE命令,主进程直接向磁盘回写数据。在数据大的情况下会导致系统假死很长时间,所以一般不是推荐的。异步回写即BGSAVE命令,主进程fork后,复制自身并通过这个新的进程回写磁盘,回写结束后新进程自行关闭。由于这样做不需要主进程阻塞,系统不会假死,一般默认会采用这个方法。个人感觉方法2采用fork
2015-05-25 10:54:09 465
转载 几百万的数据,mysql快速高效创建索引
有一个问题,一张表有3百万条记录,随着时间的增加,记录量会更多,此时查询速度很慢。在创建此表前没有未相应字段添加索引,所以此时需要为表添加索引。但是因为数据量大的原因,索引添加不成功,想了很多办法,终于在短时间内解决了。总的思想就是,将数据导出,创建索引,然后将数据导回。 办法如下: 1、进入mysql界面。mysql -uroot -hlocalhost -plo
2015-05-25 10:46:59 3791
转载 java中抽象类和接口的作用与区别
抽象类与接口的区别 abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择
2015-05-25 08:15:00 399
转载 数据库分库分表(sharding)系列
(一) 拆分实施策略和示例演示(二) 全局主键生成策略(三) 关于使用框架还是自主开发以及sharding实现层面的考量(四) 多数据源的事务处理(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案(一) 拆分实施策略和示例演示第一部分:实施策略图1.数据库分库分表(sharding)实施策略图解1.准
2015-05-22 18:24:29 621
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人