`
MonsterDoctor
  • 浏览: 3463 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

20个java常用片段

    博客分类:
  • java
阅读更多
1. 字符串有整型的相互转换 
Java代码 
1.String a = String.valueOf(2);   //integer to numeric string    
2.int i = Integer.parseInt(a); //numeric string to an int  

2. 向文件末尾添加内容 
Java代码 
1.BufferedWriter out = null;    
2.try {    
3.    out = new BufferedWriter(new FileWriter(”filename”, true));    
4.    out.write(”aString”);    
5.} catch (IOException e) {    
6.    // error processing code    
7.} finally {    
8.    if (out != null) {    
9.        out.close();    
10.    }    
11.}  

Java代码 
1.3. 得到当前方法的名字  
2.String methodName = Thread.currentThread().getStackTrace()[1].getMethodName();  

4. 转字符串到日期 
Java代码 
1.java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);  

或者是: 
Java代码 
1.SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );    
2.Date date = format.parse( myString );  

5. 使用JDBC链接Oracle 
Java代码 
1.public class OracleJdbcTest    
2.{    
3.    String driverClass = "oracle.jdbc.driver.OracleDriver";    
4.  
5.    Connection con;    
6.  
7.    public void init(FileInputStream fs) throws ClassNotFoundException, SQLException, FileNotFoundException, IOException    
8.    {    
9.        Properties props = new Properties();    
10.        props.load(fs);    
11.        String url = props.getProperty("db.url");    
12.        String userName = props.getProperty("db.user");    
13.        String password = props.getProperty("db.password");    
14.        Class.forName(driverClass);    
15.  
16.        con=DriverManager.getConnection(url, userName, password);    
17.    }    
18.  
19.    public void fetch() throws SQLException, IOException    
20.    {    
21.        PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");    
22.        ResultSet rs = ps.executeQuery();    
23.  
24.        while (rs.next())    
25.        {    
26.            // do the thing you do    
27.        }    
28.        rs.close();    
29.        ps.close();    
30.    }    
31.  
32.    public static void main(String[] args)    
33.    {    
34.        OracleJdbcTest test = new OracleJdbcTest();    
35.        test.init();    
36.        test.fetch();    
37.    }    
38.}  

6. 把 Java util.Date 转成 sql.Date 
Java代码 
1.java.util.Date utilDate = new java.util.Date();    
2.java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());  

7. 使用NIO进行快速的文件拷贝 
Java代码 
1.public static void fileCopy( File in, File out )    
2.            throws IOException    
3.    {    
4.        FileChannel inChannel = new FileInputStream( in ).getChannel();    
5.        FileChannel outChannel = new FileOutputStream( out ).getChannel();    
6.        try   
7.        {    
8.//          inChannel.transferTo(0, inChannel.size(), outChannel);      // original -- apparently has trouble copying large files on Windows    
9.  
10.            // magic number for Windows, 64Mb - 32Kb)    
11.            int maxCount = (64 * 1024 * 1024) - (32 * 1024);    
12.            long size = inChannel.size();    
13.            long position = 0;    
14.            while ( position < size )    
15.            {    
16.               position += inChannel.transferTo( position, maxCount, outChannel );    
17.            }    
18.        }    
19.        finally   
20.        {    
21.            if ( inChannel != null )    
22.            {    
23.               inChannel.close();    
24.            }    
25.            if ( outChannel != null )    
26.            {    
27.                outChannel.close();    
28.            }    
29.        }    
30.    }  

8. 创建图片的缩略图 
Java代码 
1.private void createThumbnail(String filename, int thumbWidth, int thumbHeight, int quality, String outFilename)    
2.        throws InterruptedException, FileNotFoundException, IOException    
3.    {    
4.        // load image from filename    
5.        Image image = Toolkit.getDefaultToolkit().getImage(filename);    
6.        MediaTracker mediaTracker = new MediaTracker(new Container());    
7.        mediaTracker.addImage(image, 0);    
8.        mediaTracker.waitForID(0);    
9.        // use this to test for errors at this point: System.out.println(mediaTracker.isErrorAny());    
10.  
11.        // determine thumbnail size from WIDTH and HEIGHT    
12.        double thumbRatio = (double)thumbWidth / (double)thumbHeight;    
13.        int imageWidth = image.getWidth(null);    
14.        int imageHeight = image.getHeight(null);    
15.        double imageRatio = (double)imageWidth / (double)imageHeight;    
16.        if (thumbRatio < imageRatio) {    
17.            thumbHeight = (int)(thumbWidth / imageRatio);    
18.        } else {    
19.            thumbWidth = (int)(thumbHeight * imageRatio);    
20.        }    
21.  
22.        // draw original image to thumbnail image object and    
23.        // scale it to the new size on-the-fly    
24.        BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB);    
25.        Graphics2D graphics2D = thumbImage.createGraphics();    
26.        graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);    
27.        graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null);    
28.  
29.        // save thumbnail image to outFilename    
30.        BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename));    
31.        JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);    
32.        JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage);    
33.        quality = Math.max(0, Math.min(quality, 100));    
34.        param.setQuality((float)quality / 100.0f, false);    
35.        encoder.setJPEGEncodeParam(param);    
36.        encoder.encode(thumbImage);    
37.        out.close();    
38.    }  

9. 创建 JSON 格式的数据 

请先阅读这篇文章 了解一些细节, 
并下面这个JAR 文件:json-rpc-1.0.jar (75 kb) 
Java代码 
1.import org.json.JSONObject;    
2....    
3....    
4.JSONObject json = new JSONObject();    
5.json.put("city", "Mumbai");    
6.json.put("country", "India");    
7....    
8.String output = json.toString();    
9....  

10. 使用iText JAR生成PDF 

阅读这篇文章 了解更多细节 
Java代码 
1.import java.io.File;    
2.import java.io.FileOutputStream;    
3.import java.io.OutputStream;    
4.import java.util.Date;    
5.  
6.import com.lowagie.text.Document;    
7.import com.lowagie.text.Paragraph;    
8.import com.lowagie.text.pdf.PdfWriter;    
9.  
10.public class GeneratePDF {    
11.  
12.    public static void main(String[] args) {    
13.        try {    
14.            OutputStream file = new FileOutputStream(new File("C:\\Test.pdf"));    
15.  
16.            Document document = new Document();    
17.            PdfWriter.getInstance(document, file);    
18.            document.open();    
19.            document.add(new Paragraph("Hello Kiran"));    
20.            document.add(new Paragraph(new Date().toString()));    
21.  
22.            document.close();    
23.            file.close();    
24.  
25.        } catch (Exception e) {    
26.  
27.            e.printStackTrace();    
28.        }    
29.    }    
30.}  

11. HTTP 代理设置 

阅读这篇 文章 了解更多细节。 
Java代码 
1.System.getProperties().put("http.proxyHost", "someProxyURL");    
2.System.getProperties().put("http.proxyPort", "someProxyPort");    
3.System.getProperties().put("http.proxyUser", "someUserName");    
4.System.getProperties().put("http.proxyPassword", "somePassword");  

12. 单实例Singleton 示例 

请先阅读这篇文章 了解更多信息 
Java代码 
1.public class SimpleSingleton {    
2.    private static SimpleSingleton singleInstance =  new SimpleSingleton();    
3.  
4.    //Marking default constructor private    
5.    //to avoid direct instantiation.    
6.    private SimpleSingleton() {    
7.    }    
8.  
9.    //Get instance for class SimpleSingleton    
10.    public static SimpleSingleton getInstance() {    
11.  
12.        return singleInstance;    
13.    }    
14.}  

另一种实现 
Java代码 
1.public enum SimpleSingleton {    
2.    INSTANCE;    
3.    public void doSomething() {    
4.    }    
5.}    
6.  
7.//Call the method from Singleton:    
8.SimpleSingleton.INSTANCE.doSomething();  

13. 抓屏程序 

阅读这篇文章 获得更多信息。 
Java代码 
1.import java.awt.Dimension;    
2.import java.awt.Rectangle;    
3.import java.awt.Robot;    
4.import java.awt.Toolkit;    
5.import java.awt.image.BufferedImage;    
6.import javax.imageio.ImageIO;    
7.import java.io.File;    
8.  
9....    
10.  
11.public void captureScreen(String fileName) throws Exception {    
12.  
13.   Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();    
14.   Rectangle screenRectangle = new Rectangle(screenSize);    
15.   Robot robot = new Robot();    
16.   BufferedImage image = robot.createScreenCapture(screenRectangle);    
17.   ImageIO.write(image, "png", new File(fileName));    
18.  
19.}    
20....  

14. 列出文件和目录 
Java代码 
1.File dir = new File("directoryName");    
2.  String[] children = dir.list();    
3.  if (children == null) {    
4.      // Either dir does not exist or is not a directory    
5.  } else {    
6.      for (int i=0; i < children.length; i++) {    
7.          // Get filename of file or directory    
8.          String filename = children[i];    
9.      }    
10.  }    
11.  
12.  // It is also possible to filter the list of returned files.    
13.  // This example does not return any files that start with `.'.    
14.  FilenameFilter filter = new FilenameFilter() {    
15.      public boolean accept(File dir, String name) {    
16.          return !name.startsWith(".");    
17.      }    
18.  };    
19.  children = dir.list(filter);    
20.  
21.  // The list of files can also be retrieved as File objects    
22.  File[] files = dir.listFiles();    
23.  
24.  // This filter only returns directories    
25.  FileFilter fileFilter = new FileFilter() {    
26.      public boolean accept(File file) {    
27.          return file.isDirectory();    
28.      }    
29.  };    
30.  files = dir.listFiles(fileFilter);  

