try

复习篇 异常

谁说胖子不能爱 提交于 2019-12-29 14:06:16
          异常(exception) 异常:在程序中不是正常运行,发生不正常的事件。叫做异常。 在以前我们可以使用if-else语句去判断。但是if语句去处理异常有很多缺点。   代码肿瘤,加入了大量的异常情况判断。   程序员把更多的精力放在了处理异常代码上,放在了“堵漏洞”上,影响开发效率。   异常处理代码和业务代码写在一起,影响代码的可读性,加大了难维护性。 什么是异常处理   java的异常处理是通过五个关键字来实现的:try,catch,finally,throw ,throws。 try-catch可以捕获异常。catch语句捕获异常。 如果出现异常相应的catch块将会执行。最大的异常是Exception。exception下又有好多子类。 try-catch-finally 这个的作用是什么呢:如果在try中遇见异常try之后的代码就不会走了直接走catch里的代码块了。finally的作用是:不管出现什么情况都会执行,所有可以把想要执行的代码写在这里。 多重catch块,用于解决多个异常。 声明异常----throws:throws可以同时声明多个异常,之间用逗号隔开。 throws声明异常,让上一级调用者处理异常。main()方法声明的异常将由java虚拟机来处理。 throw是负责抛出异常。 throws和throw的区别:

jxl导入/导出excel

