import java.util.Date;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.transaction.annotation.Transactional;
public class JmxDemo implements JmxDemoMBean, ApplicationContextAware {
private final static Logger LOG = LoggerFactory.getLogger(JmxDemo.class);
private JobControlDao jobControlDao;
public void startJob(String jobID) {
if (jobControlDao == null) {
LOG.error("Configuration has some errors.");
throw new RuntimeException("Configuration Error.");
}
if (StringUtils.isBlank(jobID)) {
LOG.error("Job ID can't be empty.");
throw new IllegalArgumentException("Job ID can't be empty.");
}
}
@Transactional
private void update(String updateBy, String jobID, String status) {
JobControl job = jobControlDao.findOne(jobID);
if (job == null) {
LOG.error("Job ID doesn't exist.");
throw new RuntimeException("Job ID doesn't exist.");
}
job.setStatus(status);
job.setUpdateOn(new Date());
job.setUpdateBy(updateBy);
jobControlDao.save(job);
}
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
jobControlDao = applicationContext.getBean(JobControlDao.class);
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter" lazy-init="false">
<property name="autodetectModeName">
<value>AUTODETECT_ALL</value>
</property>
</bean>
<bean name="com.xx.jmx:JmxDemo=JmxDemoMBean" class="com.xx.jmx.JmxDemo" />
</beans>
分享到:
相关推荐
Spring支持JMX,使得开发者能够轻松地管理应用程序。 - **消息服务**:Spring集成了Java Message Service(JMS),使得消息驱动的应用程序更加容易实现。 - **缓存机制**:Spring提供了对各种缓存技术的支持,如...
* Spring enterprise: Spring Java EE integration, Spring Integration, Spring Batch, jBPM with Spring, Spring Remoting, messaging, transactions, scaling using Terracotta and GridGrain, and more. ...
本书《Agile Java Development with Spring, Hibernate and Eclipse》主要探讨了如何利用Spring框架、Hibernate持久化技术和Eclipse集成开发环境,以敏捷的方式开发企业级Java应用程序。在企业Java开发的世界中,...
Effectively manage your Spring components and applications using Spring's built-in JMX engine. Learn how to add scheduling to your Spring application with Quartz. Learn how to simplify mail sending ...
在Spring 3.0.4.RELEASE中,还有对Java EE规范的广泛支持,包括JMS、JMX和EJB等,这使得Spring可以无缝地融入现有的企业环境。 源代码的包含使得开发者可以深入研究Spring的工作原理,这对于学习和调试都非常有价值...
在JavaOne会议的演讲“Designing Manageable Java EE Platform-Based Applications with the JMX API”中,主讲人Rob Harrop、Akbar Ansari和Sandeep Shrivastava探讨了如何利用Java Management Extensions (JMX) ...
5. **测试支持**:Spring Test模块提供了对单元测试和集成测试的强大支持,包括模拟对象、`@RunWith(SpringJUnit4ClassRunner.class)`等。 四、Spring 3.0的局限性与后续版本 尽管Spring 3.0在当时是一个重大进步,...
此外,本书还涵盖了其他关键技术,如Ant、JUnit、JSP标签库、日志记录、基于GUI的调试、使用JMX监控、作业调度、电子邮件发送等,这些技术都是构建高质量Java应用程序不可或缺的部分。 #### 六、案例研究 《敏捷...
"spring-framework-3.1.0.RC2-with-docs" 压缩包中包含的文档可以帮助开发者理解 Spring 框架的内部工作原理,源代码则可供深入学习和调试。通过阅读源代码,可以了解到 Spring 如何实现其核心功能,以及如何设计和...
6. **JMX改进**:加强了JMX集成,提供了更好的监控和管理能力。 7. **Caching**:引入了缓存抽象,支持多种缓存策略,如EhCache、Guava等。 8. **Expression Language升级**:Spring Expression Language (SpEL)...
此外,该版本还加强了与JMX(Java Management Extensions)的集成,便于对Spring管理的应用进行监控和管理。 总的来说,Spring Framework 3.1.0.M2是一个全面且功能强大的版本,无论你是初学者还是经验丰富的开发者...
7. **JMX管理接口**:Spring 3.0提供了更好的JMX(Java Management Extensions)支持,使应用程序能够被管理和监控,增强了系统的可维护性。 8. **数据访问增强**:在数据访问层面,Spring 3.0对JPA、Hibernate和...
2.6.2. JMX 2.6 .3. 任务规划 2.6.4. 对Java 5(Tiger)的支持 2.7. 移植到Spring 2.0 2.7.1. 一些变化 2.7.1.1. Jar包 2.7.1.2. XML配置 2.7.1.3. Deprecated的类和方法 2.7.1.4. Apache OJB 2.7.1.5. iBatis 2.8....
4. Working with Spring Boot 5. Learning about Spring Boot Features 6. Moving to Production 7. Advanced Topics II. Getting Started 8. Introducing Spring Boot 9. System Requirements 9.1. Servlet ...
Agile Java™ Development With Spring, Hibernate and Eclipse is a book about robust technologies and effective methods which help bring simplicity back into the world of enterprise Java development....
此外,Spring 3.2还加强了测试支持,包括MockMVC用于模拟Spring MVC请求,以及`@RunWith(SpringJUnit4ClassRunner.class)`注解配合`@ContextConfiguration`进行Spring应用上下文的加载,使单元测试和集成测试变得...
7. **集成增强**:Spring 2.5加强了与其他开源库的集成,如Hibernate、MyBatis等ORM框架,以及JMS、JMX等企业级服务。 8. **安全更新(SEC02)**:这个特别的SEC02版本包含了一些安全修复,以消除已知的安全漏洞,...
Agile Java™ Development With Spring, Hibernate and Eclipse is a book about robust technologies and effective methods which help bring simplicity back into the world of enterprise Java development....