15. 创建ZIP和JAR文件 
Java代码 
1.import java.util.zip.*;    
2.import java.io.*;    
3.  
4.public class ZipIt {    
5.    public static void main(String args[]) throws IOException {    
6.        if (args.length < 2) {    
7.            System.err.println("usage: java ZipIt Zip.zip file1 file2 file3");    
8.            System.exit(-1);    
9.        }    
10.        File zipFile = new File(args[0]);    
11.        if (zipFile.exists()) {    
12.            System.err.println("Zip file already exists, please try another");    
13.            System.exit(-2);    
14.        }    
15.        FileOutputStream fos = new FileOutputStream(zipFile);    
16.        ZipOutputStream zos = new ZipOutputStream(fos);    
17.        int bytesRead;    
18.        byte[] buffer = new byte[1024];    
19.        CRC32 crc = new CRC32();    
20.        for (int i=1, n=args.length; i < n; i++) {    
21.            String name = args[i];    
22.            File file = new File(name);    
23.            if (!file.exists()) {    
24.                System.err.println("Skipping: " + name);    
25.                continue;    
26.            }    
27.            BufferedInputStream bis = new BufferedInputStream(    
28.                new FileInputStream(file));    
29.            crc.reset();    
30.            while ((bytesRead = bis.read(buffer)) != -1) {    
31.                crc.update(buffer, 0, bytesRead);    
32.            }    
33.            bis.close();    
34.            // Reset to beginning of input stream    
35.            bis = new BufferedInputStream(    
36.                new FileInputStream(file));    
37.            ZipEntry entry = new ZipEntry(name);    
38.            entry.setMethod(ZipEntry.STORED);    
39.            entry.setCompressedSize(file.length());    
40.            entry.setSize(file.length());    
41.            entry.setCrc(crc.getValue());    
42.            zos.putNextEntry(entry);    
43.            while ((bytesRead = bis.read(buffer)) != -1) {    
44.                zos.write(buffer, 0, bytesRead);    
45.            }    
46.            bis.close();    
47.        }    
48.        zos.close();    
49.    }    
50.}  

