10个开发人员非常有用的Java功能代码

来自:http://developer.51cto.com/art/200905/124291.htm


本文将为大家介绍20人员非常有用的Java功能代码。这20段代码,可以成为大家在今后的开发过程中,Java编程手册的重要部分。

1. 把Strings转换成int和把int转换成String

String a = String.valueOf(2); //integer to numeric string   
int i = Integer.parseInt(a); //numeric string to an int 

String a = String.valueOf(2);   //integer to numeric string
int i = Integer.parseInt(a); //numeric string to an int

2. 向Java文件中添加文本


BufferedWriter out = null;
try {
	out = new BufferedWriter(new FileWriter("filename", true));
	out.write("aString");
} catch (IOException e) {
	// error processing code
} finally {
	if (out != null) {
		try {
			out.close();
		} catch (IOException e) {
			// error processing code
		}
	}
}

3. 获取Java现在正调用的方法名

String methodName =Thread.currentThread().getStackTrace()[1].getMethodName();  
String methodName = Thread.currentThread().getStackTrace()[1].getMethodName ();

4. 在Java中将String型转换成Date型


java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);  

java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);
//or SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );  
Date date = format.parse( myString ); 
SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );
Date date = format.parse( myString );

5. 通过Java JDBC链接Oracle数据库


public class OracleJdbcTest {
	String driverClass = "oracle.jdbc.driver.OracleDriver";

	Connection con;

	public void init(FileInputStream fs) throws ClassNotFoundException,SQLException, FileNotFoundException, IOException {
		Properties props = new Properties();
		 props.load(fs);
		String url = props.getProperty("db.url");
		String userName = props.getProperty("db.user");
		String password = props.getProperty("db.password");
		Class.forName(driverClass);

		con = DriverManager.getConnection(url, userName, password);
	}

	public void fetch() throws SQLException, IOException {
		PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");
		ResultSet rs = ps.executeQuery();

		while (rs.next()) {
			// do the thing you do
		}
		rs.close();
		ps.close();
	}

//		public static void main(String[] args) {
//			OracleJdbcTest test = new OracleJdbcTest();
//			test.init();
//			test.fetch();
//		}
}

public class OracleJdbcTest1 {
	String driverClass = "oracle.jdbc.driver.OracleDriver";

	Connection con;

	public void init(FileInputStream fs) throws ClassNotFoundException,SQLException, FileNotFoundException, IOException {
		Properties props = new Properties();
		props.load(fs);
		String url = props.getProperty("db.url");
		String userName = props.getProperty("db.user");
		String password = props.getProperty("db.password");
		Class.forName(driverClass);

		con = DriverManager.getConnection(url, userName, password);
	}

	public void fetch() throws SQLException, IOException {
		PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");
		ResultSet rs = ps.executeQuery();

		while (rs.next()) {
			// do the thing you do
		}
		rs.close();
		ps.close();
	}

	// public static void main(String[] args) {
	// OracleJdbcTest test = new OracleJdbcTest();
	// test.init();
	// test.fetch();
	// }
}

6.将Java中的util.Date转换成sql.Date


java.util.Date utilDate = new 
java.util.Date();   
java.sql.Date sqlDate = new java.sql.Date
(utilDate.getTime());  

java.util.Date utilDate = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());

7. 使用NIO快速复制Java文件

public static void fileCopy( File in, File out ) throws IOException   
{   
FileChannel inChannel = new FileInputStream( in ).getChannel();   
FileChannel outChannel = new FileOutputStream( out ).getChannel();   

try  
{   
//          inChannel.transferTo(0, inChannel.size(), outChannel);      // original
-- apparently has trouble copying large files on Windows  

// magic number for Windows, 64Mb - 32Kb)  
int maxCount = (64 * 1024 * 1024) - (32 * 1024);  
long size = inChannel.size();  
long position = 0;  
while ( position < size )  
{  
 position += inChannel.transferTo( position, maxCount, outChannel );
}   
}  
finally
{  
if ( inChannel != null )  
{  
 inChannel.close();  
}   
if ( outChannel != null )  
{  
  outChannel.close();  
}   
}  
}


