`
dahuilang
  • 浏览: 10201 次
  • 性别: Icon_minigender_1
  • 来自: 烟台
社区版块
存档分类
最新评论

20个常用的java开发块

阅读更多
//1. 字符串有整型的相互转换  

002 String a = String.valueOf(2); //integer to numeric string  

003 int i = Integer.parseInt(a); //numeric string to an int 

004   

005 //2. 向文件末尾添加内容  

006 BufferedWriter out = null;  

007 try {  

008 out = new BufferedWriter(new FileWriter(”filename”, true));  

009 out.write(”aString”);  

010 } catch (IOException e) {  

011  // error processing code 

012   

013 } finally {  

014 if (out != null) {  

015 out.close();  

016 } 

017   

018 } 

019   

020 //3. 得到当前方法的名字  

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

022   

023 //4. 转字符串到日期  

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

025 //或者是:  

026 SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );  

027 Date date = format.parse( myString ); 

028   

029 //5. 使用JDBC链接Oracle  

030 public class OracleJdbcTest  

031 {  

032  String driverClass = "oracle.jdbc.driver.OracleDriver"; 

033   

034  Connection con; 

035   

036  public void init(FileInputStream fs) throws ClassNotFoundException, SQLException, FileNotFoundException, IOException  

037  {  

038  Properties props = new Properties();  

039  props.load(fs);  

040  String url = props.getProperty("db.url");  

041  String userName = props.getProperty("db.user");  

042  String password = props.getProperty("db.password");  

043  Class.forName(driverClass); 

044   

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

046  } 

047   

048  public void fetch() throws SQLException, IOException  

049  {  

050  PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");  

051  ResultSet rs = ps.executeQuery(); 

052   

053  while (rs.next())  

054  {  

055  // do the thing you do  

056  }  

057  rs.close();  

058  ps.close();  

059  } 

060   

061  public static void main(String[] args)  

062  {  

063  OracleJdbcTest test = new OracleJdbcTest();  

064  test.init();  

065  test.fetch();  

066  }  

067 } 

068   

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

070 java.util.Date utilDate = new java.util.Date();  

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

072   

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

074  public static void fileCopy( File in, File out )  

075  throws IOException  

076  {  

077  FileChannel inChannel = new FileInputStream( in ).getChannel();  

078  FileChannel outChannel = new FileOutputStream( out ).getChannel();  

079  try 

080  {  

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

082   

083  // magic number for Windows, 64Mb - 32Kb)  

084  int maxCount = (64 * 1024 * 1024) - (32 * 1024);  

085  long size = inChannel.size();  

086  long position = 0;  

087  while ( position < size )  

088  {  

089  position += inChannel.transferTo( position, maxCount, outChannel );  

090  }  

091  }  

092  finally 

093  {  

094  if ( inChannel != null )  

095  {  

096  inChannel.close();  

097  }  

098  if ( outChannel != null )  

099  {  

100  outChannel.close();  

101  }  

102  }  

103  } 

104   

105 //8. 创建图片的缩略图  

106 private void createThumbnail(String filename, int thumbWidth, int thumbHeight, int quality, String outFilename)  

107  throws InterruptedException, FileNotFoundException, IOException  

108  {  

109  // load image from filename  

110  Image image = Toolkit.getDefaultToolkit().getImage(filename);  

111  MediaTracker mediaTracker = new MediaTracker(new Container());  

112  mediaTracker.addImage(image, 0);  

113  mediaTracker.waitForID(0);  

114  // use this to test for errors at this point: System.out.println(mediaTracker.isErrorAny()); 

115   

116  // determine thumbnail size from WIDTH and HEIGHT  

117  double thumbRatio = (double)thumbWidth / (double)thumbHeight;  

118  int imageWidth = image.getWidth(null);  

119  int imageHeight = image.getHeight(null);  

120  double imageRatio = (double)imageWidth / (double)imageHeight;  

121  if (thumbRatio < imageRatio) {  

122  thumbHeight = (int)(thumbWidth / imageRatio);  

123  } else {  

124  thumbWidth = (int)(thumbHeight * imageRatio);  

125  } 

126   

127  // draw original image to thumbnail image object and  

128  // scale it to the new size on-the-fly  

129  BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB);  

130  Graphics2D graphics2D = thumbImage.createGraphics();  

131  graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);  

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

133   

134  // save thumbnail image to outFilename  

135  BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename));  

136  JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);  

137  JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage);  

138  quality = Math.max(0, Math.min(quality, 100));  

139  param.setQuality((float)quality / 100.0f, false);  

140  encoder.setJPEGEncodeParam(param);  

141  encoder.encode(thumbImage);  

142  out.close();  

143  } 

144   

145 //9. 创建 JSON 格式的数据  

146 import org.json.JSONObject;  

147 ...  

148 ...  

149 JSONObject json = new JSONObject();  

150 json.put("city", "Mumbai");  

151 json.put("country", "India");  

152 ...  

153 String output = json.toString();  

154 ... 

155   

156 //10. 使用iText JAR生成PDF  

157 import java.io.File;  

158 import java.io.FileOutputStream;  

159 import java.io.OutputStream;  

160 import java.util.Date; 

161   

162 import com.lowagie.text.Document;  

163 import com.lowagie.text.Paragraph;  

164 import com.lowagie.text.pdf.PdfWriter; 

165   

166 public class GeneratePDF { 

167   

168  public static void main(String[] args) {  

169  try {  

170  OutputStream file = new FileOutputStream(new File("C:\\Test.pdf")); 

171   

172  Document document = new Document();  

173  PdfWriter.getInstance(document, file);  

174  document.open();  

175  document.add(new Paragraph("Hello Kiran"));  

176  document.add(new Paragraph(new Date().toString())); 

177   

178  document.close();  

179  file.close(); 

180   

181  } catch (Exception e) { 

182   

183  e.printStackTrace();  

184  }  

185  }  

186 } 

187   

188 //11. HTTP 代理设置  

189 System.getProperties().put("http.proxyHost", "someProxyURL");  

190 System.getProperties().put("http.proxyPort", "someProxyPort");  

191 System.getProperties().put("http.proxyUser", "someUserName");  

192 System.getProperties().put("http.proxyPassword", "somePassword"); 

193   

194 //12. 单实例Singleton 示例  

195 public class SimpleSingleton {  

196  private static SimpleSingleton singleInstance = new SimpleSingleton(); 

197   

198  //Marking default constructor private  

199  //to avoid direct instantiation.  

200  private SimpleSingleton() {  

201  } 

202   

203  //Get instance for class SimpleSingleton  

204  public static SimpleSingleton getInstance() { 

205   

206  return singleInstance;  

207  }  

208 } 

209   

210 //另一种实现 

211   

212 public enum SimpleSingleton {  

213  INSTANCE;  

214  public void doSomething() {  

215  }  

216 } 

217   

218 //Call the method from Singleton:  

219 SimpleSingleton.INSTANCE.doSomething(); 

220   

221 //13. 抓屏程序  

222 import java.awt.Dimension;  

223 import java.awt.Rectangle;  

224 import java.awt.Robot;  

225 import java.awt.Toolkit;  

226 import java.awt.image.BufferedImage;  

227 import javax.imageio.ImageIO;  

228 import java.io.File; 

229   

230 ...  

231 public void captureScreen(String fileName) throws Exception { 

232   

233  Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();  

234  Rectangle screenRectangle = new Rectangle(screenSize);  

235  Robot robot = new Robot();  

236  BufferedImage image = robot.createScreenCapture(screenRectangle);  

237  ImageIO.write(image, "png", new File(fileName)); 

238   

239 }  

240 //14. 列出文件和目录  

241 File dir = new File("directoryName");  

242  String[] children = dir.list();  

243  if (children == null) {  

244  // Either dir does not exist or is not a directory  

245  } else {  

246  for (int i=0; i < children.length; i++) {  

247  // Get filename of file or directory  

248  String filename = children[i];  

249  }  

250  } 

251   

252  // It is also possible to filter the list of returned files.  

253  // This example does not return any files that start with `.’.  