16. 解析/读取XML 文件 

XML文件 
代码 
1.<?xml version="1.0"?>   
2.<students>   
3.    <student>   
4.        <name>John</name>   
5.        <grade>B</grade>   
6.        <age>12</age>   
7.    </student>   
8.    <student>   
9.        <name>Mary</name>   
10.        <grade>A</grade>   
11.        <age>11</age>   
12.    </student>   
13.    <student>   
14.        <name>Simon</name>   
15.        <grade>A</grade>   
16.        <age>18</age>   
17.    </student>   
18.</students>  

Java代码 
1.package net.viralpatel.java.xmlparser;    
2.  
3.import java.io.File;    
4.import javax.xml.parsers.DocumentBuilder;    
5.import javax.xml.parsers.DocumentBuilderFactory;    
6.  
7.import org.w3c.dom.Document;    
8.import org.w3c.dom.Element;    
9.import org.w3c.dom.Node;    
10.import org.w3c.dom.NodeList;    
11.  
12.public class XMLParser {    
13.  
14.    public void getAllUserNames(String fileName) {    
15.        try {    
16.            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();    
17.            DocumentBuilder db = dbf.newDocumentBuilder();    
18.            File file = new File(fileName);    
19.            if (file.exists()) {    
20.                Document doc = db.parse(file);    
21.                Element docEle = doc.getDocumentElement();    
22.  
23.                // Print root element of the document    
24.                System.out.println("Root element of the document: "   
25.                        + docEle.getNodeName());    
26.  
27.                NodeList studentList = docEle.getElementsByTagName("student");    
28.  
29.                // Print total student elements in document    
30.                System.out    
31.                        .println("Total students: " + studentList.getLength());    
32.  
33.                if (studentList != null && studentList.getLength() > 0) {    
34.                    for (int i = 0; i < studentList.getLength(); i++) {    
35.  
36.                        Node node = studentList.item(i);    
37.  
38.                        if (node.getNodeType() == Node.ELEMENT_NODE) {    
39.  
40.                            System.out    
41.                                    .println("=====================");    
42.  
43.                            Element e = (Element) node;    
44.                            NodeList nodeList = e.getElementsByTagName("name");    
45.                            System.out.println("Name: "   
46.                                    + nodeList.item(0).getChildNodes().item(0)    
47.                                            .getNodeValue());    
48.  
49.                            nodeList = e.getElementsByTagName("grade");    
50.                            System.out.println("Grade: "   
51.                                    + nodeList.item(0).getChildNodes().item(0)    
52.                                            .getNodeValue());    
53.  
54.                            nodeList = e.getElementsByTagName("age");    
55.                            System.out.println("Age: "   
56.                                    + nodeList.item(0).getChildNodes().item(0)    
57.                                            .getNodeValue());    
58.                        }    
59.                    }    
60.                } else {    
61.                    System.exit(1);    
62.                }    
63.            }    
64.        } catch (Exception e) {    
65.            System.out.println(e);    
66.        }    
67.    }    
68.    public static void main(String[] args) {    
69.  
70.        XMLParser parser = new XMLParser();    
71.        parser.getAllUserNames("c:\\test.xml");    
72.    }    
73.}  