public static void fileCopy( File in, File out )
throws IOException
{
FileChannel inChannel = new FileInputStream( in ).getChannel ();
FileChannel outChannel = new FileOutputStream( out ).getChannel();
try
{
//          inChannel.transferTo (0, inChannel.size(), outChannel);      // original

-- apparently has trouble copying large files on Windows

// magic number for Windows, 64Mb - 32Kb)
int maxCount = (64 * 1024 * 1024) - (32 * 1024);
long size = inChannel.size ();
long position = 0;
while ( position < size )
{
  position += inChannel.transferTo( position, maxCount, outChannel );
}
}
finally
{
if ( inChannel != null )
{
  inChannel.close ();
}
if ( outChannel != null )
{
   outChannel.close ();
}
}
} 
8. 在Java中创建缩略图
private void createThumbnail(String filename, int thumbWidth, 

int thumbHeight, int quality, String outFilename)  
throws InterruptedException, FileNotFoundException, IOException  
{  
// load image from filename  
Image image = Toolkit.getDefaultToolkit().getImage(filename);  
MediaTracker mediaTracker = new MediaTracker(new Container());  
mediaTracker.addImage(image, 0);  
mediaTracker.waitForID(0);  
// use this to test for errors at this point: System.out.println

(mediaTracker.isErrorAny());  

// determine thumbnail size from WIDTH and HEIGHT  
double thumbRatio = (double)thumbWidth / (double)thumbHeight;  
int imageWidth = image.getWidth (null);  
int imageHeight = image.getHeight(null);  
double imageRatio = (double)imageWidth / (double)imageHeight;  
if (thumbRatio < imageRatio) {  
thumbHeight = (int)(thumbWidth / imageRatio);  
} else {  
thumbWidth = (int)(thumbHeight * imageRatio);  
}  

// draw original image to thumbnail image object and  
// scale it to the new size on-the-fly  
BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight,

BufferedImage.TYPE_INT_RGB);  
Graphics2D graphics2D = thumbImage.createGraphics();  
graphics2D.setRenderingHint (RenderingHints.KEY_INTERPOLATION,

RenderingHints.VALUE_INTERPOLATION_BILINEAR);  
graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null);  

// save thumbnail image to outFilename  
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream

(outFilename));  
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);  
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage);  
quality = Math.max(0, Math.min (quality, 100));  
param.setQuality((float)quality / 100.0f, false);  
encoder.setJPEGEncodeParam (param);  
encoder.encode (thumbImage);  
out.close ();  
} 


private void createThumbnail(String filename, int thumbWidth, int thumbHeight, int

quality, String outFilename)
throws InterruptedException, FileNotFoundException, IOException
{
// load image from filename
Image image = Toolkit.getDefaultToolkit().getImage (filename);
MediaTracker mediaTracker = new MediaTracker(new Container());
mediaTracker.addImage(image, 0);
mediaTracker.waitForID(0);
// use this to test for errors at this point: System.out.println

(mediaTracker.isErrorAny());

// determine thumbnail size from WIDTH and HEIGHT
double thumbRatio = (double)thumbWidth / (double) thumbHeight;
int imageWidth = image.getWidth (null);
int imageHeight = image.getHeight (null);
double imageRatio = (double)imageWidth / (double) imageHeight;
if (thumbRatio < imageRatio) {
thumbHeight = (int)(thumbWidth / imageRatio);
} else {
thumbWidth = (int) (thumbHeight * imageRatio);
}

// draw original image to thumbnail image object and
// scale it to the new size on-the- fly
BufferedImage thumbImage = new BufferedImage(thumbWidth,

thumbHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics2D = thumbImage.createGraphics();
graphics2D.setRenderingHint (RenderingHints.KEY_INTERPOLATION,

RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2D.drawImag e(image, 0, 0, thumbWidth, thumbHeight, null);

// save thumbnail image to outFilename
BufferedOutputStream out = new BufferedOutputStream(new

FileOutputStream(outFilename));
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam

(thumbImage);
quality = Math.max(0, Math.min(quality, 100));
param.setQuality((float)quality / 100.0f, false);
encoder.setJPEGEncodeParam (param);
encoder.encode(thumbImage);
out.close ();
} 

9. 在Java中创建JSON数据

Read this article for more details.
Download JAR file json

-rpc-1.0.jar (75 kb)

import org.json.JSONObject;   ...   ...   JSONObject json = new JSONObject();   json.put("city", "Mumbai");   json.put("country", "India");   ...   String output = json.toString ();   ... 

import org.json.JSONObject; ... ... JSONObject json = new JSONObject(); json.put("city", "Mumbai"); json.put("country", "India"); ... String output = json.toString(); ...


10. 在Java中使用iText JAR打开PDF

Read this article for more details.
import java.io.File;  
import java.io.FileOutputStream;  
import java.io.OutputStream;  
import java.util.Date;  

import com.lowagie.text.Document;  
import com.lowagie.text.Paragraph;  
import com.lowagie.text.pdf.PdfWriter;  

public class GeneratePDF {  

public static void main(String[] args) {  
try {  
OutputStream file = new FileOutputStream(new File("C:\\Test.pdf"));  

Document document = new Document();  
PdfWriter.getInstance(document, file);  
document.open();  
document.add(new Paragraph("Hello Kiran"));  
document.add(new Paragraph(new Date().toString()));  

document.close();  
file.close ();  

} catch (Exception e) {  

e.printStackTrace();  
}   
}  
} 


import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Date;

import com.lowagie.text.Document;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;

public class GeneratePDF {

public static void main(String[] args) {
try {
OutputStream file = new FileOutputStream(new File("C:\\Test.pdf"));

Document document = new Document ();
PdfWriter.getInstance(document, file);
document.open ();
document.add(new Paragraph("Hello Kiran"));
document.add(new Paragraph(new Date().toString()));

document.close ();
file.close();

} catch (Exception e) {

e.printStackTrace();
}
}
}


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值