谁说我不能喝 提交于 2019-12-29 12:29:20
1、jxl导入/导出excel案例,黏贴即可运行 package junit.test; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.write.Label; import jxl.write.Number; import jxl.write.WritableImage; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import org.apache.commons.lang3.math.NumberUtils; import org.junit.Test; /** * Excel导入导出 * * @author 林计钦 * @version 1.0 Feb 7, 2014 4:14:51 PM */ public class ExcelTest { /** * 导入(导入到内存) */ @Test public void

selenium 模块

扶醉桌前 提交于 2019-12-29 07:17:15
介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后的结果,可支持多种浏览器 from selenium import webdriver browser=webdriver.Chrome() browser=webdriver.Firefox() browser=webdriver.PhantomJS() browser=webdriver.Safari() browser=webdriver.Edge() 官网:http://selenium-python.readthedocs.io 安装 #安装:selenium+chromedriver pip3 install selenium 下载chromdriver.exe放到python安装路径的scripts目录中即可,注意最新版本 国内镜像网站地址:http://npm.taobao.org/mirrors/chromedriver/ 最新的版本去官网找:https://sites.google.com/a/chromium.org/chromedriver/downloads #验证安装 C:\Users\Administrator

Java 高并发五:JDK并发包1详细介绍

女生的网名这么多〃 提交于 2019-12-29 06:06:14
转自: https://www.jb51.net/article/92363.htm 1.1.1 ReentrantLock ReentrantLock感觉上是synchronized的增强版,synchronized的特点是使用简单,一切交给JVM去处理,但是功能上是比较薄弱的。在JDK1.5之前,ReentrantLock的性能要好于synchronized,由于对JVM进行了优化,现在的JDK版本中,两者性能是不相上下的。如果是简单的实现,不要刻意去使用ReentrantLock。 相比于synchronized,ReentrantLock在功能上更加丰富,它具有可重入、可中断、可限时、公平锁等特点。 /** @author Allen李 @date 说明ReentrantLock最初步的用法 */ public class TestReentrantLock01 implements Runnable { public static ReentrantLock lock = new ReentrantLock(); public static int i=0; @Override public void run() { for (int j = 0; j < 10000000; j++) { //并发规范写法一个加锁 lock.lock(); try { i++;

异常类之基类

六月ゝ 毕业季﹏ 提交于 2019-12-29 05:21:24
1.C++中的异常 C++异常处理语法元素 try-catch 语句 try 语句处理 正常 代码逻辑 (但有可能产生异常,产生异常时抛出异常并转到catch语句块里面的代码) catch 语句处理 异常 情况 try 语句中的 异常 由对应的 catch 语句处理 C++通过 throw 语句 抛出异常 信息(一般在try语句中) throw和return区别 throw异常的返回一个值,这个值就代表了异常, 抛到catch语句块 return正常的返回一个值 C++ 异常处理分析 (1) throw 抛出的异常 必须 被 catch 处理 当前函数 能够处理异常( 含有catch语句块 ) ,程序继续往下执行 当前函数 无法处理异常 ,则函数 停止执行 , 并返回,由上层函数进行处理了 。 (2)未被处理的异常会顺着函数调用栈向上传播,直到被处理为止,否则程序将停止执行。如果一直未处理则会到main函数,该函数中若果仍没有try..catch语句直接退出 (3)同 一个try语句 可以跟上 多个catch语句   ①catch语句可以定义具体处理的异常类型   ② 不同类型的异常由不同的catch语句负责处理 。   ③try语句中 可以抛出任何类型的异常   ④catch(…)用于处理所有类型的异常   ⑤任何异常都 只能被捕获(catch) 一次 。 (4

CWF框架之SQLHelper,简单的数据逻辑案例

最后都变了- 提交于 2019-12-29 05:03:18
对于数据处理逻辑,上篇已经发布了又VB.net写的接口,这里公布一个又vb.net写的接口实现类 本来想发布类工厂操作,但是我的工程采用了配置文件注入方式,所以代码又点长,就先发sql数据库操作的实现类。 Imports System.Data Imports System.Data.SqlClient Imports System.Data.Common ''' <summary> ''' 简单数据操作底层类SQL数据库 ''' </summary> ''' <remarks> ''' 该类执行简单的数据操作支持SQL ''' 开发者:欧阳寒玟 ''' 开发时间:2009-01-25 ''' 修改时间:2010-10-25 ''' 作者网站: http://www.coldwin.org ''' </remarks> Public Class SQLHelper Implements IDbHelper Private conStr As String Private conn As SqlConnection ''连接对象 Private cmd As SqlCommand ''Command对象 Private _isTran As Boolean = False ''是否执行事务 #Region "准备工作" ''' <summary> ''' 获取或设置链接字符串 '''

6.18-python学习

最后都变了- 提交于 2019-12-29 02:49:33
6.18-python学习 一.今日内容: 1.关于selenium选择器xpath的使用: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 from selenium import webdriver driver = webdriver.Chrome(r 'D:\BaiduNetdiskDownload\chromedriver_win32\chromedriver.exe' ) try : # 隐式等待: 写在get请求前 driver.implicitly_wait( 5 ) driver.get( 'https://doc.scrapy.org/en/latest/_static/selectors-sample1.html' ) # 显式等待: 写在get请求后 # wait.until(...) ''' <html> <head> <base href='http://example.com/' /> <title>Example website<

python实训day6

白昼怎懂夜的黑 提交于 2019-12-29 02:49:04
今天是Python实训的第六天,帅气的tank老师今天教我们了一些常用且实用的小技能。 课堂笔记: 1.关于selenium选择器xpath的使用: from selenium import webdriver driver = webdriver.Chrome(r'D:\BaiduNetdiskDownload\chromedriver_win32\chromedriver.exe') try: # 隐式等待: 写在get请求前 driver.implicitly_wait(5) driver.get('https://doc.scrapy.org/en/latest/_static/selectors-sample1.html') # 显式等待: 写在get请求后 # wait.until(...) ''' <html> <head> <base href='http://example.com/' /> <title>Example website</title> </head> <body> <div id='images'> <a href='image1.html'>Name: My image 1 <br /><img src='image1_thumb.jpg' /></a> <a href='image2.html'>Name: My image 2 <br />

2019.6.18

我只是一个虾纸丫 提交于 2019-12-29 02:47:34
昨日作业 自动登录抽屉网 1 from selenium import webdriver 2 import time 3 4 driver = webdriver.Chrome() 5 driver.maximize_window() 6 7 try: 8 driver.get('https://dig.chouti.com/') 9 driver.implicitly_wait(10) 10 time.sleep() 11 12 login_bin = driver.find_element_by_id('login_btn') 13 login_bin.click() 14 time.sleep(2) 15 16 phone = driver.find_element_by_class_name('login-phone') 17 phone.send_keys('17718268511') 18 19 pwd = driver.find_element_by_class_name('pwd-password-imput') 20 pwd.send_keys('tututu') 21 22 login_submit = driver.find_element_by_class_name('btn-large') 23 login_submit.click() 24 time

Python_day06

隐身守侯 提交于 2019-12-29 02:46:48
自动登录抽屉网 from selenium import webdriver import time driver = webdriver.Chrome() driver.maximize_window() try: driver.get('https://dig.chouti.com/') driver.implicitly_wait(10) time.sleep() login_bin = driver.find_element_by_id('login_btn') login_bin.click() time.sleep(2) phone = driver.find_element_by_class_name('login-phone') phone.send_keys('17718268511') pwd = driver.find_element_by_class_name('pwd-password-imput') pwd.send_keys('tututu') login_submit = driver.find_element_by_class_name('btn-large') login_submit.click() time.sleep(20) #捕获异常并打印 except Exception as e: print(e) finally: driver