`
soongbo
  • 浏览: 88543 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
   在项目开发工程中,使用了很多时间的操作,改工具类提供了很多方法 public class DateUtils { public static final long DAY_IN_MILLISECOND = 24 * 60 * 60 * 1000; public static Date addDay(Date date,int day){ return org.apache.commons.lang.time.DateUtils.addDays(date, day); } public static Date addWeek(Da ...
Java的文件操作太基础,缺乏很多实用工具,比如对目录的操作,支持就非常的差了。如果你经常用Java操作文件或文件夹,你会觉得反复编写这些代码是令人沮丧的问题,而且要大量用到递归。     下面是的一个解决方案,借助Apache Commons IO工具包来简单实现文件(夹)的复制、移动、删除、获取大小等操作. import org.apache.commons.io.FileUtils; import org.apache.commons.io.filefilter.*; import org.apache.commons.logging.Log; import org.apach ...
   在实际的项目开发中,有可能遇到对图片的操作,比如加水印,或是设置图片的大小,先转载一篇文章,以记录相关的操作: import java.awt.*; import java.awt.image.*; import javax.imageio.ImageIO; import javax.imageio.ImageIO.*; import javax.imageio.IIOException; import java.io.*; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.codec.jpeg ...
  在实际开发过程中,大家难免遇到抓取网络资源的操作,列如:抓取相册图片,获得网络的MP3,或者是Flash等资源。下边就写了一个读取网络资源的事列: private boolean upload(String srcUrl, String fileName, int fileSize) { URL url = null; FileOutputStream fos = null; BufferedInputStream bis = null; HttpURLConnection httpUrl = null; try { byte[] buf = new ...
   在企业级开发中,经常遇到读写excel的操作,在此将一些简单的excel操作做了一个实例: package com.test.core.utils; import java.io.BufferedOutputStream; import java.io.IOException; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.util.Date; import java.util.List; import java.util.Vector; ...
   在之前开发项目中,主要用的是tomcat,发现启动相对比较慢,同时每次项目中代码改动都得重新打包到tomcat中,所以现在项目组用jetty作为web容器,下面将如何利用jetty容器开发做一下叙述: 1.启动文件: package jetty; import org.mortbay.jetty.Connector; import org.mortbay.jetty.Server; import org.mortbay.jetty.nio.SelectChannelConnector; import org.mortbay.jetty.webapp.WebAppContex ...
ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为ThreadLocalVariable更容易让人理解一些。 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副 ...
[img][/img]Struts包介绍 (http://www.blogjava.net/lzhidj/archive/2008/07/10/213898.html)(大部分叙述性的文字和图从其文中拷贝): 包名 说明 org.apache.struts2. components 该包封装视图组件,Struts2在视图组件上有了很大加强,不仅增加了组件 ...
HttpServletRequest   request.getRemoteAddr()//获取远程IP地址 HttpServletResponse   response.setContentType("text/html;charset=gbk")//设置发送方式和字符集   response.getWriter();//获取输出对象,构造PrintWriter对象   返回响应 利用:          1) Pr ...
当访问一个action的时候,此时struts2会把整个action压入valuestack的顶部,此时valuestack就一个action对象  我们通常会写stack.set(key1,value1) 或者statck.setvalue(key2,value2) 这两个是有区别的,前者会在valuestack压入一个hashmap,并将key1,value1植入该hashmap 那么此时valuestack会有两个对象,顶部是hashmap,底部是action   后者 会将key2,value2直接植入到顶部的对象,通常是action,如果action没有相应的set方法,那么执行 ...
<action name="undoBdChannelOperator" class="bdChannelAction" method="undoBdChannelOperator"> <result name="success" type="redirect">getUndoBdChannelListUI.action?operType=${operType} </result> </action> 可以正常传递参数, ...
    在java中貌似不能同时创建目录和文件,需要分布创建,即不能在创建目录的时候,同时创建该目录下的文件,如果要创建的话,需要分两步,下边是创建的代码try { String path = "D:/test/d.txt"; File file = new File(path); if (!file.getParentFile().exists()) { file.getParentFile().mkdirs(); } file.createNewFile(); FileWrite ...
今天晚上在网上看到一些讲基础的java知识的blog,自己便想了想真的知道了这些基础知识了吗?想想还是基础知识掌握的不好,在这里把自己遇到的问题写到blog里,一是希望自己以后一定要关注java的基础知识,定期看书复习,俗话说:“万丈高楼从地起”,只有掌握好了基础才能写出有质量的代码。二是如果有人和我一样不了解final的话,希望有所帮助。     我们都知道finnal是用来定义常量的,一旦定义就不可以改变。这句话是正确的,但是,我们应该仔细分析这句话,定义常量有基本类型和引用类型,那对这两种类型的变量,什么才叫做一旦定义就不能改变呢?我们来看看这段代码: public static fina ...
java的反射机制很重要,任何一个框架都要运用到反射,很多的操作也都是依靠反射来完成的,下面是我们在空余时间自己写的一点对于Java反射API的一些用法的小列子,虽然很简单,但是希望贴出来一起探讨:Scanner scanner = new Scanner(System.in); String name = scanner.next(); System.out.println("当前的类是:"+name); try { Class<?> obj = Class.forName(name); Object stu = obj.new ...
     在做项目的过程中,我们时常回遇到这样一种状况:“判定一个对象是否已经存在与Collection或Map,如果不存在于其中,就将该对象加入到Collection或Map中”。这种需求对于新手经常用下边的代码来完成: List<Integer> list = new ArrayList<Integer>(); List<Integer> checkList = new ArrayList<Integer>(); for (int i = 0; i < 5; i++) { list.add(i); } ...
Global site tag (gtag.js) - Google Analytics