Scala实现Try with resources自动关闭IO】的更多相关文章

在处理数据库连接或者输入输出流等场景时,我们经常需要写一些非常繁琐又枯燥乏味的代码来关闭数据库连接或输入输出流. 例如数据库操作: def update(sql: String)(conn: Connection): Int = { var statement: Statement = null try { statement = conn.createStatement() statement.executeUpdate(sql) } finally { if (conn != null) c…
Try-with-resources Try-with-resources是Java7中一个新的异常处理机制,它能够很容易地关闭在try-catch语句块中使用的资源. 利用Try-Catch-Finally管理资源(旧的代码风格) 在Java7以前,程序中使用的资源需要被明确地关闭,这个体验有点繁琐. 下面的方法读取文件,然后用System.out打印: private static void printFile() throws IOException { InputStream input…
public static void main(String[] args) throws IOException { try( FileInputStream fis = new FileInputStream("xxx.txt"); FileOutputStream fos = new FileOutputStream("yyy.txt"); ){ int b; while ((b = fis.read()) != -1){ fos.write(b); } }…
通过对Java注解(一):介绍,思想及优点学习了解,相信大家对Java注解有一定程度的了解,本篇文章将实战项目中的应用来加深对Java注解的了解. 本实例实现根据指定字段的JavaBean,生成对应列的报表.使用Java注解就是方便实现JavaBean与Excel或CSV列已一一映射.直观展现数据,不需要中间转换,Java注解可以很轻松实现. 下面先给出Java注解的定义: import java.lang.annotation.*; /** * 类功能描述:列属性 * * @author Wa…
创建map,并向map添加元素 val idMap = Map( "group_id" -> "GID", "sim_id" -> "SIM_ID", "list_sim_id" -> "LIST_SIM_ID" )idMap += ("foo" -> "bar") 关键字Option, Some, None https:/…
前言 本篇主要讲Scala的基本数据类型,更多教程请参考:Scala教程 基本数据类型 Scala一共提供了9中数据类型,Scala的基本数据类型与java中的基本数据类型是一一对应的,这是Scala的数据类型全是类,并且头字母大写 整数类型变量定义: //16进制 scala> val x = 0x29 x:Int = 41 //10进制 scala> val x = 41 x:Int = 41 //8进制 scala>051 res0:Int = 41 浮点型变量定义: //Doub…
原文链接:https://segmentfault.com/a/1190000005083578 初学Scala的人都会被Seq的各种操作符所confuse.下面简单列举一下各个Seq操作符的区别. 4种操作符的区别和联系 :: 该方法被称为cons,意为构造,向队列的头部追加数据,创造新的列表.用法为 x::list,其中x为加入到头部的元素,无论x是列表与否,它都只将成为新生成列表的第一个元素,也就是说新生成的列表长度为list的长度+1(btw, x::list等价于list.::(x))…
目标 配置一个spark standalone集群 + akka + kafka + scala的开发环境. 创建一个基于spark的scala工程,并在spark standalone的集群环境中运行. 创建一个基于spark+akka的scala工程,并在spark standalone的集群环境中运行. 创建一个基于spark+kafka的scala工程,并在spark standalone的集群环境中运行. 集群框架图 本图主要是说明各个组件可以发布到不同的逻辑机器上. GSpark C…
A quick tour of JSON libraries in Scala Update (18.11.2015): added spray-json-shapeless libraryUpdate (06.11.15): added circe library Some time ago I wrote a post on relational database access in Scala since I was looking for a library and there were…
Java 是一门比较优秀的编程语言, 其最大功劳是建立非常繁荣的JVM平台生态.不过 Java 语法比较麻烦,写过 C, Python 的人总是想使用简洁的语法,又希望利用上 Java 平台的强大,因此,催生了 Groovy , Scala 这样的 JVM 语言.那么为什么选择 Scala 呢? 因为 Scala 是一门富有想象力的语言! 本文尝试在 Javaweb 中使用 Scala , 使用 Scala 编写一个 Servlet ,项目见  http://www.cnblogs.com/lo…