zoukankan      html  css  js  c++  java
  • 常用Java程序片段

    1、改变数组的大小 

    package com.js.ai.modules.jsa.test;
    
    public class Testxf {
    private static Object resizeArray(Object oldArray, int newSize){
    	int oldSize=java.lang.reflect.Array.getLength(oldArray);
    	Class elementType=oldArray.getClass().getComponentType();
    	Object newArray=java.lang.reflect.Array.newInstance(elementType, newSize);
    	int preserveLength=Math.min(oldSize, newSize);
    	if(preserveLength>0)
    		System.arraycopy(oldArray, 0, newArray, 0, preserveLength);			
    	return newArray;
    }
    public static void main(String[] args) {
    	int[] a = {1,2,3};   	
    	   a = (int[])resizeArray(a,5);
    	   a[3] = 4;    
    	   a[4] = 5;    
    	   for (int i=0; i<a.length; i++)    
    	      System.out.print (a[i]+";");  
    }
    }
    

     2、发送代数据的HTTP 请求

    package com.js.ai.modules.jsa.test;
    
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.net.URL;
    public class Testxf {
    public static void main(String[] args) {
    	try {
    		URL my_url=new URL("https://open.alipay.com/platform/home.htm");
    		BufferedReader br=new BufferedReader(new InputStreamReader(my_url.openStream()));
    		 String strTemp = "";  
    		 while(null!=(strTemp=br.readLine())){
    			 System.out.println(strTemp);
    		 }
    	} catch (Exception e) {
    		e.printStackTrace();
    	}
    }
    }
    

    3、发送邮件 

    package com.js.ai.modules.jsa.test;
    
    import java.util.Properties;
    
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
    
    public class Testxf {
    	public void postMail(String recipients[], String subject, String message, String from) throws MessagingException {
    		boolean debug = false;
    		// Set the host smtp address
    		Properties props = new Properties();
    		props.put("mail.smtp.host", "smtp.example.com");
    		// create some properties and get the default Session
    		Session session = Session.getDefaultInstance(props, null);
    		session.setDebug(debug);
    		// create a message
    		Message msg = new MimeMessage(session);
    		// set the from and to address
    		InternetAddress addressFrom = new InternetAddress(from);
    		msg.setFrom(addressFrom);
    		InternetAddress[] addressTo = new InternetAddress[recipients.length];
    		for (int i = 0; i < recipients.length; i++) {
    			addressTo[i] = new InternetAddress(recipients[i]);
    		}
    		msg.setRecipients(Message.RecipientType.TO, addressTo);
    
    		// Optional : You can also set your custom headers in the Email if you
    		// Want
    		msg.addHeader("MyHeaderName", "myHeaderValue");
    
    		// Setting the Subject and Content Type
    		msg.setSubject(subject);
    		msg.setContent(message, "text/plain");
    		Transport.send(msg);
    	}
    }
    

    4、把 Array 转换成 Map 

    public static void main(String[] args) {    
        String[][] countries = { { "United States", "New York" }, { "United Kingdom", "London" },    
            { "Netherland", "Amsterdam" }, { "Japan", "Tokyo" }, { "France", "Paris" } };    
      
        Map countryCapitals = ArrayUtils.toMap(countries);    
      
        System.out.println("Capital of Japan is " + countryCapitals.get("Japan"));    
        System.out.println("Capital of France is " + countryCapitals.get("France"));    
      }    
    

    5、解析/读取XML 文件

    XML文件 :
    <?xml version="1.0"?>   
    <students>   
        <student>   
            <name>John</name>   
            <grade>B</grade>   
            <age>12</age>   
        </student>   
        <student>   
            <name>Mary</name>   
            <grade>A</grade>   
            <age>11</age>   
        </student>   
        <student>   
            <name>Simon</name>   
            <grade>A</grade>   
            <age>18</age>   
        </student>   
    </students>  
    
    java代码:
    import java.io.File;    
    import javax.xml.parsers.DocumentBuilder;    
    import javax.xml.parsers.DocumentBuilderFactory;    
      
    import org.w3c.dom.Document;    
    import org.w3c.dom.Element;    
    import org.w3c.dom.Node;    
    import org.w3c.dom.NodeList;    
      
    public class XMLParser {    
      
        public void getAllUserNames(String fileName) {    
            try {    
                DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();    
                DocumentBuilder db = dbf.newDocumentBuilder();    
                File file = new File(fileName);    
                if (file.exists()) {    
                    Document doc = db.parse(file);    
                    Element docEle = doc.getDocumentElement();    
      
                    // Print root element of the document    
                    System.out.println("Root element of the document: "   
                            + docEle.getNodeName());    
      
                    NodeList studentList = docEle.getElementsByTagName("student");    
      
                    // Print total student elements in document    
                    System.out    
                            .println("Total students: " + studentList.getLength());    
      
                    if (studentList != null && studentList.getLength() > 0) {    
                        for (int i = 0; i < studentList.getLength(); i++) {    
      
                            Node node = studentList.item(i);    
      
                            if (node.getNodeType() == Node.ELEMENT_NODE) {    
      
                                System.out    
                                        .println("=====================");    
      
                                Element e = (Element) node;    
                                NodeList nodeList = e.getElementsByTagName("name");    
                                System.out.println("Name: "   
                                        + nodeList.item(0).getChildNodes().item(0)    
                                                .getNodeValue());    
      
                                nodeList = e.getElementsByTagName("grade");    
                                System.out.println("Grade: "   
                                        + nodeList.item(0).getChildNodes().item(0)    
                                                .getNodeValue());    
      
                                nodeList = e.getElementsByTagName("age");    
                                System.out.println("Age: "   
                                        + nodeList.item(0).getChildNodes().item(0)    
                                                .getNodeValue());    
                            }    
                        }    
                    } else {    
                        System.exit(1);    
                    }    
                }    
            } catch (Exception e) {    
                System.out.println(e);    
            }    
        }    
        public static void main(String[] args) {    
      
            XMLParser parser = new XMLParser();    
            parser.getAllUserNames("c:\test.xml");    
        }    
    } 
    

    6、列出文件和目录

    File dir = new File("directoryName");    
      String[] children = dir.list();    
      if (children == null) {    
          // Either dir does not exist or is not a directory    
      } else {    
          for (int i=0; i < children.length; i++) {    
              // Get filename of file or directory    
              String filename = children[i];    
          }    
      }    
      
      // It is also possible to filter the list of returned files.    
      // This example does not return any files that start with `.'.    
      FilenameFilter filter = new FilenameFilter() {    
          public boolean accept(File dir, String name) {    
              return !name.startsWith(".");    
          }    
      };    
      children = dir.list(filter);    
      
      // The list of files can also be retrieved as File objects    
      File[] files = dir.listFiles();    
      
      // This filter only returns directories    
      FileFilter fileFilter = new FileFilter() {    
          public boolean accept(File file) {    
              return file.isDirectory();    
          }    
      };    
      files = dir.listFiles(fileFilter); 
    

    7、抓屏程序 

    package com.js.ai.modules.jsa.test;
    
    import java.awt.Dimension;
    import java.awt.Rectangle;
    import java.awt.Robot;
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.io.File;
    
    import javax.imageio.ImageIO;
    
    public class Testxf {
    	public void captureScreen(String fileName) throws Exception {    
    		  
    		   Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();    
    		   Rectangle screenRectangle = new Rectangle(screenSize);    
    		   Robot robot = new Robot();    
    		   BufferedImage image = robot.createScreenCapture(screenRectangle);    
    		   ImageIO.write(image, "png", new File(fileName));    
    		  
    		} 
    	public static void main(String[] args) throws Exception {
    		Testxf testxf =new Testxf();
    		testxf.captureScreen("C:/Users/Administrator/Desktop/JSAxfz/captureScreen.png");
    	}
    }
    

    8、使用iText JAR生成PDF

    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();    
            }    
        }    
    }
    

    9、使用NIO进行快速的文件拷贝

    package com.js.ai.modules.jsa.test;
    import java.awt.Container;
    import java.awt.Graphics2D;
    import java.awt.Image;
    import java.awt.MediaTracker;
    import java.awt.RenderingHints;
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.nio.channels.FileChannel;
    
    import javax.imageio.ImageIO;
    public class Testxf {
    	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 main(String[] args) throws IOException {
    		Testxf testxf =new Testxf();
    		File in=new File("C:/Users/Administrator/Desktop/JSAxfz/yuan.txt");
    		File out=new File("C:/Users/Administrator/Desktop/JSAxfz/copy.txt");		
    		testxf.fileCopy(in, out);
    	}
    }
    

    10、使用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();    
        }    
    }
    
  • 相关阅读:
    Linux内核网络协议栈优化总纲
    Java实现 蓝桥杯VIP 算法训练 连续正整数的和
    Java实现 蓝桥杯VIP 算法训练 连续正整数的和
    Java实现 蓝桥杯VIP 算法训练 寂寞的数
    Java实现 蓝桥杯VIP 算法训练 寂寞的数
    Java实现 蓝桥杯VIP 算法训练 学做菜
    Java实现 蓝桥杯VIP 算法训练 学做菜
    Java实现 蓝桥杯VIP 算法训练 判断字符位置
    Java实现 蓝桥杯VIP 算法训练 判断字符位置
    Java实现 蓝桥杯VIP 算法训练 链表数据求和操作
  • 原文地址:https://www.cnblogs.com/ipetergo/p/7735615.html
Copyright © 2011-2022 走看看