- 浏览: 335171 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
lvyuan1234:
lvyuan1234 写道lvyuan1234 写道lvyua ...
java解析mp3工具 -
lvyuan1234:
lvyuan1234 写道lvyuan1234 写道怎么一直报 ...
java解析mp3工具 -
lvyuan1234:
lvyuan1234 写道怎么一直报找不到文件?找到原因了,e ...
java解析mp3工具 -
lvyuan1234:
怎么一直报找不到文件?
java解析mp3工具 -
Cy0941:
...
org.apache.catalina.connector.RequestFacade cannot be cast to org.springframewor
接上文,工具类源码
ConsoleUtil
package com.gary.util; /** * 控制台工具 * @author gary */ public class ConsoleUtil { private static LimitQueue<String> queue = new LimitQueue<String>(35); /** * 获取控制台文本 * @return */ public static String get(){ StringBuilder sb = new StringBuilder(); for (String str : queue) { sb.append(str); sb.append("\n"); } return sb.toString(); } /** * 输出到控制台 * @param str */ public static void write(String str){ queue.offer(TimeUtil.getCurrentTime() + ": " + str); } /** * 清空控制台 */ public static void clear(){ queue.clear(); } }
LimitQueue
package com.gary.util; import java.util.Collection; import java.util.Iterator; import java.util.LinkedList; import java.util.Queue; /** * 固定长度队列 * @author gary * */ public class LimitQueue<E> implements Queue<E> { //队列长度 private int limit; Queue<E> queue = new LinkedList<E>(); public LimitQueue(int limit) { this.limit = limit; } /** * 入队 * @param e */ @Override public boolean offer(E e) { if (queue.size() >= limit) { //如果超出长度,入队时,先出队 queue.poll(); } return queue.offer(e); } /** * 出队 * @return */ @Override public E poll() { return queue.poll(); } /** * 获取队列 * @return */ public Queue<E> getQueue() { return queue; } /** * 获取限制大小 * @return */ public int getLimit() { return limit; } @Override public boolean add(E e) { return queue.add(e); } @Override public E element() { return queue.element(); } @Override public E peek() { return queue.peek(); } @Override public boolean isEmpty() { return queue.size() == 0 ? true : false; } @Override public int size() { return queue.size(); } @Override public E remove() { return queue.remove(); } @Override public boolean addAll(Collection<? extends E> c) { return queue.addAll(c); } @Override public void clear() { queue.clear(); } @Override public boolean contains(Object o) { return queue.contains(o); } @Override public boolean containsAll(Collection<?> c) { return queue.containsAll(c); } @Override public Iterator<E> iterator() { return queue.iterator(); } @Override public boolean remove(Object o) { return queue.remove(o); } @Override public boolean removeAll(Collection<?> c) { return queue.removeAll(c); } @Override public boolean retainAll(Collection<?> c) { return queue.retainAll(c); } @Override public Object[] toArray() { return queue.toArray(); } @Override public <T> T[] toArray(T[] a) { return queue.toArray(a); } }
MailAutherticator
package com.gary.util; import javax.mail.Authenticator; import javax.mail.PasswordAuthentication; /** * javamail身份验证 * @author gary */ public class MailAutherticator extends Authenticator { private String userName; private String password; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public MailAutherticator(String userName, String password) { super(); this.userName = userName; this.password = password; } @Override public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(userName, password); } }
MailUtil
package com.gary.util; import java.util.Date; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.Authenticator; import javax.mail.Multipart; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMultipart; import javax.mail.internet.MimeUtility; /** * 发送E-mail * @author gary * @version 1.0 */ public class MailUtil { private String smtp = null; private String userName = null; private String password = null; public MailUtil(String smtp, String userName, String password) { this.smtp = smtp; this.userName = userName; this.password = password; } /** * 发送简单邮件 * @param subject * @param from * @param to * @param content * @throws Exception */ public void sendSimpleMail(String from, String[] to, String subject, String content) throws Exception { sendMail(subject, from , to, content, null, "text/html;charset=utf-8"); } /** * 发送邮件 * * @param subject * 邮件主题 * @param from * 邮件发送人 * "a@qq.com" * @param to * 邮件接收人(数组),可以有多个接收人即群发 * String sendTo[] = { "b@qq.com", "c@qq.com" }; * @param text * 邮件内容 * @param fileNames * 附件详细地址及重命名 * String fileNames[] = { "C:\\a.txt,a.txt", "C:\\b.txt,b.txt" }; * @param mimeType * 文本类型,如:"text/html;charset=utf-8" * @throws Exception */ @SuppressWarnings("static-access") public void sendMail(String subject, String from, String[] to, String text, String[] fileNames, String mimeType) throws Exception { //邮件会话对象 javax.mail.Session mailSession; //MIME邮件对象 javax.mail.internet.MimeMessage mimeMsg; //获得系统属性对象 Properties props = java.lang.System.getProperties(); //设置SMTP主机 props.put("mail.smtp.host", smtp); //是否到服务器用户名和密码验证 props.put("mail.smtp.auth", "true"); //到服务器验证发送的用户名和密码是否正确 MailAutherticator myEmailAuther = new MailAutherticator(userName, password); //设置邮件会话,将认证信息放进了Session的创建参数里 mailSession = javax.mail.Session.getInstance(props, (Authenticator) myEmailAuther); //设置传输协议 javax.mail.Transport transport = mailSession.getTransport("smtp"); //设置from、to等信息 mimeMsg = new javax.mail.internet.MimeMessage(mailSession); if (!(from == null || from.equals(""))) { InternetAddress sentFrom = new InternetAddress(from); //设置发送人地址 mimeMsg.setFrom(sentFrom); } InternetAddress[] sendTo = new InternetAddress[to.length]; for (int i = 0; i < to.length; i++) { sendTo[i] = new InternetAddress(to[i]); } mimeMsg.setRecipients(javax.mail.internet.MimeMessage.RecipientType.TO, sendTo); mimeMsg.setSubject(subject, "utf-8"); MimeBodyPart messageBodyPart1 = new MimeBodyPart(); messageBodyPart1.setContent(text, mimeType); //附件传输格式 Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageBodyPart1); if (fileNames != null) { for (int i = 0; i < fileNames.length; i++) { MimeBodyPart messageBodyPart2 = new MimeBodyPart(); //选择出每一个附件名 String fileName = fileNames[i].split(",")[0]; String displayName = fileNames[i].split(",")[1]; //得到数据源 FileDataSource fds = new FileDataSource(fileName); //得到附件本身并至入BodyPart messageBodyPart2.setDataHandler(new DataHandler(fds)); //得到文件名同样至入BodyPart //messageBodyPart2.setFileName(displayname); // messageBodyPart2.setFileName(fds.getName()); messageBodyPart2.setFileName(MimeUtility.encodeText(displayName)); multipart.addBodyPart(messageBodyPart2); } } mimeMsg.setContent(multipart); //设置信件头的发送日期 mimeMsg.setSentDate(new Date()); mimeMsg.saveChanges(); //发送邮件 transport.send(mimeMsg); transport.close(); } }
StringUtil
package com.gary.util; /** * 字符串工具 * @author gary */ public class StringUtil { /** * 不为空 * @param string */ public static boolean isNotBlank(String str) { return !isBlank(str); } /** * 为空 * @param string */ public static boolean isBlank(String str) { int strLen; if ((str == null) || ((strLen = str.length()) == 0)) { return true; } for (int i = 0; i < strLen; ++i) { if (!Character.isWhitespace(str.charAt(i))) { return false; } } return true; } }
SwingUtil
package com.gary.util; import java.awt.Dimension; import java.awt.Toolkit; import javax.swing.JDialog; /** * Swing工具 * @author gary */ public class SwingUtil { /** * 居中显示Dialog */ public static void show(JDialog jd) { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = jd.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } jd.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); jd.setModal(true); jd.setVisible(true); } }
TimeUtil
package com.gary.util; import java.util.Calendar; /** * 时间工具 * @author gary * */ public class TimeUtil { /** * 获取当前时间 * @return */ public static String getCurrentTime(){ return new java.sql.Timestamp(new java.util.Date().getTime()).toString(); } /** * 返回星期几 * @author gary * @return * 1-星期日 * 2-星期一 * 3-星期二 * 4-星期三 * 5-星期四 * 6-星期五 * 7-星期六 */ public static int getDayOfWeek(){ Calendar cal = Calendar.getInstance(); return cal.get(Calendar.DAY_OF_WEEK); } }
URLUtil
package com.gary.util; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; /** * URL工具 * @author gary * */ public class URLUtil { /** * 连接 * @param urlString * @throws MalformedURLException * @throws IOException */ public void connect(String urlString) throws MalformedURLException, IOException { URL url = new URL(urlString); URLConnection c = url.openConnection(); c.connect(); } }
发表评论
-
文件夹备份工具
2011-12-29 13:53 1476package com.gary.file; im ... -
按目录递归清理文件每行开头结尾的空白
2011-07-17 21:52 1675package com.gary.util; im ... -
web服务器监控(一)
2011-06-11 15:09 2020程序截图 原理 定时任务,通过与监控URL建立连接来判 ... -
固定长度队列的实现
2011-06-10 06:44 7852package com.gary.util; impor ... -
生成随机颜色代码
2011-04-13 08:37 2126package com.gary.util; im ... -
显示本机IP(GUI版)
2011-02-02 16:19 1552IPUtil.java package com.gar ... -
java解析mp3工具
2010-12-29 21:23 6259需要的jar包为jid3lib.jar,sf上的http:// ... -
获取指定月份的工作日天数
2010-12-25 08:58 1894package com.gary.util; impor ... -
判断数组内有无重复元素
2010-12-24 09:03 1995/** * 判断数组内有无重复元素 * @par ... -
日语学习小工具(GUI版)(二)
2010-12-23 22:12 1335RandomWord.java package co ... -
日语学习小工具(GUI版)(一)
2010-12-23 22:06 1886使用的jar包为jxl.jar,单词数据文件words.xls ...
相关推荐
在IT行业中,Web服务器监控是确保线上服务稳定性和性能的关键环节。本文将深入探讨"Web服务器监控(一)"这一主题,结合源码分析和实用工具介绍,帮助你更好地理解和掌握这个领域的重要知识点。 首先,我们要了解什么...
搜藏了很久的web服务器监控程序,设定每隔一段时间访问一下网站,如果访问不到,就会发出报警。网站管理很有用的
一、服务器监控的重要性 1. 预防故障:通过持续监控,能及时发现服务器潜在的性能瓶颈,避免因资源耗尽而导致的服务中断。 2. 性能优化:实时查看服务器负载,可以调整系统配置,提高服务器处理能力,提升用户体验...
"Web服务器监控器"是一款专为管理和维护网络服务器设计的重要工具。它提供了实时监控、预警以及远程重启等关键功能,确保服务器的稳定运行并及时处理可能出现的问题。在现代的IT环境中,服务器监控对于企业的运营至...
Falcon是一款基于inotify-tools开发的Web服务器文件监控平台,能够实时监控Web目录文件变化(新增,修改,删除),判断文件内容是否包含恶意代码,自动隔离常见Webshell,保证Web目录文件安全。 Falcon 0.1.1 更新...
【WEB服务器运行状况监控V1.6】是一款专为管理员设计的高效且免费的Web服务器监控软件,旨在确保Web服务的稳定性和安全性。这款工具具备防止病毒篡改主页以及自动恢复主页的功能,对于IIS(Internet Information ...
JavaMelody是一款强大的JAVA Web项目服务器性能监控工具,它能够实时、全面地监控应用程序的运行状态,帮助开发者和运维人员了解系统性能瓶颈,及时发现并解决问题。通过在Java Web应用中简单集成,JavaMelody就能...
基于嵌入式Web服务器的远程视频监控系统,希望对家加有所帮助
综上所述,构建一个Web服务器监控系统涉及到多方面的技术与知识,包括Web开发、服务器监控、数据处理、安全策略以及报警机制。实现这样的系统需要对整个IT基础设施有深入的理解,并具备良好的编程和项目管理能力。
二、服务器监控的主要内容 1. 系统资源:CPU使用率、内存占用、磁盘I/O、网络带宽等。 2. 服务状态:HTTP、FTP、SMTP、数据库等服务的运行状况。 3. 日志分析:收集和分析系统日志,发现异常行为。 4. 安全监控:...
Falcon是一款基于inotify-tools开发的Web服务器文件监控平台,能够实时监控Web目录文件变化(新增,修改,删除),判断文件内容是否包含恶意代码,自动隔离常见Webshell,保证Web目录文件安全。 Falcon 0.1.1 ...
基于嵌入式Linux和Web服务器的网络视频监控系统.pdf 标题:“基于嵌入式Linux和Web服务器的网络视频监控系统” 描述:“基于嵌入式Linux和Web服务器的网络视频监控系统” 标签:“Linux操作系统、系统开发、参考...
二、Apache Web服务器安装 1. 下载Apache:访问Apache官方网站,根据操作系统(如Windows、Linux、macOS)下载合适的版本。 2. 安装:在Windows上,通常运行安装程序;在Linux上,使用包管理器(如apt-get或yum)...
Linux集群环境下监控Web服务器的Shell脚本设计 本文主要讨论了Linux集群环境下监控Web服务器的Shell脚本设计。文章首先介绍了守护进程和Shell的基本概念及其特性,然后针对Linux集群下如何有效管理多台服务器,以...
在当今互联网安全日益受到重视的背景下,Web服务器作为信息发布和...随着技术的不断进步和网络环境的不断变化,Web服务器安全将是一个持续的、动态的过程,需要不断地监控、评估和更新安全措施,以应对新的安全威胁。
该系统的主要组成部分包括前端Web界面、后端服务器处理模块以及与监控设备的通信接口。前端通常使用HTML、CSS和JavaScript构建,为用户提供友好的交互界面,用户可以通过浏览器访问并进行操作。后端服务器处理用户的...