- 博客(45)
- 收藏
- 关注
原创 Spring、SpringMVC常用注解
Spring 部分:1.声明bean的注解:@Component 组件,没有明确的角色@Service 在业务逻辑层使用(service层)@Repository 在数据访问层使用(dao层)@Controller 在展现层使用,控制器的声明(C)2.注入bean的注解:@Autowired:由Spring提供@Inject:由JSR-330提供@Resource:由JSR-250提供都可以注解在set方法和属性上,推荐注解在属性上(一目了然,少写代码)。3.Ja
2020-05-25 14:21:46
297
原创 Mybatis面试题
1.mybatis 中 #{}和 ${}的区别是什么? #{}是预编译处理,${}是字符串替换; Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值; Mybatis在处理${}时,就是把${}替换成变量的值; 使用#{}可以有效的防止SQL注入,提高系统安全性。 2.myba...
2020-05-05 16:54:57
325
原创 Java反射面试题——查缺补漏
目录57、什么是反射?58.什么是Java序列化?什么情况下需要序列化?59.动态代理是什么?有哪些应用?60.怎么实现动态代理?57、什么是反射?反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力.在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法。Java反射机制主要提供了以下功能:(...
2020-04-11 10:57:20
368
原创 Java多线程面试题——查缺补漏
35.并行与并发有什么区别?(1)并行是指两个或者多个事件在同一时刻发生;并发是指两个或者多个事件在同一时间间隔发生。(2)并行是在不同实体上的多个事件,并发是在同一实体上的多个事件。(3)在多台处理器上同时处理多个任务。在一台处理器上“同时”处理多个任务。所以:并发编程的目标是充分的利用处理器的每一个核,以达到最高的处理性能。36.进程与线程的区别?(1)进程...
2020-04-11 10:45:37
487
原创 Java容器面试题——查缺补漏
18.Java容器都有哪些?19.Collection 和 Collections 有什么区别?(1)java.util.Collection 是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java类库中有很多具体的实现。Collection接口的意义在于为各种具体的集合提供最大化的同一操作方式,其直接继承接口有...
2020-04-10 11:10:00
537
1
原创 Java基础面试题——查缺补漏
试题目录1.JDK和JRE有什么区别?2. == 和 equals 的区别是什么?3.两个对象的 hashCode() 相同,则 equals() 也一定为 true 吗?4.final 在Java中的作用是什么?5.Java 的 Math.round(-1.5) 等于多少?6.String属于基本的数据类型吗?7.Java中操作字符串的有哪一些?他们之间有什么区别...
2020-04-08 16:51:21
729
3
原创 解惑 python3 闭包、装饰器
一、闭包定义:内部函数包含对外部作用域而非全局作用域变量的引用,该内部函数称为闭包函数nonlocal关键字:如果想要在内函数中修改外函数的值,需要使用 nonlocal 关键字声明变量(见例子6)判断是否为闭包:print( 内层函数名.__closure__ ) 结果为cell说明为闭包,结果为None说明不是闭包注意:当程序执行遇到函数执行时,会在内存空间开辟局部命名空间,当...
2020-03-04 17:05:16
150
原创 解惑python3 可迭代对象(iterable)、迭代器(iteration)、生成器(generator)
一、可迭代二、迭代器三、生成器 generator在Python中,这种一边循环一边计算的机制,称为生成器:generator使用next()函数和send()函数恢复生成器(1)next()函数:next的作用是唤醒并继续执行(2)send()函数:send的作用是唤醒并继续执行,发送一个信息到生成器内部生成器类似于返回值为数组的一个函数,这个...
2020-03-02 17:18:16
1557
1
原创 解惑 python3 可变类型与不可变类型 , is 与 == 区别 , 变量赋值、深拷贝与浅拷贝
一、可变类型与不可变类型(1)可变类型(mutable):列表、字典、集合(2)不可变类型(unmutable):数字、字符串、元组注意:这里的可变不可变指的是内存中的那块内容(value)是否可以被改变。如果是不可变类型的话,在对对象本身操作的时候,必须在内存中新申请一块区域(因为老区域不可变)。如果是可变类型,在对对象操作的时候,不需要在其他地方申请内存,只需要在此对象后面连续申...
2020-03-01 10:17:54
1270
原创 面向对象 __slots__
使用__slots__可以限制实例的属性class Student(object): __slots__ = ('name', 'age') # 用tuple定义允许绑定的属性名称>>> s = Student() # 创建新的实例>>> s.name = 'Michael' # 绑定属性'name'>>> s.age...
2020-02-27 10:10:18
732
原创 高阶函数05——请用sorted()对上述列表分别按名字排序、再按成绩从高到低排序:
假设我们用一组tuple表示学生名字和成绩:L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]1. 请用sorted()对上述列表分别按名字排序:L = [('Bob',75), ('Admin', 92), ('Bart', 66), ('List', 88)]def by_name(t): retu...
2020-02-26 14:44:12
2128
原创 高阶函数04——回数是指从左向右读和从右向左读都是一样的数, 例如12321,909。请利用filter()筛选出回数
回数是指从左向右读和从右向左读都是一样的数,例如12321,909。请利用filter()筛选出回数#第一种def is_palindrome(n): nn = str(n) # 转成字符串 return nn == nn[::-1] #反转字符串并对比原字符串返回true/falseprint (list(filter(is_palindrome,range(100...
2020-02-26 14:19:58
454
原创 高阶函数03——利用map和reduce编写一个str2float函数, 把字符串'123.456'转换成浮点数123.456
利用map和reduce编写一个str2float函数,把字符串'123.456'转换成浮点数123.456:from functools import reducedef str2float(s): def fn(x, y): return x * 10 + y # 得到字符串中.的索引 123.456 n = s.index('.')...
2020-02-26 13:40:55
258
原创 高阶函数02——Python提供的sum()函数可以接受一个list并求和, 请编写一个prod()函数,可以接受一个list并利用reduce()求积:
Python提供的sum()函数可以接受一个list并求和,请编写一个prod()函数,可以接受一个list并利用reduce()求积:from functools import reduce#def prod(L):# def s(x,y):# return x * y# return reduce(s, L)def prod(L): ...
2020-02-26 13:39:23
528
原创 高阶函数01——利用map()函数,把用户输入的不规范的英文名字, 变为首字母大写,其他小写的规范名字。
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:[‘adam’, ‘LISA’, ‘barT’],输出:[‘Adam’, ‘Lisa’, ‘Bart’]def normalize(name): name = name[0].upper() + name[1:].lower() return nameL1 = ['adam...
2020-02-26 13:37:44
584
原创 函数 join() 的用法
函数: string.join()1.join()函数:作用:连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。语法:' sep ' . join( seq )参数说明:sep:分隔符,可以为空。seq:要连接的元素序列、字符串、元组、字典。上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串。返回值...
2020-02-23 16:12:24
4494
原创 针对 *args 、**kwargs 的理解
一、*args注意保存在*args的是一个元组的形式。二、**kwargs注意保存在**kwargs的是一个字典的形式
2020-02-22 21:13:04
361
原创 django on_delete = models.CASCADE 级联删除
在创建一对多的关系的,需要在ForeignKey的第二参数中加入on_delete=models.CASCADE 主外关系键中,级联删除,也就是当删除主表的数据的时候从表中的数据也随着一起删除。这是数据库外键定义的一个可选项,用来设置当主键表中的被参考列的数据发生变化时,外键表中响应字段的变换规则的。update 是主键表中被参考字段的值更新;delete是指在主键表中删除一条记录...
2020-02-21 14:17:31
11961
原创 django ORM 骚操作
exclude 不等于 __gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于注意是双下划线!!!
2020-02-20 16:16:55
515
原创 Django笔记 01 模型层----模型和字段
Django学习基于刘江Django2.0教程ORM(关系映射模型)系统:将一个Python的对象映射为数据库中的一张关系表。它将SQL装起来,程序员不再需要关心数据库的具体操作,只需要专注于自己本身代码和业务逻辑的实现。例如:整体的实现过程就是:Python代码,通过ORM转换成SQL语句,再通过pymysql(mysql)去实际操作数据库。Django的O...
2020-02-16 22:17:27
474
原创 Django之修改模型、后台管理、render函数
一、修改模型的步骤:1. 在models.py中修改2. 在settings的INSTALLED_APPS 顶部中添加app_name3. 运行 python manage.py makemigrations 为改动创建迁移记录4. 运行python manage.py migrate 将操作同步到数据库注意:如果变量名修改的话,必须重新执行3、4步骤...
2020-02-15 20:45:12
690
原创 python raise的用法
有关于python里raise显示引发异常的方法:当程序出错时,python会自动触发异常,也可以通过raise显示引发异常 一旦执行了raise语句,raise之后的语句不再执行 如果加入了try,except,那么except里的语句会被执行try: s = None if s is None: print(' s 为空') rais...
2020-02-14 13:41:23
739
原创 初识Django
点击跳转视频教学点击进入Django菜鸟教程技巧一 pycharm快速格式化代码快捷键:选中代码、ctrl+alt+i一、常用命令介绍1、Django基本命令startproject 创建一个Django项目 (例在cmd输入:django-admin startproject 项目名字) startapp 创建一个Django应用 check...
2020-02-09 14:04:38
593
原创 windows cmd命令行动切换目录
1.切换到C盘根目录打开终端cmd后,输入cd C:\ (一定要加上后面的反斜杠)2.切换到C盘子目录打开终端cmd后,输入cd C:\dirdir(切换到C盘下的目录dirdir)3.切换到其他盘根目录打开终端cmd后,输入D: (不需要加cd , 一定不要加反斜杠)4.切换到其他盘子目录打开终端cmd后,先切换到根目录,再使用cd命令切换到子目录...
2020-02-05 14:14:39
2389
原创 爬虫前端基础 html、css、javascript 学习
HTML定义了网页的内容 CSS描述了网页的布局 JavaScript网页的行为 一、HTML(1)结构<html></html>决定了该代码是html文件,即说明各类。 <head></head>头部。 <body></body>即主体部分。 <meta><...
2020-02-03 15:18:54
3483
原创 python 列表[ ]、元组( )、字典{ }、集合{ }学习基础
一、列表列表是python中最基本的数据结构,是最常用的python数据类型,列表的数据项不需要具有相同的类型 列表可以增、删 索引从0开始(1) 创建:list1 = ['I' , 'Love' , 'Python']list2 = [5 , 2 , 0](2) 获取列表元素个数sum = len(list1)(3) 访问列表中的值(1)索引从0开始 ...
2020-01-11 22:27:34
903
原创 处理反爬措施(随机请求头、ip代理、超时设置、延时设置)
一、随机User-Agent库:fake_useragent 库,伪装请求头from fake_useragent import UserAgentua = UserAgent()print(ua.ie) # ieprint(ua.opera) # operaprint(ua.chrome) # chromeprint(ua.firefox) # firefoxprint(u...
2019-09-20 13:58:56
1111
原创 代理IP中的 proxies 介绍及使用
proxiesproxies的格式是一个字典:{ ‘http’: ‘http://42.84.226.65:8888‘ }有 http 与 https 两种,在爬取不同网站时我们需要选用不同类型的网站时选用不同的 proxise,在不知道网站类型时可以将两种类型均放进去,requests 会自动选择合适的。proxies = { "http": "http://10.1...
2019-09-17 21:48:47
107323
3
原创 爬虫——代理IP的高匿、匿名、透明介绍
为了获取远程访问用户的IP地址, 我们一般会取请求头里的 REMOTE_ADDR 、HTTP_VIA 、 HTTP_X_FORWARDED_FOR 三个地址。 在用户没有使用代理的情况下, REMOTE_ADDR就是用户的真实地址, 而后两个值为空。但在使用了代理后,则根据这几个字段值的情况分几种:高匿代理这种是最理想的代...
2019-09-15 17:25:31
3770
原创 抓取b站视频信息存入excel表格 + 存进mysql (已修改)
一、项目简介1. 抓取搜索b站的视频,抓取标题、链接、播放量、弹幕数以及视频的上传时间,并把他们存放在excel中2.涉及的类库:time、requests、xlwt、re、lxml二、代码# python# -*- coding:utf-8 -*-# author:Only time:2019/9/11'''1.爬取b站 python3视频链接、播放...
2019-09-11 14:37:41
1993
原创 python3 os模块内的函数汇总
os 模块提供了非常丰富的方法用来处理文件和目录os.getcwd() # 获取当前工作的目录,即当前python脚本工作的目录路径os.chdir(path) # 改变当前脚本的工作目录;相当于shell下的cdos.curdir # 返回当前目录 ('.')os.pardir # 获取当前目录的父目录字符串名 ('..')os.ma...
2019-09-05 20:09:16
236
原创 python3破解ajax 实现抓取百度靓照并循环下载在本地(三)
一、项目简介1. 内容:键盘输入需要查找的图片的关键字及下载的页数,代码实现对图片的搜索以及对图片的下载。 这里以抓取鞠婧祎的图片为例子2. 百度图片官网3. 难点:百度搜图片发现网页不是静态网页,而是采取ajax渲染的动态网页,因而需要对ajax进行处理4. 软件:pycharm5. python36. 涉及的类库:requests...
2019-09-05 13:10:03
625
原创 我要更多好玩的表情包——python3实现简单循环抓取并下载图片(二)
一、项目简介1.内容:抓取 斗图啦 的表情包保存在本地2.解析:xpath3.涉及类库:lxml、requests二、代码# python# -*- coding:utf-8 -*-# author:Only time:2019/8/19import requestsfrom lxml import etreedef get_url(): url...
2019-08-20 00:09:59
384
原创 python3实现简单循环抓取并下载图片(一)
一、项目简介1.内容:抓取彼岸壁纸的人物壁纸,并保存在本地文件夹2.解析:xpath3.涉及的类库:requests、lxml二、代码# python# -*- coding:utf-8 -*-# author:Only time:2019/8/18import requestsfrom lxml import etreedef get_url():...
2019-08-18 22:27:59
1138
原创 python3抓取电影天堂存mysql出错如何解决? (已解决)
项目简介:抓取电影天堂的数据,xpath解析,存mysql问题描述:连续抓取并存储六页数据后,从第七页开始就不能存数据库了,直接回滚数 据库,至今仍未解决,请大佬会的麻烦解答一下 已解决# python# -*- coding:utf-8 -*-# author:Only time:2019/8/15# 爬取电影天堂 2019必看热片 名字、详情页 xpath...
2019-08-16 14:39:06
1813
13
原创 python3抓取豆瓣TOP250结果存mysql
一、项目简介1.内容:使用python抓取豆瓣TOP电影的名字、详情页链接存mysql,网页由xpath来解析2.豆瓣网:https://movie.douban.com/top2503.软件:pycharm、mysql4.python35.涉及类库:lxml、requests、pymysql二、思路1.安装导入类库import pymysqlimport...
2019-08-15 15:27:32
793
2
原创 MySQL基础笔记(一)
一、window服务1. 启动mysql net start mysql --需要管理员身份打开2. 关闭mysql net stop mysql 3. 连接服务器 mysql -h 地址 -p 端口 -u 用户名 -p 密码 -- 例:mysql -h localhost -u root -p4. 显示哪些线程正在运行 show processli...
2019-08-14 15:57:28
317
原创 爬虫结合tkinter图形界面库制作个性签名应用程序
一、项目简介1.内容:结合爬虫和tkinter图形开发界面开发个性签名应用程序,并利用pyinstaller打包工具将其打包为.exe可执行文件2.个性签名的网站: (抓取免费的个性签名) http://www.uustv.com/3.使用软件:pycharm4.python3.75.涉及的类库:PIL、requests、lxml、tkinter、pyinstaller6....
2019-08-08 23:19:08
648
原创 python3 抓取豆瓣《陈情令》评论 以词云展示
一、项目简介1.内容:循环抓取豆瓣影评中所有观众对《陈情令》的评论,存储在文本文档中,并运用可视化库--词云对其进行分析。2.目标网站:https://movie.douban.com/subject/27195020/comments?start=3.使用软件:pycharm4.使用 python3.7 版本5.涉及的python类库:r...
2019-08-03 15:04:44
2015
5
原创 pyinstaller 打包为.exe可执行文件介绍
一、pyinstaller相关参数-F,-onefile 打包一个单个文件,如果你的代码都写在一个.py文件的话,开以用这个,如果是多个.py文件就不能用 -D,-onedir 打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,我个人比较推荐这样,便于维护 -K,-tk 在部署时包含 TCL/TK -a,-ascii 不...
2019-08-02 10:45:39
647
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人