254  FilenameFilter filter = new FilenameFilter() {  

255  public boolean accept(File dir, String name) {  

256  return !name.startsWith(".");  

257  }  

258  };  

259  children = dir.list(filter); 

260   

261  // The list of files can also be retrieved as File objects  

262  File[] files = dir.listFiles(); 

263   

264  // This filter only returns directories  

265  FileFilter fileFilter = new FileFilter() {  

266  public boolean accept(File file) {  

267  return file.isDirectory();  

268  }  

269  };  

270  files = dir.listFiles(fileFilter); 

271   

272 //15. 创建ZIP和JAR文件 

273   

274 import java.util.zip.*;  

275 import java.io.*; 

276   

277 public class ZipIt {  

278  public static void main(String args[]) throws IOException {  

279  if (args.length < 2) {  

280  System.err.println("usage: java ZipIt Zip.zip file1 file2 file3");  

281  System.exit(-1);  

282  }  

283  File zipFile = new File(args[0]);  

284  if (zipFile.exists()) {  

285  System.err.println("Zip file already exists, please try another");  

286  System.exit(-2);  

287  }  

288  FileOutputStream fos = new FileOutputStream(zipFile);  

289  ZipOutputStream zos = new ZipOutputStream(fos);  

290  int bytesRead;  

291  byte[] buffer = new byte[1024];  

292  CRC32 crc = new CRC32();  

293  for (int i=1, n=args.length; i < n; i++) {  

294  String name = args[i];  

295  File file = new File(name);  

296  if (!file.exists()) {  

297  System.err.println("Skipping: " + name);  

298  continue;  

299  }  

300  BufferedInputStream bis = new BufferedInputStream(  

301  new FileInputStream(file));  

302  crc.reset();  

303  while ((bytesRead = bis.read(buffer)) != -1) {  

304  crc.update(buffer, 0, bytesRead);  

305  }  

306  bis.close();  

307  // Reset to beginning of input stream  

308  bis = new BufferedInputStream(  

309  new FileInputStream(file));  

310  ZipEntry entry = new ZipEntry(name);  

311  entry.setMethod(ZipEntry.STORED);  

312  entry.setCompressedSize(file.length());  

313  entry.setSize(file.length());  

314  entry.setCrc(crc.getValue());  

315  zos.putNextEntry(entry);  

316  while ((bytesRead = bis.read(buffer)) != -1) {  

317  zos.write(buffer, 0, bytesRead);  

318  }  

319  bis.close();  

320  }  

321  zos.close();  

322  }  

323 } 

