自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

helloworld的专栏

helloworld的专栏

  • 博客(21)
  • 资源 (9)
  • 收藏
  • 关注

翻译 Spring Boot 自动配置(auto-configurtion) 揭秘

本章,我们为你揭秘Spring Boot自动配置(Auto Configuration)运行机制,谈到auto-configuration,肯定离不开@EnableAutoConfiguration注解。package org.springframework.boot.autoconfigure;@Target(ElementType.TYPE)@Retention(RetentionPo...

2018-09-30 13:08:15 13743 2

转载 ZooKeeper介绍

我本人曾经使用过 ZooKeeper 作为 Dubbo 的注册中心,另外在搭建 Solr 集群的时候,我使用到了 ZooKeeper 作为 Solr 集群的管理工具。前几天,总结项目经验的时候,我突然问自己 ZooKeeper 到底是个什么东西?想了半天,脑海中只是简单的能浮现出几句话:Zookeeper 可以被用作注册中心。Zookeeper 是 Hadoop 生态系统的一员。构建...

2018-09-30 09:42:48 398

翻译 YAML - Spring Boot 下更好的配置选择?

YAML an alternative to Properties file … with Spring Boot对于许多Java工程师来说,一直习惯于使用properties文件或者xml文件来定义应用程序配置。但SpringBoot允许我们仅通过单个yml文件就可以完成所有与应用相关的配置。补充说明一下:比较不同格式的配置文件的优劣,都会有一定的主观性。但对于SpringBoot配置来说...

2018-09-29 16:02:36 1224

原创 Elastic Job 入门教程系列

Elastic Job 入门教程(一)— 与Spring Boot集成Elastic Job 入门教程(二)— Spring Boot框架下是实现Elastic Job 脚本作业(Script Job)Elastic Job 入门教程(三)— 作业监听Elastic Job 入门教程(四)— 事件追踪Elastic Job 入门教程(五)— 配置Zookeeper集群注...

2018-09-28 13:38:31 2906

原创 Elastic Job 入门教程(六)— “动态”新增脚本类型作业(Script Job)

在Elastic Job 入门教程(二)— Spring Boot框架下是实现Elastic Job 脚本作业(Script Job)中,我们简单介绍了如何在SpringBoot框架下以注解的方式实现脚本类型作业(Script Job),这里我们要提出一个问题?如何在不修改源码的情况下,仅通过增加配置就可以达到新增一个脚本类型的作业?这是有意义的,因为在实际的业务场景中,我们不可能只有一个...

2018-09-27 21:55:58 1536

原创 Elastic Job 入门教程(五)— 配置Zookeeper集群注册中心

在我们之前的示例中,注册中心配置ZookeeperConfiguration中的serverLists配置属性,我们都是使用的Zookeeper单服务器reg-center: server-list: "192.168.43.61:2181" namespace: elastic-job-lite-spring-bootserverLists属性本身是支持多个地址,如: host1:...

2018-09-27 15:37:10 8641 6

原创 Elastic Job 入门教程(四)— 事件追踪

Elastic-Job提供了事件追踪功能,用于查询、统计和监控作业执行历史和执行状态。Elastic-Job-Lite在配置中提供了JobEventConfiguration,目前支持数据库方式配置。事件追踪所配置的DataSource数据库中会自动创建JOB_EXECUTION_LOG和JOB_STATUS_TRACE_LOG两张表以及若干索引。以下是代码示例:定义数据源@Getter@S...

2018-09-26 10:44:34 4786 3

转载 约定由于配置(Convention over Configuration)

###约定优于配置约定优于配置(convention over configuration)[1],也称作按约定编程[2],是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。本质是说,开发人员仅需规定应用中不符约定的部分。例如,如果模型中有个名为Sale的类,那么数据库中对应的表就会默认命名为sales。只有在偏离这一约定时,例如将该表命名为"produc...

2018-09-25 21:02:59 681

原创 Elastic Job 入门教程(三)— 作业监听

接Elastic Job 入门教程(二)— Spring Boot框架下是实现Elastic Job 脚本作业(Script Job),本章我们讨论作业Job的监听。定义监听器@Component@Slf4jpublic class CommonElasticJobListener implements ElasticJobListener { @Override publ...

2018-09-24 21:06:16 1496

原创 Elastic Job 入门教程(二)— Spring Boot框架下是实现Elastic Job 脚本作业(Script Job)

在Elastic Job 入门教程(一)— 与Spring Boot集成这篇文章中,我们简单介绍了Spring Boot与Elastic Job 的集成,并见简单实现了SimpleJob类型作业。本章,我们介绍Spring Boot框架下如何实现Elastic Job的Script Job类型作业。...

2018-09-23 18:46:01 1798

原创 Elastic Job 入门教程(一)— 与Spring Boot集成

注册中心配置@Configurationpublic class RegistryCenterConfig { @Value("${reg-center.server-list}") private String serverList; @Value("${reg-center.namespace}"

2018-09-19 19:37:32 3474

转载 ssh连接远程主机执行脚本的环境变量问题

近日在使用ssh命令 ssh user@remote ~/myscript.sh 登陆到远程机器remote上执行脚本时,遇到一个奇怪的问题:~/myscript.sh: line n: app: command not foundapp是一个新安装的程序,安装路径明明已通过 /etc/profile配置文件加到环境变量中,但这里为何会找不到?如果直接登陆机器remote并执行 ~/...

2018-09-14 11:02:16 4688

原创 Spring Boot 1.0多数据源配置

在Spring Boot 1.x下,我们的多数据源配置如下:读数据库@Configuration@EnableTransactionManagement@EnableJpaRepositories(entityManagerFactoryRef = "entityManagerFactoryPrimary", transactionManagerRef = "transactionMa...

2018-09-13 10:54:58 677

原创 Spring Boot 2.0多数据源配置

两个数据库实例,一个负责读,一个负责写。datasource-reader: type: com.alibaba.druid.pool.DruidDataSource url: jdbc:mysql://192.168.43.61:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=tru...

2018-09-13 09:57:46 611

原创 Spring Batch简单入门(四) - Job启动与监控

接上一章,本章我们介绍Job的启动与监听。Running a JobSpring Boot默认支持自动启动已配置好的Job,我们可以通过配置项**spring.batch.job.enabled=false**来禁止Spring容器自动启动Job。正常情况下,当我们通过调度器调用Job时,整个流程如下: A JobExecution,is the primary storage...

2018-09-11 16:21:54 7138

原创 Spring Batch简单入门(三)- ItemReader 与 ItemWriter

接上一章,Spring Batch本身提供了许多开箱即用的ItemReader与ItemWriter实现。Spring Batch 4针对这些组件又提供了Builder实现,用户可以很方便的通过Builder模式来使用这些组件。本章,我们重点讨论以下几种ItemReader和ItemWriter的使用。ItemReaderFlatFileItemReader对于FlatFi...

2018-09-11 11:51:35 11169

原创 Spring Batch简单入门(二)- Job配置

上一章,我们简单介绍了Spring Batch相关知识,今天我们进一步学习有关如何配置一个简单的Job。我们重新看下这张图。 一个Job对应N个Step(N>=1),一个Step包含一个Reader,一个Processor,一个Writer。我们的代码组织如下: 定义ItemReader @Bean @Qualifier("repositoryItemRe...

2018-09-10 21:20:04 5958

原创 Spring Batch简单入门(一)- 简介

从本章开始的接下来几篇,我们将介绍关于Spring Batch的相关知识。本章,是一个关于Spring Batch的简单入门。Spring Batch根植于Spring Framework大家庭,是一个轻量级的批处理框架,在企业级应用中,我们常见一些批处理业务场景,借助Spring Batch我们可以很方便的开发出健壮、易用的批处理应用。因为Spring Framework框架可以说满...

2018-09-10 20:03:26 20735

翻译 Atomic Variables and ConcurrentMap

AtomicIntegerjava.concurrent.atomic包中包含了许多可以执行原子操作的类,所谓的原子操作是指在多线程并发的情况下无需使用synchronized或者其他锁同步机制的情况下,仍旧可以正确执行的操作,我们就称之为原子操作。 在JVM内部实现上,这些类通过使用compare-and-swap (CAS)来实现原子操作,CAS是CPU内部的一种原子指令,执行速度远比通...

2018-09-04 11:17:18 304 1

翻译 Synchronization and Locks

Synchronized上一章节中,我们初步了解了如何通过ExecutorService来执行并发代码,注意,我们并没有深入讨论多线程间的同步问题,本章,我们将重点讨论线程间同步问题,深入剖析多线程间如何优雅的共享变量,首先,我们从一个简单的例子入手。int count = 0;void increment() { count = count + 1;}如果没有任何同步措...

2018-09-03 16:37:17 316

翻译 Threads and Executors

Threads and RunnablesJava自JDK1.0就支持线程,一般来说,在启动线程之前,我们需要指定线程实际执行方法体,通常我们可以通过重写Runnable接口中的run方法来完成。Runnable task = () -> { String threadName = Thread.currentThread().getName(); System....

2018-09-03 14:43:41 317

3DES加密算法源码

3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称。它相当于是对每个数据块应用三次DES加密算法。 最早的定义了该算法的标准(ANS X9.52,1998年发布)将其描述为“三重数据加密算法(TDEA)”— 即为ANSI X3.92中定义的数据加密算法(DEA)的三次重复操作— 而完全没有使用术语“3DES”或“DES”。FIPS PUB 46-3(1999)定义了“三重数据加密算法”(TDEA),也使用了术语“Triple DES”和“DES”。该标准中互换的使用“数据加密算法”(DEA)和“DES”的概念,其中以此开始DES的定义: 数据加密标准(DES)应当包括下文中的数据加密算法(DES[4])与三重数据加密算法(TDEA,如ANSI X9.52中所描述的) NIST SP 800-67(2004,2008[5])主要使用术语TDEA,但也提到了“Triple DES(TDEA)”。ISO/IEC 18033-3(2005)使用“TDEA”,但其中提到: TDEA通称Triple DES(数据加密标准)。 没有一个定义了本算法的标准使用术语“3DES”。 3DESughhhg34465345556555678==算法== 3DES使用“密钥包”,其包含3个DES密钥,K1,K2和K3,均为56位(除去奇偶校验位)。加密算法为: 密文 = EK3(DK2(EK1(平文))) 也就是说,使用K1为密钥进行DES加密,再用K2为密钥进行DES“解密”,最后以K3进行DES加密。 而解密则为其反过程: 平文 = DK1(EK2(DK3(密文))) 即以K3解密,以K2“加密”,最后以K1解密。 每次加密操作都只处理64位数据,称为一块。 无论是加密还是解密,中间一步都是前后两步的逆。这种做法提高了使用密钥选项2时的算法强度,并在使用密钥选项3时与DES兼容。 密钥选项[编辑] 标准定义了三种密钥选项: 密钥选项1:三个密钥是独立的。 密钥选项2:K1和K2是独立的,而K3=K1 密钥选项3:三个密钥均相等,即K1=K2=K3 密钥选项1的强度最高,拥有3 x 56 = 168个独立的密钥位。 密钥选项2的安全性稍低,拥有2 x 56 = 112个独立的密钥位。该选项比简单的应用DES两次的强度较高,即使用K1和K2,因为它可以防御中途相遇攻击。 密钥选项3等同与DES,只有56个密钥位。这个选项提供了与DES的兼容性,因为第1和第2次DES操作相互抵消了。该选项不再为国家标准科技协会(NIST)所建议[6],亦不为ISO/IEC 18033-3所支持。

2015-01-21

mail.jar mail.jar

mail.jar

2014-05-11

Java2WSDL和WSDL2Java操作指南.doc

Java2WSDL和WSDL2Java操作指南.doc

2014-05-11

Java使用SOAP获取webservice实例解析.doc

Java使用SOAP获取webservice实例解析.doc

2014-05-11

dom4j-1.6.1

dom4j-1.6.1

2014-05-10

servlet-api

servlet-api

2014-05-10

jsp-api.jar

jsp-api.jar

2014-05-10

C++ Builder 汉诺塔算法动态演示系统

采用C++ Buidler开发环境,C++ 语言,结合线程技术,将经典的汉诺塔算法的执行过程动态的演示出来,对于用户理解汉诺塔算法产生巨大的帮助

2009-03-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除