6. 把 Java util.Date 转成 sql.Date

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

7. 使用NIO进行快速的文件拷贝

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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. 创建图片的缩略图

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
private
void
createThumbnail(String filename,
int
thumbWidth,
int
thumbHeight,
int
quality, String outFilename)  
throws
InterruptedException, FileNotFoundException, IOException  
{  
// load p_w_picpath from filename  
Image p_w_picpath = Toolkit.getDefaultToolkit().getImage(filename);  
MediaTracker mediaTracker =
new
MediaTracker(
new
Container());  
mediaTracker.addImage(p_w_picpath,
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
p_w_picpathWidth = p_w_picpath.getWidth(
null
);  
int
p_w_picpathHeight = p_w_picpath.getHeight(
null
);  
double
p_w_picpathRatio = (
double
)p_w_picpathWidth / (
double
)p_w_picpathHeight;  
if
(thumbRatio < p_w_picpathRatio) {  
thumbHeight = (
int
)(thumbWidth / p_w_picpathRatio);  
}
else
{  
thumbWidth = (
int
)(thumbHeight * p_w_picpathRatio);  
}  
// draw original p_w_picpath to thumbnail p_w_picpath 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(p_w_picpath,
0
,
0
, thumbWidth, thumbHeight,
null
);  
// save thumbnail p_w_picpath 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. 创建 JSON 格式的数据

请先阅读 了解一些细节,

并下面这个JAR 文件:

1
2
3
4
5
6
7
8
9
import
org.json.JSONObject;  
...  
...  
JSONObject json =
new
JSONObject();  
json.put(
"city"
,
"Mumbai"
);  
json.put(
"country"
,
"India"
);  
...  
String output = json.toString();  
...

10. 使用iText JAR生成PDF

阅读这篇 了解更多细节

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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();  
}  
}  
}