自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(142)
  • 资源 (2)
  • 收藏
  • 关注

原创 spring错误及解决方法总结

问题一 :spring项目中applicationContext.xml使用<aop:config>报错.错误如下:19-Jun-2019 14:32:32.273 严重 [RMI TCP Connection(3)-127.0.0.1] org.springframework.web.context.ContextLoader.initWebApplicationContext ...

2019-06-19 14:40:02 1189 1

原创 hibernate之session使用

session工具类——获取session:package com.imooc.ssh.Util;import org.hibernate.Session;import org.hibernate.SessionFactory;import javax.annotation.Resource;public class BaseSessionFactoryImpl { ...

2019-06-18 16:02:40 1716

原创 hibernate之Validator使用

Validator 作用:后台数据字段校验举例:entity.Controller层Util工具类:import javax.validation.ConstraintViolation;import javax.validation.Validation;import javax.validation.Validator;import javax.v...

2019-06-18 15:56:44 1327

原创 资料在线

1 spring5 中文文档: https://yuedu.baidu.com/ebook/7de16a43dcccda38376baf1ffc4ffe473368fdb4?pn=1&pa=12 史上最简单的 Spring MVC 教程 https://blog.csdn.net/qq_35246620/article/details/547289863 Myb...

2019-06-17 09:35:06 391

原创 IDEA创建springmvc项目的2种方式spring + maven

方式一:采用IDEA自带的Spring选项建立SpringMVC项目步骤:file->new->project->spring。如下图所示。生成结构:可知/web和/src 在同一层级上。自动配置了启动springMVC所需的配置文件 applicationContext和dispatcher-servlet.xml文件。缺点:jar包需要手动导入,相对于...

2019-06-14 14:19:52 330

原创 Scrapy学习第九课

python之Web应用框架Django学习第一课目标:搭建类似博客的简单页面实例:具体代码如下知识点:目标:搭建类似博客的简单页面实例:具体代码如下1、view.pyfrom django.shortcuts import renderfrom django.http import HttpResponsefrom . import modelsdef home(reque...

2019-01-21 15:32:28 158

转载 Scrapy学习第八课

python爬虫框架scrapy学习第八课目标爬取文章,实现文本和图片数据存储文本数据以json文件存储文本数据存储在mongodb数据库中图片保存在本地爬虫实例目标爬取文章,实现文本和图片数据存储文本数据以json文件存储文本数据存储在mongodb数据库中图片保存在本地爬取地址:伯乐在线文章爬虫实例1.items.py# -*- coding: utf-8 -*-# Def...

2019-01-09 15:03:49 162

原创 python 爬虫学习第四课

python 爬虫学习之PyQuery库PyQuery练习一PyQuery练习二PyQuery练习一#===========Pyquery练习一===================html = '''&lt;div id="container"&gt; &lt;ul class="list"&gt; &lt;li class="item-0"&gt;first ..

2018-12-29 11:20:25 166

原创 python 爬虫学习第三课

python 爬虫学习之BeautifulSoup 模块 BeautifulSoup安装BeautifulSoup演练BeautifulSoup练习一BeautifulSoup练习二BeautifulSoup练习三BeautifulSoup练习四BeautifulSoup安装基于python 3.7.0 安装。pip install beautifulsoup4BeautifulSou...

2018-12-28 16:30:37 388

原创 python 爬虫学习第二课

python 爬虫学习之requests模块 request响应内容request post请求状态码文件上传获取cookie会话维持解析json添加header认证设置一认证设置二异常处理request响应内容#request响应内容import requestsresponse = requests.get('http://www.baidu.com')print(type(res...

2018-12-28 10:02:53 152

原创 python 爬虫学习第一课

python 爬虫学习之urllib模块 get方式请求post方式请求超时时间设置超时时间设置,对错误进行处理响应:响应类型、状态码、响应头设置request请求头,添加代理cookie, HTTPCookiProcessorcookie保存到文件,MozillaCookieJarcookie保存到文件, LWPCookieJar读取文件中的cookie异常处理urlparse url拆分url...

2018-12-27 15:28:33 279

原创 Scrapy学习第七课

python爬虫框架scrapy学习第七课目标:爬取网页图片并保存执行:爬取简书7日热门文章的图片图片管道ImagesPipeline图片存储图片管道关键函数get_media_requests和item_completed示例结果:图片保存结果展示目标:爬取网页图片并保存爬取网页中的图片,将图片下载到本地。执行:爬取简书7日热门文章的图片目标网页:简书7日热门文章图片图片管道Imag...

2018-12-25 16:38:35 299

原创 Scrapy学习第六课

python爬虫框架scrapy学习第六课知识点:start_requests()知识点:start_requests()函数解释:该方法必须返回一个可迭代对象(iterable)。该对象包含了spider用于爬取的第一个Request。当spider启动爬取并且未制定URL时,该方法被调用。 当指定了URL时,make_requests_from_url() 将被调用来创建Request...

2018-12-25 10:29:08 431

原创 Scrapy学习第五课

python爬虫框架scrapy学习第五课任务:爬取简书30日热门文章信息,数据存储在MongoDB库中执行:爬虫操作及数据存储安装mongdbpython 连接mongodb驱动PyMongo爬虫实例结果:爬取结果展示问题总结DEBUG: Crawled (403) XXX任务:爬取简书30日热门文章信息,数据存储在MongoDB库中简书热门30日执行:爬虫操作及数据存储安装mongd...

2018-12-24 16:03:14 143

原创 Scrapy学习第四课

python爬虫框架scrapy学习第四课任务:爬取凤凰网导航下所有一级、二级和具体新闻数据执行:爬虫实例结果:爬取结果展示任务:爬取凤凰网导航下所有一级、二级和具体新闻数据凤凰网导航一级标题:二级标题:新闻链接:具体新闻标题:执行:爬虫实例1、items.py文件:明确要爬取的数据字段# -*- coding: utf-8 -*-# Define here the ...

2018-12-21 16:08:33 243

原创 Scrapy学习第三课

python爬虫框架scrapy学习第三课利用CrawlSpider类改写成套招标数据爬取利用CrawlSpider类改写成套招标数据爬取创建一个新的项目scrapy startproject BidsSpider新建一个利用crawlSpider的爬虫基类scrapy genspider -t crawl publicBids hubeibidding.com重点:s...

2018-12-19 12:03:54 156

原创 scrapy学习第二课

python爬虫框架scrapy学习第二课练习任务:爬取湖北成套招标公司的招标信息练习任务:爬取湖北成套招标公司的招标信息第一步:新建一个爬虫项目scrapy startproject bids在bids路径下,创建一个基础爬虫类scrapy genspider publicBids “hubeibidding.com”确定要爬取的基础数据,编写item.py文件...

2018-12-17 17:44:15 196

原创 scrapy学习第一课

python爬虫框架scrapy学习第一课windows10 scrapy的安装第一个scrapy爬虫应用创建项目取数据定义item数据保存为json文件数据保存为csv文件windows10 scrapy的安装1.先安装python。测试python是否安装成功或查询安装的版本,在命令行下输入: python --version2.最初采用网上介绍的一步到位安装方式,在命令行直接输入如下...

2018-12-14 16:30:38 506

原创 笔记十三:设计模式之简单工厂模式、工厂方法模式、抽象工厂模式

引言: 假设现在有一个超市(Market),超市销售饼干(Biscuit)、水果(Fruit)、饮料(Drink)三种食品。 按照常规,我们建立三个类:class Biscuit、class Fruit、class Drink。class Biscuit{public: Biscuit(){} ~Biscuit(){} void Show(){ cout << "H

2016-07-14 10:43:49 1006

原创 笔记十二:智能指针(二)

导语:在智能指针(一) 中讲解了智能指针的实现方式一,即雇佣一个使用计数类记录共享对象。现在讲解智能指针的另一种实现方式,句柄形式的智能指针。在介绍句柄形式的智能指针之前,先介绍代理类。代理类:1、现假设存在一个基类和它的派生类,设计如下:基类:class Animal{public: Animal () {cout << "Create Animal..."<<endl;} v

2016-07-06 17:46:03 1316

原创 笔记十一:智能指针(一)

前言:浅拷贝容易出现对同一内存空间进行2次撤销,造成程序崩溃。于是,我们可以利用指针智能来解决这一问题。本节主要介绍利用使用计数类构造智能指针类。使用计数: 智能指针将一个计数器与类指向的对象相关联。使用计数跟踪该类有多少个对象共享同一指针。使用计数为0时,删除对象。规则: 1、每次创建类的新对象时,初始化指针并将计数器置1 (计数器置1的原因是在执行析构函数时,计数器先减1,然后再判断是否为0

2016-06-22 09:54:54 457

原创 笔记十:复制构造函数、深拷贝、浅拷贝

复制构造函数 定义: 只有单个形参,而且该形参是对本类类型对象的引用(常用const修饰),这样的构造函数成为复制构造函数。复制构造函数可用于: 1、根据另一个同类型的对象显示或隐式初始化一个对象 2、复制一个对象,将它作为实参传递给一个函数 3、从函数返回时复制一个对象 4、初始化顺序容器中的元素 5、根据元素初始化列表初始化数组元素 ——以上定义来自《C+

2016-06-05 16:14:40 3364

原创 笔记九:二叉树的创建、递归与非递归版前序、中序、后序查找、树高和节点判断

代码:#include<iostream>#include<vector>#include<stack>using namespace std;template<typename T>struct binaryTreeNode{ T element; binaryTreeNode<T> *leftChild; //左子树 binaryTreeNode<T

2016-05-30 16:23:25 2861 2

转载 笔记八:静态变量、静态成员函数、函数指针、静态函数指针

静态变量http://www.cnblogs.com/dongzhiquan/archive/2009/07/21/1994792.html 一文对静态变量进行了充分的阐述,现整理部分重要内容如下,加深印象。1、静态变量的存储方式和生命周期:属于静态存储方式,其存储空间为内存中的静态数据区,该区域的数据在整个程序的运行期间不会释放,所以其生命周期为整个程序运行时间段。2、静态局部变量:定义在函数体内

2016-05-23 21:39:26 2597

原创 笔记七:基于数组的循环队列的实现

定义:队列也是一种线性表。其特点是队列的插入与删除在两端进行,是一个先进先出(FIFO)的线性表。插入元素的一端叫队尾,删除元素的一端叫队首。三种表现形式:1、 公式1: location(i)=i——队列第i个元素映射到数组中,即为下标为i的元素,i>=0。 2、 公式2:location(i)=location(队首元素)+i——队列第i个元素在数组中的位置只与队首元素有关,则删除

2016-05-07 21:40:24 1980

原创 笔记六:基于数组的栈的实现

栈定义:后进先出的数据结构实现一:基于数组表示的线性表的派生栈的实现。 原理:把线性表的插入和删除操作限制在同一端进行,即得到栈的表现形式。 操作:把数组线性表的右端定义为栈顶。 代码:template<typename T> class stack{public: virtual ~stack() {}; virtual bool empty() const = 0;

2016-05-06 21:50:15 699

原创 笔记五:线性表——单链表表示

线性链表注意: firstnode指的就是第一个节点,而不是一个指向第一个节点的指针。代码:#include<iostream>using namespace std;template<typename T>struct chainNode{ T element; chainNode* next; chainNode() {}; chainNode(const

2016-05-05 21:39:07 430

原创 笔记四:线性表——数组描述

线性表定义:有序表,元素按照一定顺序形成的有序集合。数组描述的线性表:1、代码:#pragma warning(disable:4996)#include<iostream>#include<iterator>#include<algorithm>using namespace std;typedef struct{ int a; int b;} Mytype;temp

2016-05-05 10:02:44 1056

原创 笔记三:const 在变量、函数、指针中的使用

const限定符在变量、函数、指针中的使用个人理解: 不管是在变量、函数、指针等中加入const限定符,一般都按照优先级高低+从右向左结合的方式去理解(ps:如理解有误,望指教~)case 1:const int butfsize = 512; 理解: a):没有优先级,则变量名bufsize首先与int结合,表明是一个int型变量; b):声明为int型的bufsize变量再与const

2016-04-28 20:25:36 520

原创 笔记二:计数排序、选择排序、冒泡排序、插入排序

计数排序1、 名次 :所谓名次,通俗理解即为该元素在序列中排行老几的意思。2.、如何求名次:依次对每一个元素进行比较,若排在自己(该元素)前面的元素比自己大,则前面的元素在排行计数上加1,反之则自己加1。3、利用附加数组的计数排序:根据自身名次重新整理一份排序序列存储在附加数组中,然后将附加数组值拷贝到原序列中。 1)代码:template<typename T> void SortClass

2016-04-26 15:04:44 1653

原创 笔记一:n个元素的所有排列递归算法

求n个元素的所有排列组合问题:给定n个元素,设序列为{a,b,c},求所有的排列组合。思路:每次递归,对组合的第一个元素排序。 代码:#include<iostream>#include<iterator>#include<algorithm>using namespace std;template<class T>void permutation(T list[], int k, int

2016-04-24 16:57:34 9374

原创 MFC只修改字体的大小,无需重新设置字体类型

mfc字体大小的修改以修改List 控件的字体大小从而改变表格行高为例: LOGFONT logfont;//最好弄成类成员,全局变量,静态成员 CFont *pfont1 = m_List.GetFont(); pfont1->GetLogFont( &logfont ); logfont.lfHeight =logfont

2016-02-25 16:41:48 2530

原创 PHP学习练手(十六)

Perl兼容的正则表达式一、函数: preg_match():指示模式是否与字符串匹配,一旦找到一个匹配返回1,否则返回0 preg_match_all():找到所有的匹配 preg_replace():实现查找和替换作用二、简单的模式: 1. 字面量:是一个值,其书写方式与所解释的完全一样。例如,模式a将匹配字母a,ab将匹配ab等。定界符:可以是除字母数字或反斜杠

2016-01-19 15:18:10 525

原创 PHP学习练手(十五)

阻止垃圾邮件一、垃圾邮件的预防技术使用正则表达式或过滤器扩展验证任何电子邮件地址在表单值中监视这些字符。如果值中包含该列表中的任何内容,就不要使用那个值。 2.1 代码: email2.php<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Contact Me</title></h

2016-01-18 20:37:21 976

原创 PHP学习练手(十四)

SESSION会话会话(session): 会话假定数据存储在服务器上,而不是浏览器中,会话标识符用于定位特定用户的记录(会话数据)。这个会话标识符通常通过cookie存储在用户的浏览器中,但是,敏感数据本身(如用户ID,姓名等)总是保留在服务器上。会话与cookie的优缺点: 会话优点: 1. 一般更安全(因为数据保存在服务器上) 2. 允许存储更多数据 3

2016-01-09 20:42:34 529

原创 PHP学习练手(十三)

COOKIE 特性: cookie将数据存储在用户的浏览器中。流程: 代码:1.login_page.inc.php<?php #Script 12.1 - login.inc.php $page_tile = 'Login'; include('../include/header.html'); if(isset($errors) && !empty($errors))

2016-01-09 16:17:41 964

原创 PHP学习练手(十二)

发送电子邮件 函数: 1、发送邮件函数: (subject中不能包含换行符;正文中每一行的长度都不能超过70,故用wordwrap函数进行隔断)mail(to, subject, body, [headers])2、字符串隔断函数wordwrap(string, len)代码: email.php:<!DOCTYPE html><html lang="en"><head> <me

2016-01-07 20:12:42 1749

原创 PHP学习练手(十一)

给脚本传值1、方法一:利用HTML的隐藏输入框类型<input type="hidden" name="do" value="this" />在提交form表单时,$_POST[‘do’]将具有this这个值(假定表单使用POST方式)2、把值追加到URL上www.example.com/page.php?do=this这种方式模仿了html表单的GET方法。3、view_user3.php——该脚

2015-12-31 21:10:21 643

原创 PHP学习练手(十)

模板header.html:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title><?php echo $page_title; ?></title> <link rel="stylesheet" href="../include/style.css" type="text/css" m

2015-12-30 20:22:18 3163

原创 PHP学习练手(九)

执行事务数据库事务: 是在单个会话期间运行的一系列查询。例如,你可能插入一条记录到一张表中,插入另一条记录到另一个表中,或许还会运行更新。如果不使用事务,每个独立的查询就会立即生效,并且不能撤销。使用事务,就可以设置起点和终点,然后根据需要运行或撤销所有的查询。优点:发生随机事件时(如服务器崩溃)它们会提供保护。事务要么执行,要么忽略所有更改。开始事务:START TRANSACTION执行

2015-12-27 21:48:26 511

Django学习博客示例代码

Django示例代码。针对初学者,可以了解Django的开发。

2019-01-21

服务器到客户端的单向通信

实现了客户端到服务器的单向通信,在vs2010下运行通过

2015-01-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除