17. 把 Array 转换成 Map 
Java代码 
1.import java.util.Map;    
2.import org.apache.commons.lang.ArrayUtils;    
3.  
4.public class Main {    
5.  
6.  public static void main(String[] args) {    
7.    String[][] countries = { { "United States", "New York" }, { "United Kingdom", "London" },    
8.        { "Netherland", "Amsterdam" }, { "Japan", "Tokyo" }, { "France", "Paris" } };    
9.  
10.    Map countryCapitals = ArrayUtils.toMap(countries);    
11.  
12.    System.out.println("Capital of Japan is " + countryCapitals.get("Japan"));    
13.    System.out.println("Capital of France is " + countryCapitals.get("France"));    
14.  }    
15.}  

18. 发送邮件 
Java代码 
1.import javax.mail.*;    
2.import javax.mail.internet.*;    
3.import java.util.*;    
4.  
5.public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException    
6.{    
7.    boolean debug = false;    
8.  
9.     //Set the host smtp address    
10.     Properties props = new Properties();    
11.     props.put("mail.smtp.host", "smtp.example.com");    
12.  
13.    // create some properties and get the default Session    
14.    Session session = Session.getDefaultInstance(props, null);    
15.    session.setDebug(debug);    
16.  
17.    // create a message    
18.    Message msg = new MimeMessage(session);    
19.  
20.    // set the from and to address    
21.    InternetAddress addressFrom = new InternetAddress(from);    
22.    msg.setFrom(addressFrom);    
23.  
24.    InternetAddress[] addressTo = new InternetAddress[recipients.length];    
25.    for (int i = 0; i < recipients.length; i++)    
26.    {    
27.        addressTo[i] = new InternetAddress(recipients[i]);    
28.    }    
29.    msg.setRecipients(Message.RecipientType.TO, addressTo);    
30.  
31.    // Optional : You can also set your custom headers in the Email if you Want    
32.    msg.addHeader("MyHeaderName", "myHeaderValue");    
33.  
34.    // Setting the Subject and Content Type    
35.    msg.setSubject(subject);    
36.    msg.setContent(message, "text/plain");    
37.    Transport.send(msg);    
38.}  