324   

325 //16. 解析/读取XML 文件  

326 XML文件  

327 <?xml version="1.0"?>  

328 <students>  

329  <student>  

330  <name>John</name>  

331  <grade>B</grade>  

332  <age>12</age>  

333  </student>  

334  <student>  

335  <name>Mary</name>  

336  <grade>A</grade>  

337  <age>11</age>  

338  </student>  

339  <student>  

340  <name>Simon</name>  

341  <grade>A</grade>  

342  <age>18</age>  

343  </student>  

344 </students> 

345   

346 //Java代码  

347 package net.viralpatel.java.xmlparser; 

348   

349 import java.io.File;  

350 import javax.xml.parsers.DocumentBuilder;  

351 import javax.xml.parsers.DocumentBuilderFactory; 

352   

353 import org.w3c.dom.Document;  

354 import org.w3c.dom.Element;  

355 import org.w3c.dom.Node;  

356 import org.w3c.dom.NodeList; 

357   

358 public class XMLParser { 

359   

360  public void getAllUserNames(String fileName) {  

361  try {  

362  DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();  

363  DocumentBuilder db = dbf.newDocumentBuilder();  

364  File file = new File(fileName);  

365  if (file.exists()) {  

366  Document doc = db.parse(file);  

367  Element docEle = doc.getDocumentElement(); 

368   

369  // Print root element of the document  

370  System.out.println("Root element of the document: " 

371  + docEle.getNodeName()); 

372   

373  NodeList studentList = docEle.getElementsByTagName("student"); 

374   

375  // Print total student elements in document  

376  System.out  

377  .println("Total students: " + studentList.getLength()); 

378   

379  if (studentList != null && studentList.getLength() > 0) {  

380  for (int i = 0; i < studentList.getLength(); i++) { 

381   

382  Node node = studentList.item(i); 

383   

384  if (node.getNodeType() == Node.ELEMENT_NODE) { 

385   

386  System.out  

387  .println("====================="); 

388   

389  Element e = (Element) node;  

390  NodeList nodeList = e.getElementsByTagName("name");  

391  System.out.println("Name: " 

392  + nodeList.item(0).getChildNodes().item(0)  

393  .getNodeValue()); 

394   

395  nodeList = e.getElementsByTagName("grade");  

396  System.out.println("Grade: " 

397  + nodeList.item(0).getChildNodes().item(0)  

398  .getNodeValue()); 

399   

400  nodeList = e.getElementsByTagName("age");  

401  System.out.println("Age: " 

402  + nodeList.item(0).getChildNodes().item(0)  

403  .getNodeValue());  

404  }  

405  }  

406  } else {  

407  System.exit(1);  

408  }  

409  }  

410  } catch (Exception e) {  

411  System.out.println(e);  

412  }  

413  }  

414  public static void main(String[] args) { 

415   

416  XMLParser parser = new XMLParser();  

417  parser.getAllUserNames("c:\\test.xml");  

418  }  

419 }  

