`

20个超级有用的Java程序片段(1)

    博客分类:
  • 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.   }
复制代码
3. 得到当前方法的名字

  Java代码

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

  4. 转字符串到日期

  Java代码
  1.   java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);
复制代码

     或者是:
  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.   Connection con;
  5.   public void init(FileInputStream fs) throws ClassNotFoundException, SQLException, FileNotFoundException, IOException
  6.   {
  7.   Properties props = new Properties();
  8.   props.load(fs);
  9.   String url = props.getProperty("db.url");
  10.   String userName = props.getProperty("db.user");
  11.   String password = props.getProperty("db.password");
  12.   Class.forName(driverClass);
  13.   con=DriverManager.getConnection(url, userName, password);
  14.   }
  15.   public void fetch() throws SQLException, IOException
  16.   {
  17.   PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");
  18.   ResultSet rs = ps.executeQuery();
  19.   while (rs.next())
  20.   {
  21.   // do the thing you do
  22.   }
  23.   rs.close();
  24.   ps.close();
  25.   }
  26.   public static void main(String[] args)
  27.   {
  28.   OracleJdbcTest test = new OracleJdbcTest();
  29.   test.init();
  30.   test.fetch();
  31.   }
  32.   }
复制代码
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.   // magic number for Windows, 64Mb - 32Kb)
  10.   int maxCount = (64 * 1024 * 1024) - (32 * 1024);
  11.   long size = inChannel.size();
  12.   long position = 0;
  13.   while ( position < size )
  14.   {
  15.   position += inChannel.transferTo( position, maxCount, outChannel );
  16.   }
  17.   }
  18.   finally
  19.   {
  20.   if ( inChannel != null )
  21.   {
  22.   inChannel.close();
  23.   }
  24.   if ( outChannel != null )
  25.   {
  26.   outChannel.close();
  27.   }
  28.   }
  29.   }
复制代码
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.   // determine thumbnail size from WIDTH and HEIGHT
  11.   double thumbRatio = (double)thumbWidth / (double)thumbHeight;
  12.   int imageWidth = image.getWidth(null);
  13.   int imageHeight = image.getHeight(null);
  14.   double imageRatio = (double)imageWidth / (double)imageHeight;
  15.   if (thumbRatio < imageRatio) {
  16.   thumbHeight = (int)(thumbWidth / imageRatio);
  17.   } else {
  18.   thumbWidth = (int)(thumbHeight * imageRatio);
  19.   }
  20.   // draw original image to thumbnail image object and
  21.   // scale it to the new size on-the-fly
  22.   BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB);
  23.   Graphics2D graphics2D = thumbImage.createGraphics();
  24.   graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
  25.   graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null);
  26.   // save thumbnail image to outFilename
  27.   BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename));
  28.   JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
  29.   JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage);
  30.   quality = Math.max(0, Math.min(quality, 100));
  31.   param.setQuality((float)quality / 100.0f, false);
  32.   encoder.setJPEGEncodeParam(param);
  33.   encoder.encode(thumbImage);
  34.   out.close();
  35.   }
复制代码
9. 创建 JSON 格式的数据

  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代码

  阅读这篇文章 了解更多细节
 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();
  }
  }
  }
[/code]
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.   //Marking default constructor private
  4.   //to avoid direct instantiation.
  5.   private SimpleSingleton() {
  6.   }
  7.   //Get instance for class SimpleSingleton
  8.   public static SimpleSingleton getInstance() {
  9.   return singleInstance;
  10.   }
  11.   }
复制代码
另一种实现
  1.  public enum SimpleSingleton {
  2.   INSTANCE;
  3.   public void doSomething() {
  4.   }
  5.   }
  6.   //Call the method from Singleton:
  7.   SimpleSingleton.INSTANCE.doSomething();
复制代码

 

分享到:
评论

相关推荐

    20个超级有用的Java程序片段

    以下是一些常见的Java程序片段,涵盖了字符串处理、文件操作、日志记录、日期转换、数据库连接等多个方面。 1. **字符串与整型的相互转换** - `String.valueOf(int)` 方法用于将整型值转换为字符串。 - `Integer....

    java五子棋超级源代码

    1. **主类 (`FiveChessAppletDemo`)**:此类作为程序的入口,通过调用`ChessFrame`类创建了一个五子棋游戏窗口。 2. **游戏框架 (`ChessFrame`)**:这是一个继承自`JFrame`的类,负责整个游戏界面的布局和交互逻辑...

    C++调用java代码的JNI实现

    这对于提高性能、访问硬件资源以及与其他非Java语言编写的应用程序进行交互都非常有用。 ### JAVA代码结构与功能 #### powersys.util.JNITools 类 这个类是用于执行用户身份验证和权限检查的核心类。主要包括以下...

    超级马里奥游戏素材.zip

    《超级马里奥游戏素材.zip》是一个集合了马里奥游戏相关图片、音频以及Java多媒体包的压缩文件,主要用于游戏开发或对马里奥游戏感兴趣的爱好者进行资源参考和学习。这个压缩包的内容主要包括两个核心部分:图形资源...

    超级玛丽源码及解说文档

    作者可能通过实例和代码片段来解释如何创建一个类似《超级玛丽》的游戏。这不仅涵盖了编程语言(可能是C++、Java或Unity脚本)的基础知识,还涉及图形设计、音效处理以及游戏框架的运用。学习者可以通过这份文档了解...

    jsp网页超级给力的。自己期末作业

    3. **JSP脚本元素**:包括`&lt;scriptlet&gt;`, `&lt;expression&gt;`和`&lt;declaration&gt;`,它们分别用于编写Java代码片段、输出变量值和声明变量或方法。 4. **JSP表达式**:以`${}`包裹,用于将Java表达式的值转换为字符串并...

    超级菜单支持库

    【超级菜单支持库】是一种专为开发者设计的软件组件,旨在简化应用程序中复杂菜单系统的创建和管理。在Android开发环境中,菜单系统是用户界面的重要组成部分,用于提供多种操作选项,而【超级菜单支持库】则提供了...

    超级强大的代码收集器

    它允许用户将不同语言(如C#、Java、Python、JavaScript等)的代码片段分类存储,每个代码段都可能附带详细注释和使用场景,这对于理解和复用代码至关重要。此外,预置的库中包含了各种经典案例,这些案例涵盖了常见...

    超级好的纯jsp写的聊天室

    【标题】"超级好的纯jsp写的聊天室"揭示了一个基于JavaServer Pages(JSP)技术构建的在线聊天室系统。JSP是一种动态网页开发技术,它允许开发者在HTML或XML文档中嵌入Java代码,从而在服务器端处理数据并生成响应的...

    超级代码助手(管理记录代码的工具)

    动态链接库的优点在于,它可以被多个程序共享,减少了内存占用,同时也能方便地更新和维护功能。 "config.ini"文件则是软件的配置信息存储位置,用户可以通过修改这个文件来定制工具的界面、快捷键设置、默认行为等...

    超级好使的API速看器

    2. **代码片段生成**:工具可以直接生成调用API的代码片段,支持多种编程语言,如Java、Python、JavaScript等,帮助开发者快速集成API。 3. **实时预览与调试**:有些API查看器提供接口测试功能,允许用户输入参数...

    超级炫的一个Android效果

    在Android开发领域,炫酷的效果往往能够提升用户体验,吸引用户注意力...通过学习以上知识点,并结合实际项目中的"超级炫的一个Android效果",开发者可以创造出引人注目的互动体验,提高应用程序的吸引力和用户满意度。

    超级实用的前端静态资源demo

    在这个demo中,可能包含了一些JavaScript代码片段或者引用了外部的JS库,用于实现如按钮点击事件、页面跳转等功能。 "jsp"标签暗示了这个资源包可能与Java服务器页面有关,这是一种服务器端脚本技术,允许开发者将...

    超级jsp学习资料 很好

    总的来说,这个“超级jsp学习资料”压缩包提供了一个全面的JSP学习路径,从基础概念到实践应用,覆盖了JSP开发的各个方面。无论是自学还是教学,都能从中受益匪浅。通过系统地学习和实践,你将能够熟练掌握JSP技术,...

    jsp程序设计笔试填空及答案.pdf

    JSP(Java Server Pages)是一种基于Java技术的动态网页开发工具,它允许开发者在HTML页面中嵌入Java代码,以...以上就是JSP程序设计笔试中涉及的一些主要知识点,涵盖了JSP的基础语法、对象、动作和页面生命周期等。

    超级坦克代码

    在这个例子中,创建了一个新的 `Thread` 对象并将其启动,这样可以让子弹在单独的线程中移动,与游戏的主要逻辑分离,从而提高程序的整体性能和响应速度。 ### 4. 坦克游戏的设计 #### 4.1 游戏对象的状态管理 ...

    超级完整的Android面试题(附答案)

    在第一个问题中,题目询问了不同类型的 Java IO 流。正确答案是 **(C)**,即 `FileInputStream` 和 **(G)** `FilterInputStream`。 - **A. FileInputStream**:用于从文件系统中的某个文件中读取字节。 - **B. ...

    ACM入门习题一百道.doc(超级详细)

    - **比赛形式**:通常由三人组成一个队伍,在五个小时内解决8-13个问题,每个问题都是一个实际的应用场景,需要通过编写程序来解决。 ### 2. 数据结构与算法基础 文档中的习题很可能会涵盖以下几种常见的数据结构...

    正大软件集团jsp教程

    JSP是一种基于Java的服务器端编程技术,主要用于创建动态、交互式的Web应用程序。它的核心优势在于将HTML代码与Java代码分离,使得开发者可以更专注于页面的布局和设计,而Java代码则负责处理业务逻辑和数据操作。 ...

    NetBeans的默认快捷键和代码模板-快速参考

    1. 完成代码:Ctrl+\ - 这个快捷键可以在任何地方触发代码补全,显示与当前输入相关的代码片段。 2. 错误提示:Alt + Enter - 当出现错误时,使用这个组合键可以查看系统提供的修复建议。 3. 自动完成字符串:Ctrl+L...

Global site tag (gtag.js) - Google Analytics