19. 发送代数据的HTTP 请求 
Java代码 
1.import java.io.BufferedReader;    
2.import java.io.InputStreamReader;    
3.import java.net.URL;    
4.  
5.public class Main {    
6.    public static void main(String[] args)  {    
7.        try {    
8.            URL my_url = new URL("http://coolshell.cn/");    
9.            BufferedReader br = new BufferedReader(new InputStreamReader(my_url.openStream()));    
10.            String strTemp = "";    
11.            while(null != (strTemp = br.readLine())){    
12.            System.out.println(strTemp);    
13.        }    
14.        } catch (Exception ex) {    
15.            ex.printStackTrace();    
16.        }    
17.    }    
18.}  

20. 改变数组的大小 
Java代码 
1./**  
2.* Reallocates an array with a new size, and copies the contents  
3.* of the old array to the new array.  
4.* @param oldArray  the old array, to be reallocated.  
5.* @param newSize   the new array size.  
6.* @return          A new array with the same contents.  
7.*/   
8.private static Object resizeArray (Object oldArray, int newSize) {    
9.   int oldSize = java.lang.reflect.Array.getLength(oldArray);    
10.   Class elementType = oldArray.getClass().getComponentType();    
11.   Object newArray = java.lang.reflect.Array.newInstance(    
12.         elementType,newSize);    
13.   int preserveLength = Math.min(oldSize,newSize);    
14.   if (preserveLength > 0)    
15.      System.arraycopy (oldArray,0,newArray,0,preserveLength);    
16.   return newArray;    
17.}    
18.  
19.// Test routine for resizeArray().    
20.public static void main (String[] args) {    
21.   int[] a = {1,2,3};    
22.   a = (int[])resizeArray(a,5);    
23.   a[3] = 4;    
24.   a[4] = 5;    
25.   for (int i=0; i<a.length; i++)    
26.      System.out.println (a[i]);    
27.}  
分享到:
评论

