- 博客(168)
- 问答 (1)
- 收藏
- 关注
原创 pycharm上写spark程序
百度的一堆结果全是下面这样: 感觉特别醉,这样不说from pyspark import SparkContext时,pycharm会提示红线,而且没有自动补全,根本就不实用。后来还是在Google上找到了个方法:将$SPARK_HOME/python/pyspark复制到pycharm所使用的python解释器默认会去寻找的模块目录下
2017-11-27 18:16:53
6230
转载 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.4.1
网上的MapReduce WordCount教程对于如何编译WordCount.java几乎是一笔带过… 而有写到的,大多又是 0.20 等旧版本版本的做法,即 javac -classpath /usr/local/Hadoop/hadoop-1.0.1/hadoop-core-1.0.1.jar WordCount.java,但较新的 2.X 版本中,已经没有 hadoop-core*.j
2017-11-21 18:02:27
957
原创 web token身份验证
一:为什么需要token身份验证:以前使用的身份验证包括:HTTP Basic AuthHTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来
2017-08-29 18:25:10
1332
原创 spring security 学习笔记
作用:spring security为企业级应用提供声明式安全访问和权限控制解决方案的框架。提供了一组可以在Spring应用上下文中配置的Bean,减少了为企业系统安全控制编写大量重复代码的工作。一。初级:简单的登陆验证,账号和密码直接配置在xml文件中在pom.xml中添加: org.springframework.security spring-se
2017-08-23 14:09:49
288
原创 hadoop 学习记录
1.本地MapReduce程序打包运行我们将 Hadoop 的 classhpath 信息添加到 CLASSPATH 变量中,在 ~/.bashrc 中增加如下几行:export HADOOP_HOME=/usr/local/hadoop #HADOOP_HOME已经定义则不需要写export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpa
2017-08-17 18:20:34
429
原创 mac 下,tmux进入后默认为zsh的方法
在 ~/.tmux.conf文件中加"set -g default-shell /bin/zsh" 和 "set -g default-command /bin/zsh",设置tmux的默认shell为zsh。
2017-08-09 14:59:56
5693
转载 spring 多线程
线程池:corePoolSize:核心池的大小,这个参数跟后面讲述的线程池的实现原理有非常大的关系。在创建了线程池后,默认情况下,线程池中并没有任何线程,而是等待有任务到来才创建线程去执行任务,除非调用了prestartAllCoreThreads()或者prestartCoreThread()方法,从这2个方法的名字就可以看出,是预创建线程的意思,即在没有任务到来之前就创建coreP
2017-08-02 17:05:01
431
转载 mysql 锁
MySQL的表锁有两种模式:表共享读锁(Table Read Lock)和表独占写锁(Table Write Lock)。锁模式的兼容如下表MySQL中的表锁兼容性当前锁模式/是否兼容/请求锁模式None读锁写锁读锁是是否写锁是否否
2017-08-01 10:45:14
223
转载 spring ContentNegotiationManagerFactoryBean 内容协商
一.什么是内容协商简单点说,就是同一资源,可以有多种表现形式,比如xml、json等,具体使用哪种表现形式,是可以协商的。这是RESTfull的一个重要特性,Spring Web MVC也支持这个功能。 1.Spring MVC REST是如何决定采用何种方式(视图)来展示内容呢?一:根据Http请求的header中的Accept属性的值来判读,
2017-07-31 14:25:55
11780
转载 spring ControllerAdvice
统一异常处理:本文介绍spring MVC的自定义异常处理,即在Controller中抛出自定义的异常时,客户端收到更友好的JSON格式的提示。而不是常见的报错页面。1. 使用@ControllerAdvice注解@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。使用扫描时也能扫描到。@ControllerAdvice注解内
2017-07-28 16:00:36
545
原创 pycharm
Pycharm下无法导入安装好的第三方模块requests?在cmd下使用pip安装好requests模块后,可以使用import requests,但在Pycharm IDE下无法导入,出现如下错误: 原因:电脑里同时装了Python2.7 和 Python3.5 ,只在Python3.5下安装了requests模块,并没有在Python2.7 下安装。解决:
2017-07-22 14:39:14
371
转载 spring bean的装配
spring框架的一个核心就是DI,IOC容器管理1. 在xml配置了这个标签后,spring可以自动去扫描base-pack下面或者子包下面的Java文件,如果扫描到有@Component @Controller@Service等这些注解的类,则把这些类注册为bean。 ,另一个标签根本可以移除掉,因为已经被包含进去了 http://blog.csd
2017-07-20 17:27:13
205
原创 mybatis 学习笔记
一。实体属性名与表字段名不匹配问题http://blog.youkuaiyun.com/u010837612/article/details/45670801,从中也可以知道mybatis的属性映射xml文件里resultMap 元素的作用,它是 MyBatis 中最重要最强大的元素。二。SpringMVC获取页面参数的三种方法三。在dao包下创建一个UserM
2017-07-16 17:21:22
271
转载 spring 学习笔记
一. AOP OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。对于其他类型的代码,如安全性、异常处理和透明的持续性也是
2017-07-13 20:43:03
390
原创 maven 学习笔记
一。作用maven 的作用包括项目构建、项目依赖管理、版本管理、项目的站点信息描述管理。 项目构建:1.maven有个archetype,能指定项目的生成模板。2.生命周期:maven对project的build有一个生命周期,这个生命周期分为三个阶段:clean,install,deploy。每个阶段内都包含多个小阶段。依赖管理:1. 需要使用的jar包可以在pom.
2017-07-13 10:00:12
265
原创 linux 笔记
一. boot 空间不足解决方法。1.打开终端敲入如下命令,查看系统现有内核:linux-image-4.8.0-46-generic install$ dpkg --get-selections |grep linux-image linux-image-4.8.0-46-generic installlinux-image-4.8.0-49-generic
2017-06-10 12:56:20
923
原创 mysql外键
建立外键:create table user_action( id int primary key auto_increment, user_id int, item_id int, rate int not null default 0, time varchar(20), foreign key(id) references user(id)
2017-04-16 21:42:14
240
原创 spark 学习记录
1. Intelli上Scala的Maven项目打包本地第三方jar包导航到 File-> Project Structure -> Modules -> Dependencies ,然后点击右边的“+”号,添加本地jar包即可。
2017-03-03 11:43:52
351
原创 Macx mysql5.7安装
1. 在官网下载.dmg包,按提示一步步安装。2.系统偏好设置的其他里,点击“mysql”的图标->点击Start MySQL Server按钮,启动mysql3. 设置环境变量export PATH=/usr/local/mysql/bin:$PATH4. 修改root密码1. 打开一个终端窗口2. 在系统偏好设置里先关闭Mysql服务3. 输入 sudo /
2017-02-09 16:34:27
233
原创 Mac下hadoop2.7 伪分布式安装
一。MAC OS下的JDK安装及其路径1、首先安装jdk,直接百度或者Google搜索就有MAC版本的jdk,本实验环境是jdk1.8.0_66.jdk,Hadoop的安装也必须在jdk 1.6版本以上。2、MAC中自带有安装的jdk,查看其默认路径如图:/Java>/System/Library/Frameworks/JavaVM.framework/Versions
2017-02-09 10:58:43
3144
1
原创 spark学习&错误记录
1.spark-submit 出现java.lang.NoSuchMethodError:检查spark版本支持的scala版本(用spark-shell查看)与编写工程所用的scala版本(查看build.sbt里的scalaVersion)是否兼容。
2017-01-09 17:47:35
319
转载 移动硬盘选购锦囊2.0版
之所以写下这么一篇文章,是由于本人折腾坏过不计数的移动存储设备,在存储设备方面的惨痛经验也可谓前所未有。正是因为此,本人决定写一篇较为全面的终极移动硬盘选购全攻略,让每个人都能挑到自己满意的移动硬盘。认识移动硬盘从移动硬盘发展史来说,我们会很奇怪的发现,最初是没有移动硬盘这个概念,也没有人去讲它的历史,它是从硬盘的发展衍生而来。把2.5寸硬盘加上一快指令电路板来
2016-12-28 10:49:43
2410
转载 再谈互斥锁与条件变量
pthread_cond_wait总和一个互斥锁结合使用。在调用pthread_cond_wait前要先获取锁。pthread_cond_wait函数执行时先自动释放指定的锁,然后等待条件变量的变化。在函数调用返回之前,自动将指定的互斥量重新锁住。int pthread_cond_signal(pthread_cond_t * cond);pthread_cond_signal通过
2016-10-15 17:31:16
264
原创 leetcode402
思路:对于一个数字,删除任何一位都会使其使其下降一个等级,那么应该删除哪一位呢?对1243而言,显然应该删掉‘4’;10200应该删掉'1', 1421应该删掉‘4’;1234应该删掉'4‘;综上,可以用一个栈维持一个递增序列,当压入栈的元素比栈顶元素小时,把栈顶元素弹出。代码:#include #include #include #include #include #inclu
2016-10-02 15:28:09
427
原创 桥接模式
定义:将抽象部分与实现部分分离,使它们都可以独立的变化。用处:桥接模式就将实现与抽象分离开来,使得RefinedAbstraction依赖于抽象的实现,这样实现了依赖倒转原则,而不管左边的抽象如何变化,只要实现方法不变,右边的具体实现就不需要修改,而右边的具体实现方法发生变化,只要接口不变,左边的抽象也不需要修改。适用场景:1.当一个对象有多个变化因素的时候,考虑依赖于抽象的实现,而不
2016-09-03 16:28:12
268
原创 观察者模式
定义:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。当一个对象发生了变化,关注它的对象就会得到通知;这种交互也称为发布-订阅(publish-subscribe)。主题是通知的发布者,它发出通知时并不需要知道谁是它的观察者,而观察者只需注册主题后,就可以获取通知,若不想继续观察主题,让主题在观察者列表中删掉对应观察者就好了。适用场景:1
2016-08-28 18:46:39
459
原创 vundle: vim插件管理安装之错误总结
我安装遇到的主要问题是不知道vundle有老版和新版之分,以致于rpt设置的新版,git clone 的却是老版,于是就遇到一些诡异的问题了,例如找不到:BuildInstall命令。。。vundle新版和旧版还是差的比较多的。旧版:vundle#rc()、Bundle;新版:vundle#begin()、Plugin.网上找到的大部分是老版本的安装方式,如下:一. Vundl
2016-08-23 22:57:54
23548
2
原创 策略模式
定义:将一系列相关算法封装成算法簇,使它们可以相互替换。使算法可以独立于使用者而变换。适用场景:当类的行为经常发生变化时,可将其行为提取出来,将不同的行为封装成一个算法簇,对使用者只提供一个抽象接口。这样也满足了OO三大原则:封装变化,针对接 口编程,多用组合少用继承组成:strategy: 定义所有支持的算法的公共接口concrete strategy: 实现了具体的算法行
2016-08-21 16:04:04
324
原创 代理模式
用处:为某个对象提供代理以控制对对象的访问。在某些情况下我们无法直接使用或访问对象,所以需要使用一层代理,通过代理访问对象。典型如网络中的代理服务器,网页加载时文字先加载,一些图片,视频后加载,在初期只提供这些这些资源开销大的对象的一个代理。 代理
2016-08-16 22:09:15
266
原创 适配器模式
作用:使原本因接口不兼容而不能一起工作的类能够协同工作。适用场景:当想复用某个类,而类的接口与环境不符,此时可以考虑使用适配器模式。用适配器封装被适配的对象,让接口由适配器提供,具体功能由被适配对象提供。关键代码:1.target:目标接口2.adptee:被适配对象3.adpter:适配器实现:有类适配器和对象适配器,如下图:图1:类模式适配器
2016-08-14 15:53:14
272
原创 抽象工厂模式
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LL long longusing nam
2016-08-14 15:00:26
200
原创 工厂模式
用处:隐藏了对象创建的细节,只需要知道对象的类型,就可以用对应的工厂子类创建产品。用户看到和使用的只是一个抽象产品,而无需关心到底返回了那个子类。关键代码:将产品的创建延迟(交给)到子类; 返回的是一个抽象产品优点:遵循了开闭原则缺点:每增加一个新的产品,就需要新增一个子类,产品多时,维护量大。代码:#include #include #include #include
2016-08-10 13:36:12
289
原创 装饰器模式
装饰器模式用来给一个对象动态的添加额外功能,是继承的一种替代模式。它比继承更为灵活,有时我们希望只给某个对象添加功能,而不是整个类添加功能。实现:将需要装饰的对象嵌入装饰器中,由装饰器添加额外的功能。代码:#include #include #include #include #include #include #include #include #incl
2016-08-07 20:45:49
317
4
原创 单例模式
实现代码:1.简单版本class singletion{private: singletion(int x=1):a(x) {} static singletion *p; int a;public: int get() {return a;} int set(int x) { a =x;}
2016-08-07 18:20:35
227
原创 oenstack nova 源码分析
1.创建虚拟机 def create(self, req, body): """Creates a new server for a given user.""" context = req.environ['nova.context'] server_dict = body['server'] password = self
2016-07-15 11:18:35
539
转载 openstack neutron(tap、qvb、qvo详解)
Linux Host 侧使用的网络元素简介Linux 主要使用以下三种设备模型:Bridge、TAP、VETH、VLAN。Bridge 设备是基于内核实现的二层数据交换设备,其作用类似于现实世界中的二级交换机。TAP 设备是一种工作在二层协议的点对点网络设备,每一个 TAP 设备都有一个对应的 Linux 字符设备,用户程序可以通过对字符设备的读写操作,完成与 Linux 内核网络协议栈的数据
2016-07-07 17:09:27
2723
转载 openstack neutron(tap、qvb、qvo详解)
Linux Host 侧使用的网络元素简介Linux 主要使用以下三种设备模型:Bridge、TAP、VETH、VLAN。Bridge 设备是基于内核实现的二层数据交换设备,其作用类似于现实世界中的二级交换机。TAP 设备是一种工作在二层协议的点对点网络设备,每一个 TAP 设备都有一个对应的 Linux 字符设备,用户程序可以通过对字符设备的读写操作,完成与 Linux 内核网络协议栈的数据
2016-07-07 17:09:03
725
转载 Linux 交换Caps Lock和左ctrl
ctrl应该是emacs快捷键中使用率最高的了吧,我习惯用左手小拇指按左边的ctrl,长期使用很不舒服,偶尔看到网上讲到可以将ctrl和caps lock键交换,实验了一下,花了几天改变按键习惯,现在确实比以前按得顺手多了。网上流传较广的文章有些小问题,我把自己的解决方法贴出来。linux下交换Caps Lock和右Ctrl:使用xmodmap吧,写一个配置文件.Xmodmap放在
2016-06-29 09:34:08
2874
转载 Hadoop简介(1):什么是Map/Reduce
本帖最后由 pig2 于 2014-2-28 20:41 编辑看这篇文章请出去跑两圈,然后泡一壶茶,边喝茶,边看,看完你就对hadoop整体有所了解了。Hadoop简介Hadoop就是一个实现了Google云计算系统的开源系统,包括并行计算模型Map/Reduce,分布式文件系统HDFS,以及分布式数据库Hbase,同时Hadoop的相关项目也很丰富,包括ZooKeeper
2016-06-13 15:43:55
539
原创 hdu 1542 矩形面积并
如图:用一个水平线从下往上进行扫描,遇到a线段(cover=1),将其插入线段树中,线段树中的每个节点都有个cover值,初始都为0,因此第一条线段插入时不会覆盖其它线段(显然的)。接着是b线段(cover=1)插入线段树,与a线段产生覆盖的区间是第一次计算的面积,覆盖的区间相当于矩形长,再利用线段树中存的矩形纵坐标,可得到矩形宽,然后就能算出面积。接着是c线段插入线段树(cover=-1),
2016-05-16 21:18:23
363
空空如也
pyinstaller 打包引入gensim模块的脚本出错
2018-02-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人