420 //17. 把 Array 转换成 Map  

421 import java.util.Map;  

422 import org.apache.commons.lang.ArrayUtils; 

423   

424 public class Main { 

425   

426  public static void main(String[] args) {  

427  String[ ][ ] countries = { { "United States", "New York" }, { "United Kingdom", "London" },  

428  { "Netherland", "Amsterdam" }, { "Japan", "Tokyo" }, { "France", "Paris" } }; 

429   

430  Map countryCapitals = ArrayUtils.toMap(countries); 

431   

432  System.out.println("Capital of Japan is " + countryCapitals.get("Japan"));  

433  System.out.println("Capital of France is " + countryCapitals.get("France"));  

434  }  

435 } 

436   

437 //18. 发送邮件  

438 import javax.mail.*;  

439 import javax.mail.internet.*;  

440 import java.util.*; 

441   

442 public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException  

443 {  

444  boolean debug = false; 

445   

446  //Set the host smtp address  

447  Properties props = new Properties();  

448  props.put("mail.smtp.host", "smtp.example.com"); 

449   

450  // create some properties and get the default Session  

451  Session session = Session.getDefaultInstance(props, null);  

452  session.setDebug(debug); 

453   

454  // create a message  

455  Message msg = new MimeMessage(session); 

456   

457  // set the from and to address  

458  InternetAddress addressFrom = new InternetAddress(from);  

459  msg.setFrom(addressFrom); 

460   

461  InternetAddress[] addressTo = new InternetAddress[recipients.length];  

462  for (int i = 0; i < recipients.length; i++)  

463  {  

464  addressTo[i] = new InternetAddress(recipients[i]);  

465  }  

466  msg.setRecipients(Message.RecipientType.TO, addressTo); 

467   

468  // Optional : You can also set your custom headers in the Email if you Want  

469  msg.addHeader("MyHeaderName", "myHeaderValue"); 

470   

471  // Setting the Subject and Content Type  

472  msg.setSubject(subject);  

473  msg.setContent(message, "text/plain");  

474  Transport.send(msg);  

475 } 

476   

477 //19. 发送代数据的HTTP 请求  

478 import java.io.BufferedReader;  

479 import java.io.InputStreamReader;  

480 import java.net.URL; 

481   

482 public class Main {  

483  public static void main(String[] args) {  

484  try {  

485  URL my_url = new URL("http://cocre.com/");  

486  BufferedReader br = new BufferedReader(new InputStreamReader(my_url.openStream()));  

487  String strTemp = "";  

488  while(null != (strTemp = br.readLine())){  

489  System.out.println(strTemp);  

490  }  

491  } catch (Exception ex) {  

492  ex.printStackTrace();  

493  }  

494  }  

495 } 

496   

497 //20. 改变数组的大小  

498 /**  

499 * Reallocates an array with a new size, and copies the contents  

500 * of the old array to the new array.  

501 * @param oldArray the old array, to be reallocated.  

502 * @param newSize the new array size.  

503 * @return A new array with the same contents.  

504 */ 

505 private static Object resizeArray (Object oldArray, int newSize) {  

506  int oldSize = java.lang.reflect.Array.getLength(oldArray);  

507  Class elementType = oldArray.getClass().getComponentType();  

508  Object newArray = java.lang.reflect.Array.newInstance(  

509  elementType,newSize);  

510  int preserveLength = Math.min(oldSize,newSize);  

511  if (preserveLength > 0)  

512  System.arraycopy (oldArray,0,newArray,0,preserveLength);  

513  return newArray;  

514 } 

515   

516 // Test routine for resizeArray().  

517 public static void main (String[] args) {  

518  int[] a = {1,2,3};  

519  a = (int[])resizeArray(a,5);  

520  a[3] = 4;  

521  a[4] = 5;  

522  for (int i=0; i<a.length; i++)   

523  System.out.println (a[i]);  

524 }
分享到:
评论