相关推荐

    20个非常有用的java 片段

    根据给定文件的信息,我们可以总结出以下20个非常有用的Java代码片段,这些片段涵盖了从基本数据类型转换、文件操作到数据库连接等多个方面。 ### 1. 整型与字符串的互相转换 #### 代码片段 ```java String a = ...

    利用Swing开发的JAVA常用组件代码

    总之,Swing是Java中用于构建桌面应用程序的强大工具,它提供了丰富的组件库,可以满足各种用户界面的需求。通过研究并运用这些组件代码,开发者能够创建出功能丰富、用户体验良好的桌面应用程序。

    java常用词汇汇总

    - **用途**:在Java中,`abstract`是一个关键字,用来定义抽象类或者抽象方法。抽象类是不能被实例化的类,通常包含一个或多个未实现的方法(抽象方法)。抽象方法是没有方法体的方法,必须由子类来实现具体的逻辑。...

    java常用代码的集合

    在Java中,我们可以编写一个方法来验证一个字符串是否符合ISBN的标准格式。通常,ISBN13由13个数字组成,分为四部分,每部分之间用破折号分隔。下面是一个简单的验证函数: ```java public boolean isValidISBN...

    java常用函数API经常用的

    本篇文章将深入探讨Java中一些常用的函数API,尤其是那些在日常开发中频繁使用的。 首先,我们要关注的是`java.util.Date`和`java.text.SimpleDateFormat`类,这两个类常用于日期和时间的操作。`Date`类代表了一个...

    Java中常用的代码汇总

    ### Java中常用的代码汇总 #### 1. 字符串与整型之间的相互转换 在Java中,经常需要在字符串和整型之间进行转换。以下是一些常用的方法: - **将整型转换为字符串:** - `String a = String.valueOf(2);` - ...

    20个非常实用的Java程序代码片段

    下面我们将详细探讨标题和描述中提到的20个非常实用的Java程序代码片段,这些片段涵盖了字符串操作、文件处理、日志记录、日期时间转换以及数据库连接等多个方面。 1. **字符串与整型的相互转换**: - `String....

    JAVA常用英文

    在Java中,`abstract`关键字不能单独使用于变量、构造器或初始化块,仅能用于类和方法。 ### access 访问控制是Java中一个核心概念,通过`public`、`protected`、`private`和`default`(包级访问)来限定类、方法...

    java常用词

    - **JPanel/JFrame/JButton/JLabel/JTextField/JTextArea/JPasswordField/ButtonGroup/JRadioButton/JCheckBox/JComboBox/JList/ImageIcon/JMenuBar/JMenu/JMenuItem**:Swing 中常用的图形界面组件。 - **Thread/...

    20个常用的ava程序片段.doc

    【Java程序片段详解】 在Java编程中,常常会遇到各种常见的任务,如数据类型转换、文件操作、日期处理以及数据库交互等。以下是一些实用的Java程序片段,可以帮助你更高效地编写代码。 1. **字符串与整型的相互...

    基于功能代码片段的Java后门检测方法.pdf

    通过统计分析实际后门代码中常用的Java API,研究人员归纳出一系列检测Java后门的规则。这些规则能够有效地识别出后门代码的特征,并作为后门分析方法的核心。 文章中提到的功能代码片段的后门分析方法是关键一环,...

    绝对使用的JAVA程序片段

    JUnit是Java中最常用的单元测试框架,它可以帮助开发者编写和运行测试用例,确保代码质量。 ```java import org.junit.Test; import static org.junit.Assert.assertEquals; public class MyTest { @Test public...

    Java中常用Map测试示例

    本示例将深入探讨Java中常用的`Map`实现,包括`HashMap`和`EnumMap`。 首先,`Map`接口定义了一些基本操作,如`put`用于添加键值对,`get`用于获取与给定键关联的值,`remove`用于移除键值对,以及`size`用于返回...

    Java script脚本常用代码

    ### Java Script脚本常用代码详解 #### 一、概述 JavaScript是一种广泛使用的脚本语言,尤其在网页开发中扮演着重要角色。对于初学者来说,掌握一些基础且常用的JavaScript代码片段是十分必要的。本文将根据提供的...

    java常用的快键常用的快键常用的快键

    根据给定的文件信息,我们可以深入探讨与Java开发相关的常用快捷键及其功能,帮助开发者更好地理解和应用这些快捷键。 ### 1. 快速生成main方法(`public static void main(String[] args){}`) - **快捷键**:`...

    Java常用代码整理

    "Java常用代码整理"这个主题涵盖了Java开发中的诸多常见技术点和实用代码片段,旨在帮助开发者提升工作效率。以下是对这些知识点的详细阐述: 1. **基础语法**:Java的基础语法包括数据类型(如整型、浮点型、字符...

    Java常用代码大全.zip

    "Java常用代码大全.zip"这个压缩包很可能包含了各种常见的Java编程示例和实用代码片段,帮助开发者快速解决日常开发中遇到的问题。这个文档,"Java常用代码大全.doc",可能是一个详细的指南,涵盖了Java开发中的各种...

Global site tag (gtag.js) - Google Analytics