简介 nio主要是通过WatchService、Watchkey和Path来实现文件的监控; 代码实现 public class FileMonitor { private WatchService watcher; public FileMonitor(String directory) throws IOException { watcher = FileSystems.getDefault().newWatchService(); Path path = Paths.get(directory); path.register(watcher, ENTRY_CREATE, ENTRY_MODIFY,ENTRY_DELETE); } @SuppressWarnings("InfiniteLoopStatement") public void watchFile() throws InterruptedException{ while (true) { WatchKey key = watcher.take(); for (WatchEvent<?> event : key.... 有更新! nio监控文件变化 程序人生
1、定义类注解和方法注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface TypeAnnotation { String value() default "这是类注解"; } @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface MethodAnnotation { String value() default "这是方法注解"; } 2、处理注解 此处通过反射拿到类对象,获取注解,来操作。 再生产中也可以结合切面编程来处理注解,或者扫描指定包下的所有类,遍历处理注解 public class AnnotationHandler { public static void main(String[] args){ //可以配置扫描路径加载所有class,也可以使用aspectj直接做前面处理 Class aClass .... 有更新! 自己定义一个注解 程序人生
1、安装gcc yum install gcc-c++ -y 2、redis下载解压 wget http://download.redis.io/releases/redis-5.0.8.tar.gz tar xzf redis-5.0.8.tar.gz cd redis-5.0.8 3、编译 make 4、启动 进入src目录,运行redis-serve即可 有更新! centos安装redis 程序人生
1.设置powerdesiger导入的代码语言为Java 文件---->逆向工程---->对象语言 2.导入代码所在的目录 上述操作完成点击确认选择代码 结束后点击确认就可以得到类图啦 有更新! powerdesigner逆向工程,根据Java代码生成类图 程序人生
1.工厂模式 工厂模式根据传递的参数来决定生产的产品,增加产品需要改动工厂的的代码,在明确不同条件生产不同实例的情况下可以使用这个模式(一般这个模式可以应付大多数场景了) 代码 手机接口: public interface Phone { void phoneInfo(); } 华为手机 public class Huawei implements Phone { @Override public void phoneInfo() { System.out.println("我是华为手机"); } } 小米手机 public class Xiaomi implements Phone { @Override public void phoneInfo() { System.out.println("我是小米手机"); } } 生产工厂,在工厂中,根据不同的类型,生成不同的手机 public class PhoneFactory { public Phone createPhone(String type){ Phone product =null; switch (type){.... 有更新! 工厂模式 程序人生
1.maven引入依赖 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.0.2</version> </dependency> 2.请求示例 package utils; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.im.... 有更新! HttpClient的post请求设置请求体 程序人生