override

设计模式——代理模式

不羁的心 提交于 2020-03-21 09:18:05
基本原理: //源接口 public interface Sourceable { public void method(); } //实现接口类 public class Source implements Sourceable{ @Override public void method() { // TODO Auto-generated method stub System.out.println("源方法"); } } //代理对象实现类——将实现类 封装到 代理实现类,同时实现同一个接口 public class Proxy implements Sourceable{ private Sourceable source; public Proxy(Sourceable source) { this.source = source; } @Override public void method() { // TODO Auto-generated method stub System.out.println("before invoke"); source.method(); System.out.println("after invoke"); } } //测试 public class Demo { public static void main(String[]

hibernate4 baseDao的封装

半腔热情 提交于 2020-03-21 01:14:21
1.BaseDao.java 基础类接口 package com.itv.launcher.util; import java.io.Serializable; import java.util.Collection; import java.util.List; /** * @ClassName: IBaseDao * @Description: Dao封装接口 * @author yz * @date 2014年6月16日17:05:17 */ public interface IBaseDao<T, ID extends Serializable> { /** * <保存实体> * <完整保存实体> * @param t 实体参数 */ public abstract void save(T t); /** * <保存或者更新实体> * @param t 实体 */ public abstract void saveOrUpdate(T t); /** * <load> * <加载实体的load方法> * @param id 实体的id * @return 查询出来的实体 */ public abstract T load(ID id); /** * <get> * <查找的get方法> * @param id 实体的id * @return 查询出来的实体 */

Spring注解

徘徊边缘 提交于 2020-03-18 19:47:06
3 月,跳不动了?>>> 一、Bean的生命周期 流程 Bean创建 —— 初始化 —— 销毁 创建: 单实例:在容器启动时创建对象 多实例:每次调用时创建对象 初始化: 都是在对象创建完成后,调用初始化方法 销毁: 单实例:容器关闭时,调用销毁方法 多实例:容器不会管理这个bean,只能手动调用销毁方法 实现方式 在 @Bean 注解上指定初始化( initMethod )、销毁方法( destroyMethod ) @Bean(initMethod = "init", destroyMethod = "destroy") public Car car(){ return new Car(); } 让Bean实现 InitializingBean 和 DisposableBean 接口,重写它们的方法 public class Cat implements InitializingBean, DisposableBean { public Cat() { System.out.println("Cat...Construct..."); } @Override public void afterPropertiesSet() throws Exception { System.out.println("Cat...init..."); } @Override public

[WPF 学习] 7.1 多页打印

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-16 12:28:06
1.自定义打印类 public class MyDocumentPaginator : DocumentPaginator { private int _PageCount; public override bool IsPageCountValid => true; public override int PageCount => _PageCount; public override Size PageSize { get; set; } public override IDocumentPaginatorSource Source => null; public override DocumentPage GetPage(int pageNumber) { DrawingVisual visual = new DrawingVisual(); using (DrawingContext dc = visual.RenderOpen()) { dc.DrawText(new FormattedText($"第{pageNumber}页", System.Globalization.CultureInfo.CurrentCulture, FlowDirection.LeftToRight, new Typeface("仿宋体"), 14, Brushes.Black, 1),

聊聊skywalking的lettuce-plugin

丶灬走出姿态 提交于 2020-03-14 11:14:26
序 本文主要研究一下skywalking的lettuce-plugin skywalking-plugin.def skywalking-6.6.0/apm-sniffer/optional-plugins/lettuce-5.x-plugin/src/main/resources/skywalking-plugin.def lettuce-5.x=org.apache.skywalking.apm.plugin.lettuce.v5.define.AbstractRedisClientInstrumentation lettuce-5.x=org.apache.skywalking.apm.plugin.lettuce.v5.define.AsyncCommandInstrumentation lettuce-5.x=org.apache.skywalking.apm.plugin.lettuce.v5.define.ClientOptionsInstrumentation lettuce-5.x=org.apache.skywalking.apm.plugin.lettuce.v5.define.RedisChannelWriterInstrumentation lettuce-5.x=org.apache.skywalking.apm.plugin.lettuce.v5

聊聊skywalking的jedis-pulgin

你。 提交于 2020-03-13 23:17:58
序 本文主要研究一下skywalking的jedis-pulgin skywalking-plugin.def skywalking-6.6.0/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/resources/skywalking-plugin.def jedis-2.x=org.apache.skywalking.apm.plugin.jedis.v2.define.JedisClusterInstrumentation jedis-2.x=org.apache.skywalking.apm.plugin.jedis.v2.define.JedisInstrumentation skywalking的jedis-pulgin提供了JedisClusterInstrumentation及JedisInstrumentation两个增强 JedisClusterInstrumentation skywalking-6.6.0/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/jedis/v2/define/JedisClusterInstrumentation.java public

JFinal HelloWorld

▼魔方 西西 提交于 2020-03-11 03:30:13
1.导jar包 1 <dependency> 2 <groupId>com.jfinal</groupId> 3 <artifactId>jfinal-undertow</artifactId> 4 <version>2.0</version> 5 </dependency> 6 7 <dependency> 8 <groupId>com.jfinal</groupId> 9 <artifactId>jfinal</artifactId> 10 <version>4.8</version> 11 </dependency> 2.DemoConfig 1 public class DemoConfig extends JFinalConfig { 2 @Override 3 public void onStart() { 4 System.out.println("我是开始"); 5 } 6 7 @Override 8 public void configConstant(Constants constants) { 9 constants.setDevMode(true); 10 } 11 12 @Override 13 public void configRoute(Routes routes) { 14 routes.add("/hello",HelloController

聊聊skywalking的http-async-client-plugin

拈花ヽ惹草 提交于 2020-03-10 23:12:53
序 本文主要研究一下skywalking的http-async-client-plugin skywalking-plugin.def skywalking-6.6.0/apm-sniffer/apm-sdk-plugin/httpasyncclient-4.x-plugin/src/main/resources/skywalking-plugin.def httpasyncclient-4.x=org.apache.skywalking.apm.plugin.httpasyncclient.v4.define.HttpAsyncClientInstrumentation httpasyncclient-4.x=org.apache.skywalking.apm.plugin.httpasyncclient.v4.define.SessionRequestInstrumentation httpasyncclient-4.x=org.apache.skywalking.apm.plugin.httpasyncclient.v4.define.HttpAsyncRequestExecutorInstrumentation skywalking的http-async-client-plugin定义了三个增强,分别是HttpAsyncClientInstrumentation

聊聊skywalking的httpclient-plugin

混江龙づ霸主 提交于 2020-03-09 21:58:35
序 本文主要研究一下skywalking的httpclient-plugin skywalking-plugin.def skywalking-6.6.0/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/main/resources/skywalking-plugin.def httpclient-4.x=org.apache.skywalking.apm.plugin.httpClient.v4.define.AbstractHttpClientInstrumentation httpclient-4.x=org.apache.skywalking.apm.plugin.httpClient.v4.define.InternalHttpClientInstrumentation httpclient-4.x=org.apache.skywalking.apm.plugin.httpClient.v4.define.MinimalHttpClientInstrumentation httpclient-4.x=org.apache.skywalking.apm.plugin.httpClient.v4.define.DefaultRequestDirectorInstrumentation httpClient-4.x

(3)delphi 的五种方法类型

江枫思渺然 提交于 2020-03-08 07:45:44
Delphi的方法类型有: 1.静态方法 ( Static) 默认类型,可以省略关键字 2.虚拟方法 ( Virtual ) 3.动态方法 ( Dynamic ) 4.消息方法 ( Message ) 5.抽象法方 ( Abstract ) ======================================================= 1)静态方法[ static ] 静态方法类似于通常的过程和函数,编译器在编译时就已指定了输出该方法 的对象实例。静态方法的主要优点是调用速度快。 eg: type TAnimal = class(TObject) procedure Sound; procedure Sleep; ... ... end; ... ... TDog = class(TAnimal) procedure Sound; function Sleep:Integer; ... ... end; 静态方法不能被重载,上例中,派生类的静态方法只是替换了基类的静态方 法。即使Sleep方法在TAnimal中表现为过程而在TDog类中表现为函数。 ======================================================= 2)动态方法[ dynamic ] 被声明为动态方法的方法不是放在类的虚拟方法表中,而是由编译器指定一