try

Java try-with-resource语法

拟墨画扇 提交于 2019-12-09 22:00:03
JDK1.7之前 在JDK1.7之前要确保外部资源关闭一般使用finally,如下 FileInputStream inputStream = null ; try { inputStream = new FileInputStream ( new File ( "user.csv" ) ) ; System . out . println ( inputStream . read ( ) ) ; } catch ( IOException e ) { throw new RuntimeException ( e . getMessage ( ) , e ) ; } finally { if ( inputStream != null ) { try { inputStream . close ( ) ; } catch ( IOException e ) { throw new RuntimeException ( e . getMessage ( ) , e ) ; } } } try-with-resource 在JDK1.7及之后对于实现了AutoCloseable接口的对象可以使用try-with-resource语法,该语法会确保外部资源的close方法被调用。如下: try ( FileInputStream inputStream = new

公文流转系统

让人想犯罪 __ 提交于 2019-12-09 20:47:57
连接了数据库,数据库的增删改查,建用户数据库。 写了住界面和功能界面,拟制公文的界面 package util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import entity.Doc; import entity.Permission; import entity.Users; /** * * @author twj * */ public class DBUtil { private static String db_url = "jdbc:mysql://localhost:3306/test3?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC"; public static String db_user = "root"; public static String db_pass = "123"; public static

try catch在for循环外面还是里面

 ̄綄美尐妖づ 提交于 2019-12-09 19:42:27
static void Main(string[] args) { //将异常写在循环外,出现异常循环终止 try { Console.WriteLine("抛出异常不输出"); for (int i = 0; i < 5; i++) { Console.WriteLine(i); Convert.ToInt16("test"); } } catch (Exception ex) { Console.WriteLine(ex.Message); } //将异常写在循环内,不影响下一次循环 Console.WriteLine("抛出异常继续输出"); for (int i = 0; i < 5; i++) { try { Console.WriteLine(i); if (i == 1) { Convert.ToInt16("test"); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } Console.ReadKey(); } //将异常写在循环内,不影响下一次循环 //将异常写在循环外,出现异常循环终止 来源: https://www.cnblogs.com/DSC1991/p/12012976.html

19.12.09

a 夏天 提交于 2019-12-09 19:09:30
package com.official.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import org.apache.catalina.User; import com.official.bean.Doc; import com.official.bean.Permission; import com.official.bean.Users; public class DBUtil { //数据库URL和账号密码 private static final String connectionURL="jdbc:mysql://localhost:3306/doc_system?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true"; private static final String username=

网络技能大赛A卷测试

不问归期 提交于 2019-12-09 17:53:14
这个测试对我来言有些难度,短时间内做不了太多。首先是思路的理清,登录后的界面有好几种,而且公文的状态也有好几种。理清思路就花了一些时间 然后大致的框架做了做,然后将用户的增删改查还有公文的增删改查写了写。登录界面也完成了,不过不同角色登陆后的界面还没来得及做。主要就是功能太多,运用不熟练 数据库 bean层的基本信息 package com.bean; public class User { private int id; private String username; private String password; private int permissionId; private int status; public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public int getId() { return id; } public void setId(int id) { this.id = id; } private String job; public String getUsername() { return username; } public void setUsername(String username)

finally块的问题(finally block does not complete norma

眉间皱痕 提交于 2019-12-09 16:53:42
try.............catch...................finally finally中不能写return Try-catch的流程说明: try { … … return true; }catch(异常){ … } finally { … } } 1,try-catch-finally, 如果try语句块遇到异常,try下面的代码就不执行了,转而执行catch语句块,执行完再执行finally语句块,最后结束。 2,try-finally, 如果在try语句块中执行到return语句前一条,未遇到异常,转而执行finally语句块,执行完再执行try中的return语句。 不要用return、break、continue或throw来退出finally语句块 正确用法 //该方法返回false static boolean f() { try { return true; } finally { //不做return操作 } } 来源: oschina 链接: https://my.oschina.net/u/1866807/blog/724502

解决服务器返回错误数据格式导致Json解析出错造成app崩溃

不羁的心 提交于 2019-12-09 15:05:13
第一种方案:可以使用try来手动抛出异常,并打印错误信息 MatchBean matchBean = null ; try { matchBean = new Gson ( ) . fromJson ( msg . obj . toString ( ) , MatchBean . class ) ; } catch ( Exception e ) { e . printStackTrace ( ) ; StringWriter sw = new StringWriter ( ) ; e . printStackTrace ( new PrintWriter ( sw , true ) ) ; String str = sw . toString ( ) ; LogUtils . e ( str ) ; } 第二种方案:判断返回的数据是否为json格式 /** * 判断是否是json结构 */ public static boolean isJson ( String value ) { try { new JSONObject ( value ) ; } catch ( JSONException e ) { return false ; } return true ; } 来源: CSDN 作者: OrangeBoys 链接: https://blog.csdn.net/qq

socket通信同步通信,异步通信

家住魔仙堡 提交于 2019-12-09 14:03:34
socket通信 socket通信的时候一般就是连接,连接之后进行发送接收等等操作。 现在我来说说同步通信和异步通信的区别 很简单的,如果我们将通信比作计时多个运动员跑步,同步通信就相当于每个运动元都得配一个人计时的。异步通信就是一个人可以记录多个运动员跑步。 socket通信----同步通信 同步通信 client.connetction(); client.send(); client.receive(); socket通信----异步通信 异步通信 这里面主要是在连接,发送,接收的时候有了AsyncCallback异步回调机制 客户端 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; namespace socketClient { public partial

20172306《Java程序设计与数据结构》第九周学习总结

让人想犯罪 __ 提交于 2019-12-09 13:46:00
20172306《Java程序设计》第九周学习总结 教材学习内容总结 第十一章: try-catch语句。其中还有finally语句。try是进行某些操作,catch是捕获异常,并通过某些异常来进行某些操作。finally是无论是否有异常都会进行的语句。可以没有catch语句。 异常的传递。我觉得传递,主要是某地方的异常是由其他的方法引起的,异常就会传递到那个方法上。书中的例子可以很好的表现出来。 IO异常。书中的内容主要是围绕异常来写。老师在蓝墨云中有写有关IO更为详细的内容。例如创建文件,写入文件,读取文件等等。 第十二章: 递归和循环是差不多的但是还是有不同的。对于死循环和死递归,死循环会一直循环运行,而死递归会出现溢出。因为空间是有限的。 通过迷宫旅行和汉诺塔问题的模型,我个人学习到的是,考虑问题需要详细一些。具体的代码如何编写,我认为更重要的是理解它是如何进行操作的。 教材学习中的问题和解决过程 问题1:什么是方法调用堆栈踪迹? 问题1解决方案:我上网查了一下。 问题2:对于eg11.2中一行代码:district = Integer.parseInt(code.substring(3,7));中(3,7)不明白是多少到多少? 问题2解决方案:利用IDEA可以看到,substring(begineIndex,endIndex);我又问了同学,知道了这个应该是索引3,4,5

Java NIO Socket编程实例

五迷三道 提交于 2019-12-09 11:04:52
各I/O模型优缺点 BIO通信模型 BIO主要的问题在于每当有一个新的客户端请求接入时,服务端必须创建一个新的线程处理新接入的客户端链路,一个线程只能处理一个客户端连接 线程池I/O编程 假如所有可用线程都被阻塞,后续I/O都将在队列中排队 线程池采用阻塞队列实现,队列积满之后,后续入队列操作将被阻塞,新的客户端请求被拒绝,发生大量连接超时 NIO编程 缓冲区Buffer 每一种Java基本类型都有对一种缓冲区 大多数标准I/O使用ByteBuffer 通道Channel Channel分为两大类:用于网络读写的SelectableChannel和用于文件操作的FileChannel 多路复用器Selector 多路复用器提供选择已经就绪的任务的能力 NIO2.0 AIO 异步套接字通道不需要通过多路复用器(Selector)对注册的通道进行轮询操作即可实现异步读写 NIO实例分析 NIO服务端序列 步骤一:打开ServerSocketChannel,用于监听客户端的连接 步骤二:绑定监听端口,设置连接为非阻塞模式 步骤三:创建Reactor线程,创建多路复用器并启动线程 步骤四:将ServerSocketChannel注册到Reactor线程的多路复用器Selector上,监听ACCEPT事件 步骤五:多路复用器在线程run方法的无限循环体内轮休准备就绪的Key 步骤六