相关推荐

    Java开发的打方块游戏

    Java开发的打方块游戏,适合初学者参考和学习,设计的比较简单

    Java开发详解.zip

    010102_【第1章:JAVA概述及开发环境搭建】_Java开发环境搭建笔记.pdf 010201_【第2章:简单Java程序】_简单Java程序笔记.pdf 010301_【第3章:Java基础程序设计】_Java数据类型笔记.pdf 010302_【第3章:Java基础...

    Java开发技术大全(500个源代码).

    HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 ...

    Java Web开发入门很简单源代码

    第1篇为准备篇,主要为Java Web开发概述,并手把手带领读者一块搭建Java Web开发环境;第2篇为基础篇,主要介绍HTML、CSS、JavaScript、Servlet、JSP和JavaBean等Java Web开发所需的基础知识,并对这些基础知识进行...

    java开发的推箱子小游戏

    java开发的推箱子小游戏,100关,内含java源代码,适合新手学习。本人新手,代码写的一般般,希望大家多多指教。

    《阿里巴巴 Java开发手册 1.6.0(泰山版)》.7z

    此次公开的Java开发手册正是出自这样的团队,近万名阿里Java技术精英的经验总结,并经历了多次大规模一线实战检验及完善,铸就了这本高含金量的阿里Java开发手册。该手册以Java开发者为中心视角,划分为编程规约、...

    Java Web服务开发

    书 名:Java Web服务开发 作 者:[美]尼戈潘 等著,庞太刚,陶程 译 出 版 社:清华大学出版社 出版时间:2004-5-1 页 数:543 定 价:68.00 ISBN:9787302084440 内容简介:本书全面深入地探讨了下一代...

    阿里巴巴java开发手册最新版

    志、MySQL 数据库、工程结构、安全规约五大块,再根据内容特征,细分成若干二级子 目录。根据约束力强弱及故障敏感性,规约依次分为强制、推荐、参考三大类。对于 规约条目的延伸信息中,“说明”对内容做了引申和...

    java技术学习文档.docx

    常用的Java开发工具包括Eclipse、IntelliJ IDEA和NetBeans等。Java开发环境包括Java开发工具包(JDK)和Java虚拟机(JVM)。JDK是Java编程语言的开发工具包,包括Java编译器、Java调试器等工具。JVM是Java程序的运行...

    Java检测碰撞 聪明躲开的方块.rar

    Java检测碰撞 聪明躲开的方块,鼠标始终碰不到该方块,是一个小游戏类型的程序吧,程序执行后,创建一个含有方块的面板,用户可以通过鼠标抓取方块,但是,无论用户怎样努力,方块总是朝着与鼠标运动相反的方向运动...

    一个非常简单的java游戏,方块打小球。.zip

    java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发...

    java小游戏,滚木块.zip

    java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发 小游戏 经典游戏 游戏源码 课程设计 java游戏开发...

    基于java开发的微信程序小游戏-别踩白块.zip

    基于java开发的微信程序小游戏-别踩白块

    java语言键盘事件游戏-别踩白块.zip

    java课程设计大作业,java、算法练手项目,适合初学java、数据结构的同学拿来学习研究,基于java、GUI开发的小游戏,程序都经过测试,可以直接运行,资源含程序运行所需的源码、资源文件等全部数据,有需要的可放心...

    精通Struts:基于MVC的Java Web设计与开发.part3

    电子工业出版社的,孙卫琴的《精通Struts:基于MVC的Java Web设计与开发》22.9Mb,清晰版,原来传的时候附件只能是5Mb,一共有五个,有点麻烦,现在能传10Mb的所以分成三块压缩再传了一遍,下载后把三个压缩文件的...

    网络对战俄罗期方块(基于java开发)

    自己创做的基于java开发的网络对战俄罗期方块 , 注意这不是项目原码,就是一个游戏exe

    《Java和Android开发实战详解》第2到5章源代码-by 南邮-陈杨

    1.4 搭建Java开发环境 9 1.4.1 安装与设置JDK 9 1.4.2 安装与启动Eclipse IDE 12 习题 15 第2章 构建Java应用程序 16 2.1 如何构建应用程序 16 2.1.1 如何编写程序代码 16 2.1.2 程序设计的基础 17 ...

    Java开发技术大全 电子版

    Java开发技术大全 电子版 第1篇Java基础知识入门. 第1章Java的开发运行环境2 1.1Java的运行环境与虚拟机2 1.2Java的开发环境4 1.2.1JDK的安装4 1.2.2如何设置系统环境变量6 1.2.3编译命令的使用8 1.2.4解释...

Global site tag (gtag.js) - Google Analytics