try

Http 工具类

眉间皱痕 提交于 2019-12-20 00:24:30
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.security.KeyManagementException; import java.security.NoSuchAlgorithmException; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import javax.net.ssl.SSLContext; import javax

[Android]蓝牙基本操作

女生的网名这么多〃 提交于 2019-12-19 23:31:13
蓝牙是一种支持设备短距离传输数据的无线技术。android在2.0以后提供了这方面的支持。 从查找蓝牙设备到能够相互通信要经过几个基本步骤(本机做为服务器): 1.设置权限 在manifest中配置 Xml代码 <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 2.启动蓝牙 首先要查看本机是否支持蓝牙,获取BluetoothAdapter蓝牙适配器对象 Java代码 BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if(mBluetoothAdapter == null){ //表明此手机不支持蓝牙 return; } if(!mBluetoothAdapter.isEnabled()){ //蓝牙未开启,则开启蓝牙 Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableIntent, REQUEST_ENABLE_BT)

四个线程实现打印功能,资源类有两个方法,使得资源开始是0结束也是0

强颜欢笑 提交于 2019-12-19 19:39:44
题目:两组线程循环打印一加,一减。打印10 次 思路:实现一个资源类,定义一个变量两个方法一个同步方法实现++,另一个同步方法--。 (使用synchronized关键字) package com.thekingqj; class Zi { private int m = 0; public synchronized void increment() throws InterruptedException { while (m == 0) { this.wait(); } --m; this.notifyAll(); System.out.println(Thread.currentThread().getName() + "\t" + m); } public synchronized void decrement() throws InterruptedException { while (m != 0) { this.wait(); } ++m; this.notifyAll(); System.out.println(Thread.currentThread().getName() + "\t" + m); } } /** * 1. 高内聚低耦合前提下,线程操作资源类 * 2. 判断/干活/通知 * 3. 防止多线程通信时,虚假唤醒的BUG

大厂面试必知必会:图解分布式事务实现原理

让人想犯罪 __ 提交于 2019-12-19 17:12:33
问题场景 什么是事务? 事务是数据库从一个稳定状态变迁到另一个稳定状态的保证,具备 ACID 这 4 个特性: 原子性(Atomicity):一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚到事务开始前的状态。 一致性(Consistency):在事务开始之前和事务结束以后,数据库的完整性限制没有被破坏。 隔离性(Isolation):两个事务的执行是互不干扰的,两个事务时间不会互相影响。 持久性(Durability):在事务完成以后,该事务对数据库所作的更改便持久地保存在数据库之中,并且是完全的。 例如应用程序需要更新多条相关数据时就需要进行事务处理。 什么是分布式事务? 当遇到复杂业务调用时,可能会出现跨库多资源调用(一个事务管理器,多个资源)/多服务调用(多个事务管理器,多个资源),期望全部成功或失败回滚,这就是分布式事务,用以保证“操作多个隔离资源的数据一致性”。 分布式事务与 XA 规范 分布式事务是指会涉及到操作多个数据库的事务,同样必须保证 ACID。其就是将对同一库事务的概念扩大到了对多个库的事务:对同一库的 SQL 操作对应了分布式事务中对一个库的事务。 X/Open XA 定义了分布式事务处理的规范,并由数据库厂商在驱动层面进行实现。XA 规范的基础是两阶段提交协议

python3.X中try/except

蓝咒 提交于 2019-12-19 13:01:57
包含try...except...在3.x版本中与2.x版本中的用法差异。 1、先说差异:   在 2.x 的python中用法实例: 1 try: 2 ...... 3 except Exception,e: 4 raise e    在 3.x 的python中用法实例: 1 try: 2 ...... 3 except Exception as e: 4 raise e 好啦,两者差异经过对比一目了然(感觉这里说格式更好一点,但是格式与用法的成分都有,算了,就这样吧)。啦啦啦~ 2、再说和异常相关的:   与Python异常相关的关键字 1   关键字 关键字说明 2   raise 抛出/引发异常 3   try/except 捕获异常并处理 4   pass 忽略异常 5   as 定义异常实例(except IOError as e) 6   finally 无论是否出现异常,都执行的代码 7   else 如果try中的语句没有引发异常,则执行else中的语句的语句没有引发异常,则执行else中的语句 3、使用try和except语句来捕获异常 1 try: 2   block 3   except [exception,[data…]]: 4   block 6   try: 7     block 8   except [exception,[data...]]:

多线程核心技术 Chapter1

a 夏天 提交于 2019-12-19 12:07:40
多线程核心技术 技能基础Charpter1 本章需要着重掌握的是 线程的启动 如何使线程暂停 如何使线程停止 线程的优先级 线程安全相关的问题 1.1 进程和多线程的概念及多线程的优点 1.2 使用多线程 1.2.1 继承Thread类 1.2.2 实现Runnable接口 1.2.3 实例变量与线程安全 1.2.4 留意i-- 与 System.out.println()的异常 1.3 currentThread()方法 1.4 isAlive()方法 1.5 sleep()方法 1.6 getId()方法 1.7 停止线程(异常法) /** * stop()方法已经弃用,unsafe * interrupted()判断中断状态、并清除状态 * isInterrupted()判断中断状态,不清除状态 * interrupt() 停止线程的主要方法,但他不是真正终止一个正在运行的线程,只是在当前线程中打上一个停止标记,还需要加入一个判断才可以完成线程停止. * @author Hasee * */ public class Test11 { public static void main(String[] args) { try { // Thread.currentThread().interrupt(); MyThread11 thread = new MyThread11()

python3 异常处理

浪子不回头ぞ 提交于 2019-12-19 11:36:18
1.异常和错误 1.1 语法错误 #语法错误示范一 if #语法错误示范二 def test: pass #语法错误示范三 print(haha 1.2 逻辑错误 #用户输入不完整(比如输入为空)或者输入非法(输入不是数字) num=input(">>: ") int(num) #无法完成计算 res1=1/0 res2=1+'str' 2.python中异常种类 AttributeError 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x IOError 输入/输出异常;基本上是无法打开文件 ImportError 无法引入模块或包;基本上是路径问题或名称错误 IndentationError 语法错误(的子类) ;代码没有正确对齐 IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5] KeyError 试图访问字典里不存在的键 KeyboardInterrupt Ctrl+C被按下 NameError 尝试访问一个没有申明的变量 SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误,写错了) TypeError 传入对象类型与要求的不符合 UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,导致你以为正在访问它 ValueError

有没有办法检查文件是否正在使用?

泪湿孤枕 提交于 2019-12-19 11:00:19
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 我正在用C#编写一个程序,该程序需要重复访问1个图像文件。 在大多数情况下,它都可以工作,但是如果我的计算机运行速度很快,它将在尝试将文件保存回文件系统之前尝试访问该文件,并抛出错误: “文件正在被另一个进程使用” 。 我想找到一种解决方法,但是我所有的Google搜索都只能通过使用异常处理来创建检查。 这与我的宗教信仰背道而驰,所以我想知道是否有人能做得更好? #1楼 使用此命令检查文件是否被锁定: using System.IO; using System.Runtime.InteropServices; internal static class Helper { const int ERROR_SHARING_VIOLATION = 32; const int ERROR_LOCK_VIOLATION = 33; private static bool IsFileLocked(Exception exception) { int errorCode = Marshal.GetHRForException(exception) & ((1 << 16) - 1); return errorCode == ERROR_SHARING_VIOLATION || errorCode == ERROR_LOCK

try-catch-finally中的return

浪尽此生 提交于 2019-12-19 07:50:07
try-catch-finally try: 正常执行的语句 catch: try中抛出相应的异常时执行的语句 finally: 不管执行的是try还是catch, 最终都会执行的语句 先回顾以上基础 AutoClose 从jdk1.7开始, 可以在try后面加一对圆括号, 把要关闭的资源放到圆括号里声明, 可以自动关闭 File f = new File("test"); try ( InputStream is = new FileInputStream(f); InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); ) { br.readLine(); } catch (Exception e) { } 自动关闭的资源需要实现AutoCloseable接口 实际上 AutoCloseable 接口是jdk1.7新增的, 而 Closeable 接口继承自 AutoCloseable , 所以只要实现 Closeable 接口即可 带有 return 语句的try-catch-finally public static int tryCatchFinally() { int a = 1, b = 2; try { return ++a + b;

Java异常处理机制 —— 深入理解与开发应用

筅森魡賤 提交于 2019-12-19 07:48:56
   本文为原创博文,转载请注明出处,侵权必究!   Java异常处理机制在日常开发中应用频繁,其最主要的不外乎几个关键字:try、catch、finally、throw、throws,以及各种各样的Exception。本篇文章主要在基础的使用方法上,进一步分析在开发中如何使用异常机制更合理。 try-catch-finally     try-catch-finally块的用法比较简单,使用频次也最高。try块中包含可能出现异常的语句(当然这是人为决定的,try理论上可以包含任何代码),catch块负责捕获可能出现的异常,finally负责执行必须执行的语句,这里的代码不论是否发生了异常,都会被执行。     针对这部分,因为很基础,所以就提几点比较关键的建议:       1、当你在写try-catch语句的时候,脑子里是知道自己要去针对哪种异常进行处理的,不要只是以防万一,加了个catch(Exception e),这是毫无意义的。并且,一个try块中可能有多个异常,对于每一类异常,要分别写一个catch进行捕获。              2、针对可能出现异常的语句进行try-catch,大段代码的try-catch会非常不利于维护代码时定位异常可能发生的位置,对于肯定不会发生异常的稳定的代码,不需要放在try块中。       3、try-catch虽然在功能上