使用JDK内置的观察者模式 1. 可观察者(主题) 被观察的主题继承 Observable 对象, 使用该对象的调用 notifyObservers() 或 notifyObservers(arg) 方法通知观察者 public class Subject extends Observable{ public void changeStatus(){ // ... 调用其他方法 // 关键点,调用notifyObservers() 或notifyObservers(arg)方法 notifyOb…
1.Java应用中的日志功能 ================= 一般的Java应用程序中都有记录日志的需求,目前主流的记录日志的方法是在应用程序中引入log4j,用log4j来生成日志.其实,JDK带有自己的日志系统,使用起来也很方便. 2.Java内置日志的使用方法 ================= JDK内置的日志系统相关的类都包含在java.util.logging这个包中.下面通过例子,由简到繁解释JDK内置日志系统的使用方法. 为了让应用程序有记录日志的能力,必须先在应用程序中获得…
Java自带的性能监测工具用法简介——jstack.jconsole.jinfo.jmap.jdb.jsta.jvisualvmJDK内置工具使用 一.javah命令(C Header and Stub File Generator) 二.jps命令(Java Virtual Machine Process Status Tool) 三.jstack命令(Java Stack Trace) 四.jstat命令(Java Virtual Machine Statistics Monitoring…
javap Java反编译工具,主要用于根据Java字节码文件反汇编为Java源代码文件用法:javap 用法 描述 javap -help —help -? 输出此用法消息 javap -version 版本消息 javap -v -verbose 输出附加信息 javap -l 输出行号和本地变量表 javap -public 仅显示公共类和成员 javap -protected 显示受保护的/公共类和成员 javap -package 显示程序包/受保护的/公共类和成员 (默认) java…
一.序言 本文讲述仅针对 JVM 层次的内置锁,不涉及分布式锁. 锁有多种分类形式,比如公平锁与非公平锁.可重入锁与非重入锁.独享锁与共享锁.乐观锁与悲观锁.互斥锁与读写锁.自旋锁.分段锁和偏向锁/轻量级锁/重量级锁. 下面将配合示例讲解各种锁的概念,期望能够达到如下目标:一是在生产环境中不错误的使用锁:二是在生产环境中选择恰当的锁. 对锁了解不多的情况下,应该首先保证业务的正确性,然后考虑性能,比如万金油synchronized锁或者自带多重属性的ReentrantReadWriteLock锁…
并发程序设计之Future模式 一).使用Future模式的原因 当某一段程序提交了一个请求,期待得到一个答复,但服务程序对这个请求的处理可能很慢,在单线程的环境中,调用函数是同步的,必须等到服务程序返回结果后才能进行其他处理,在这段时间里,客户端一直处于等待状态. 二).Future模式 使用并发的设计思想,解决客户端发送请求到应用程序,等待响应数据时间过长的问题. 三).Future模式的核心结构 1.main: 系统启动类 作用:调用Client,发送请求. 2.client: 发送请求类…
简介:使用JAVA内置的帮你搞定观察者模式. 1. 先把类图放在这里: (1). Observable类追踪所有的观察者,并通知他们. (2). Observer这个接口看起来很熟悉,它和我们之前写的类几乎一样. (3). WeatherData这就是我们以前所称的“主题”Subject,从今以后也可以改称为“可观察者”,我们不需要在提供Register(),remove(),notifyObservers()方法.因为我们已经从超类继承了这些行为. 2. 如何把对象编程观察者 如果以前一样,实…
jsp2 表达式语言的内置对象 使用方式${object.attributename} 或者${object["attributename"]} pageContext pageScope requestScope sessionScope applicationScope param 用于获取请求的参数值 paramValues 与param的区别是它获取的是数组类型的属性值 header 用于获取请求头的值 headerValues initParam 用于获取请求web应用的初始…
书接上回,上次跟大家概括的说了说JSP的九种常用内置对象.接下来就该聊聊它们各自的特点了,今天先说说request吧. 下面是request的一些常用方法: isUserInRole(String role):判断认证后的用户是否属于逻辑的role中的成员. getAttribute(String name):返回name指定的属性值,如不存在则返回null. getAttributeNames():返回name指定属性集合,其结果是一个枚举实例. getCookies():返回客户端的所有Co…
学习JavaWeb就离不开JSP,而学习JSP又不得不了解它常用的九个内置对象.今天来做一个简单介绍. request Request封装了用户提交的信息,通过调用Request相应的方法可以获取封装的信息,即使用Request可以获取用户提交信息.它是HttpServletRequest类的实例. response 对客户的请求做出动态的响应,向客户端发送数据.response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它.它是HttpServletResponse类的实例.re…