java
dh1027-远征君
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 利用poi给word添加页眉页脚,页眉左边为公司logo图片,右为公司全称,页脚左为公司地址,右为页码总页数
生成带公司logo的页眉 public void createHeader(XWPFDocument doc, String orgFullName, String logoFilePath) throws Exception { /* * 对页眉段落作处理,使公司logo图片在页眉左边,公司全称在页眉右边 * */ CTSectPr sectPr = d原创 2017-09-26 15:31:17 · 20091 阅读 · 18 评论 -
Spring Cloud 简单入门教程 之 Config (九)
Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring Environment和PropertySource抽象相同,因此它们与Spring应用程序非常契合,但可以与任何以任何语言运行的应用程序一起使用。随着应用程序通过从开发人员到测试和生产的部署流程,...原创 2018-06-29 09:47:34 · 192 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 集群config (十)
微服务架构中服务有很多,如果每个服务都要从配置中心获取配置信息,无疑,配置中心的压力会非常大,因此,可以将配置中心集群化。 构建一个Spring Boot项目,取名eureka-server,添加依赖:<dependency> <groupId>org.springframework.cloud</groupId> &lt原创 2018-06-29 09:56:18 · 194 阅读 · 0 评论 -
linux 搭建redis集群 简单教程 -学习笔记
1、linux安装好redis。 2、在同一个服务器上启动多个redis实例(生产环境在不同的服务器): 首先在redis的安装目录下创建一个cluster目录,在redis的安装目录下找到redis.conf,复制一份到cluster下。并将修改以下配置信息: port 7000 //端口7000…. bin...原创 2018-07-24 11:05:22 · 213 阅读 · 0 评论 -
怎样使用自定义注解和AOP实现日志记录 -学习笔记
1、自定义注解package com.dh1027.login.annotation;import java.lang.annotation.*;/** * 日志注解 * Created by heyj2 on 2018/7/12. */@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)@Docu...原创 2018-07-25 13:40:17 · 279 阅读 · 0 评论 -
如何使用自定义注解和Spring AOP实现缓存简单教程
1、注解类package com.dh1027.login.annotation;import java.lang.annotation.*;/** * 缓存注解 * Created by heyj2 on 2018/7/24. */@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)@Docume...原创 2018-07-25 13:41:42 · 1218 阅读 · 0 评论 -
高并发编程知识体系
1.问题1、什么是线程的交互方式?2、如何区分线程的同步/异步,阻塞/非阻塞?3、什么是线程安全,如何做到线程安全?4、如何区分并发模型?5、何谓响应式编程?6、操作系统如何调度多线程?2.关键词同步,异步,阻塞,非阻塞,并行,并发,临界区,竞争条件,指令重排,锁,amdahl,gustafson3.全文概要上一篇我们介绍分布式系统的知识体系,由于单机的性能上限原因我们才不得不发展分布式技术。那么...转载 2019-03-05 14:23:42 · 315 阅读 · 0 评论 -
理解线程池的原理
1.构造:2.入队列。生产者生产消息并放入队列3.出队列。消费者如果阻塞会被唤醒,并且进行锁获取和取队列元素LinkedBlockingQueue1.初始化构造:1.1 链表数据结构2.入队列。生产者生产消息并放入队列3.出队列。消费者如果阻塞会被唤醒,并且进行锁获取和取队列元素DelayedQueue1.构造初始化DelayedQ2.offer插入元素3.take提取数组元素小结ArrayBl...转载 2019-03-06 16:25:37 · 302 阅读 · 0 评论 -
线程池原理及调度过程
1.关于线程池线程池的技术背景在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是一些很耗资源的对象创建和销毁。如何利用已有对象来服务就是一个需要解决的关键问题,其实这...转载 2019-03-07 09:01:47 · 2202 阅读 · 1 评论 -
Java代理实现与原理分析
关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理。一、代理模式代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消...转载 2019-03-15 16:18:40 · 199 阅读 · 0 评论 -
史上最全的微信小程序代码大全分享
微信小程序官方Demo(Hao-Wu/WeApp-Demo) 微信小应用示例代码(phodal/weapp-quick) 微信小应用地图定位demo(giscafer/wechat-weapp-mapdemo) 微信小应用- 掘金主页信息流(hilongjw/weapp-gold) 微信小程序(应用号)示例:微信小程序豆瓣电影(zce/weapp-demo) 微信小程序-豆瓣电影(hin...转载 2019-03-15 16:25:30 · 4128 阅读 · 0 评论 -
Spring MVC启动过程
参看链接 https://www.cnblogs.com/RunForLove/p/5688731.htmlSpring 官方文档 https://docs.spring.io/spring/docs/current/spring-framework-reference/web容器初始化过程将Web应用程序部署到容器中时,在Web应用程序开始处理客户端请求之前,必须按此顺序执行以下步骤。实...原创 2019-03-20 08:55:00 · 310 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Zuul (八)
路由器和过滤器:Zuul 路由在微服务体系结构的一个组成部分。例如,/可以映射到你的Web应用程序,/api/users映射到用户服务和/api/shop映射到店服务。Zuul是Netflix的基于JVM的路由器和服务器端负载均衡器。 Netflix使用Zuul进行以下操作: 认证 洞察 压力测试 金丝雀测试 动态路由 服务迁移 负载脱落 安全 静态响应处理 主动/主动流量...原创 2018-06-29 09:37:13 · 215 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Hystrix (七)
Netflix的创造了一个调用的库Hystrix实现了断路器图案。在微服务架构中,通常有多层服务调用。较低级别的服务中的服务故障可能导致用户级联故障。当对特定服务的呼叫达到一定阈值时(Hystrix中的默认值为5秒内的20次故障),电路打开,不进行通话。在错误和开路的情况下,开发人员可以提供后备。开放式电路会停止级联故障,并允许不必要的或失败的服务时间来愈合。回退可以是另一个Hystrix保护的调...原创 2018-06-28 16:52:28 · 219 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Eureka (二)
服务发现是基于微服务架构的关键原则之一。尝试配置每个客户端或某种形式的约定可能非常困难,可以非常脆弱。Netflix服务发现服务器和客户端是Eureka。可以将服务器配置和部署为高可用性,每个服务器将注册服务的状态复制到其他服务器。 简而言之,Eureka是一个服务注册中心,所有的服务都在这里注册 IJ IDEA File->New->Project->Spring ->initializr原创 2018-01-02 16:34:35 · 387 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Spring Boot (一)
访问 http://start.spring.io 填写Group,Artifact选择好版本之后点击生成,就可以得到一个Spring Boot项目 项目的目录结构如图: pom 文件如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="原创 2017-12-29 15:59:13 · 271 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Eureka Client (三)
有了注册中心,现在可以往注册中心注册服务了。 IJ IDEA File->New->Project->Spring ->initializr, 填写好项目名称等,Finish. 新建好的目录结构和Eureka 一样,将application.property修改成application.yml,加入如下内容:eureka: client: serviceUrl:原创 2018-01-02 17:08:11 · 354 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Feign (五)
Feign是一个声明式的Web服务客户端。这使得Web服务客户端的写入更加方便 要使用Feign创建一个界面并对其进行注释。它具有可插入注释支持,包括Feign注释和JAX-RS注释。Feign还支持可插拔编码器和解码器。Spring Cloud增加了对Spring MVC注释的支持,并使用Spring Web中默认使用的HttpMessageConverters。Spring Cloud集成Ri原创 2018-01-25 10:14:57 · 261 阅读 · 0 评论 -
通过实体类中的某一个字段进行排序的两种方式
最近在开发项目的过程中,涉及到了用实体中的某一个字段进行排序,这里整理出来,留作备用。我是新人,能力有限,今天又看到一个用起来更方便的方法,基于反射的,借鉴一下,同时推荐最后一种方式!方式一:实体类实现Comparable接口的compareTo方法,简单明了[html] view plain copy print?packagecn.hustrc.pojo;/***菜单的实转载 2018-02-02 14:01:01 · 2742 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Ribbon (四)
有了服务注册中心,并且有了服务生产者或者说服务提供者在注册中心注册了服务,这时就可以使用服务了。 为了模拟分布式,新构建一个服务提供者,端口号是8673,启动服务注册中心,启动两个服务。 IJ IDEA File->New->Project->Spring ->initializr, 填写好名称等,Finish. 构建好的项目的目录结构和一个新构建好的Spring Boot目录结构一样原创 2018-01-10 15:54:12 · 275 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Sleuth(六)
在分布式架构中,需要对分布式服务进行治理,也就是要记录到服务的调用和被调用的具体信息,比如调用时间,响应时间等等。称为服务的调用链。记录每个服务的调用链–分布式服务服务跟踪。 Spring Cloud Sleuth为Spring Cloud实现分布式跟踪解决方案。 Span:工作的基本单位 例如,发送RPC是一个新的跨度,以及向RPC发送响应。Span由跨度的唯一64位ID标识,跨度是其中一部...原创 2018-02-24 09:37:02 · 471 阅读 · 0 评论 -
git使用,不小心将不需要提交的文件add到git里面之后的解决办法
使用Git Bash 切换到需要忽略的文件路径下面 执行git rm -r –cached .idea 命令 然后再执行 git commit -m .idea 命令 使用.ignore插件忽略 不需要提交的文件 .ignore 插件的使用方法 添加自己要规避的文件 忽略提交文件操作 忽略不想提交的文件的另外一种方法 http://blog.youkuaiyun.com...原创 2018-06-22 13:57:00 · 5369 阅读 · 0 评论 -
glassfish 应用服务器配置https证书
一、到glassfish安装目录下,D:\glassfish3\glassfish\domains\domain1,备份congfig文件夹(目的是在没配好的情况下还可以回退) 二、将购买证书时的.jks文件重命名成keystore.jks, 替换config文件夹里面的keystore.jks,删除cacerts.jks。将购买证书是的cross.crt,issuer.crt,root.c...原创 2018-06-22 14:29:47 · 1432 阅读 · 1 评论 -
Spring Cloud 简单入门教程 之 Bus (十一)
在配置文件修改时,需要重启服务或者发送一个post请求让服务重新去获取配置,在生产环境中,服务众多,给每个服务重启或者都发送一个post请求去让其重新获取配置这种方式是很灾难的,也不符合微服务的架构理念。Spring Cloud 提供 Bus解决这个问题。 Spring Cloud Bus将分布式系统的节点与轻量级消息代理链接。这可以用于广播状态更改(例如配置更改)或其他管理指令。一个关键的想法...原创 2018-06-29 10:56:11 · 238 阅读 · 0 评论 -
Spring Cloud 微服务 系列学习笔记
最近在学习Spring Cloud 微服务框架,做了如下笔记以便用到时可以回顾Spring Cloud 系列学习基础之 Spring BootSpring Cloud 微服务 系列学习笔记 EurekaSpring Cloud 微服务 系列学习笔记 Eureka ClientSpring Cloud 微服务 系列学习笔记 RibbonSpring Cloud 微服务 系列学习笔...原创 2018-06-27 16:55:29 · 386 阅读 · 0 评论 -
Spring Cloud 简单入门教程 之 Sleuth (六)
在分布式架构中,需要对分布式服务进行治理,也就是要记录到服务的调用和被调用的具体信息,比如调用时间,响应时间等等。称为服务的调用链。记录每个服务的调用链–分布式服务服务跟踪。 Spring Cloud Sleuth为Spring Cloud实现分布式跟踪解决方案。 Span:工作的基本单位 例如,发送RPC是一个新的跨度,以及向RPC发送响应。Span由跨度的唯一64位ID标识,跨度是其中一部...原创 2018-06-28 16:28:33 · 291 阅读 · 0 评论 -
探究 Java 虚拟机栈
前言Java 虚拟机的内存模型分为两部分:一部分是线程共享的,包括 Java 堆和方法区;另一部分是线程私有的,包括虚拟机栈和本地方法栈,以及程序计数器这一小部分内存。今天我就 Java 虚拟机栈做一些比较浅的探究。熟悉 Java 的同学应该都知道了,JVM 是基于栈的。但是这个“栈” 具体指的是什么?难道就是虚拟机栈?想要回答这个问题我们先要从虚拟机栈的结构谈起。虚拟机栈何为虚拟机栈虚...转载 2019-03-22 13:08:47 · 284 阅读 · 0 评论
分享