- 浏览: 42292 次
- 性别:
- 来自: 北京
最新评论
文章列表
React 生命周期详解
- 博客分类:
- javascript
一、初始化可以使用的函数
1:getDefaultProps:只调用一次,实例之间共享引用
2:getInitialState:初始化每个实例特有的状态
3:compenentWillMount:render之前最后一次修改状态
4:render:只能访问this.props和this.state
5: compenentWillMount: 成功render并渲染真实DOM之后触发,可以修改DOM
React
- 博客分类:
- javascript
一、React 解决数据不断变化的大型应用
1:不需要手动的操作DOM对象,将状态和内容对应起来,状态改变内容是如何改变。
2:提高代码复用率:组件将数据和逻辑封装
3:React Native 编写移动端跨平台的应用
二、React组件生命周期:提供钩子函数
React组件包含state状态、prop属性
Prop 是父组件传递子组件的,state是组件内部,一个state对应一个render的结果
初始化阶段函数顺序
getDefaultProps:第一次调用时
getInitialState:
componentWillMount:组件在渲染到页面 ...
一 、通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作
一、包导入
除了模块名之外,导入也可以指定目录路径,Pythond代码的目录称为包,包导入是将目录变成另一个Python命名空间,而属性对应于目录中所包含的子目录和模块文件。
二、包和搜素路径设置
import语句中的目录路径只能是以点号间隔的变量,你不能在import语句中使用任何平台特定的路径,在模块搜素路径设置中,使用平台特定的语法,来定义容器的目录
如果使用包导入,必须多遵循一条约束:包导入语句的路径中的每个目录内都必须有_init_.py这个文件
例如:在一个a目录下的a.py文件想导入b目录下b.py文件,只需要在b目录下建一个_init_.py空文件,在a ...
MDX中的排序和分类
- 博客分类:
- 多维分析
一:常用的函数
Order():对元组集进行排序
Hierarchize():将元组集排列为层次结构的次序
TopCount():选择top N元组集
BottomCount():选择bottom N元组集
TopSum():选择求和后最大的元组集
BottomSum():选择求和后最小的元组集
TopPercent():选择在所有集中与top N%相应的元组集
BottomPercent():选择在所有集中与bottom N%相应的元组集
Rank();查找集中元组的次序位置
1、TopCount()函数:查三级品类缺货库存前5
SELECT NON EMPT ...
MDX命名集与使用集
- 博客分类:
- 多维分析
一、命名集 作用域和上下文
计算一个查询时 ,首先计算切片 ,然后才是计算命名集 ,这表明切片为计算命名集而使用的所有计算构成了上下文。
二、命名集的常规使用
命名集最常见的两种用途:提高查询的性能和整理复杂集的逻辑关系
例如:查询平板电视品类中11月的平均销量比10月高5%的城市
WITH member [Measures].[AVG sale] AS 'sum([Measures].[sales])/30'
Python模块代码编写基础
- 博客分类:
- Python
导入注意 :导入只发生一次
在默认的情况下,Python只对每个文件的每个进程做一次操作,之后的导入操作都只会取出已加载的模块对象。
模块文件中的顶层程序代码通过只执行一次,你可以凭借这种特性对变量进行初始化。
例如:定义一个simple.py文件
print('hello')
spam = 1
第一次导入 import simple,执行simple.spam 值为1,设置simple.spam =2
第二次导入 import simple ,simple.spam不会在初始化,simple.spam = 2
模块的命名空间
导入和作用域
如果 ...
MDX查询上下文与执行
- 博客分类:
- 多维分析
两个概念
1、每个查询和行为的各个部分在多维数据集中都有一个特定的上下文。只有显式部分与隐式部分结合起来,才能让MDX的功能更加强大。
2、处理无效数据、缺失数据和无效成员
一、查询中的单元上下文和解析次序
1:解析FROM子句
2:解析Where字句
3:在with字句中解析命名集
4:解析各个轴上的元组
5:计算从轴交集上取回的单元
二、
1、DefaultMember函数:典型的默认成员是维度的根成员
2、默认的上下文和切片
多维数据集中的每个单元都是由元组定义
3、单元求值:如果有任何单元执行计算,则这个计算与执行其他单元取值的计算在逻辑上是相 ...
一:Java虚拟机和Java内存区域概念
java虚拟机运行时数据区:
有一些区域时全局共享的,随着虚拟机启动而创建,随着虚拟机退出而销毁,一些区域时线程私有的,随着线程开始和结束而创建和销毁。
HotSpot 是主流虚拟机 ...
MDX中的通用计算和选择
- 博客分类:
- 多维分析
MDX中的通用计算和选择
一: mdx中的元数据引用函数
CurrentMember,Parent,Ancestor(),PrevMember,NextMember,Lag(),Lead(),PeriodsToDate(),ParallelPeriod(),
LastPeriods(),OpeningPeriod(),CloseingPeriod(),Iif()
二:同一层次结构中级别之间的简单比率
1、值 ...
一、nginx框架
1、nginx后台进程包含一个master进程和多个worker进程。nginx是以多进程的方式来工作的,同时nginx也是支持多线程的方式的,只是我们主流的方式还是多进程的方式。
2、nginx多进程模型:
nginx在启动后,会有一个master进程和多个worker进程。master进程主要用来管理worker进程,包含:接收来自外界的信号,向各worker进程发送信号,监控worker进程的运行状态,当worker进程退出后(异常情况下),会自动重新启动新的worker进程。而基本的网络事件,则是放在worker进程中来处理了。多个worker进程之间 ...
JAVA并发应用程序的构件(二)
- 博客分类:
- JAVA
三、锁存器(闭锁)
CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。
主要方法
public CountDownLatch(int count);
public void countDown();
public void await() throws InterruptedException
构造方法参数指定了计数的次数
countDown方法,当前线程调用此方法,则计数减一
awaint方法,调用此方法会一直阻塞当前线程,直到计时器的值为0
public class CountDownLa ...
JAVA并发应用程序的构件(一)
- 博客分类:
- JAVA
JAVA并发应用程序的构件
一、原子类:java.util.concurrent.atomtic中有几个名字以Atomic打头的类。它们的语义基本上和volatile一样。
可以避免在共享数据上出现竞争危害的办法
如:AtomicLong和AtomicInteger
二、线程锁:java.util.concurrent.locks
块结构同步方式的几个缺点
锁只有一种类型
对被锁住对象的所有同步操作都是一样的作用
在同步代码块或方法开始时取得线程锁
在同步代码块或方法结束时释放线程锁
线程或者得到锁,或者阻塞
如果我们要重构对线程锁的支持
1、添加不同类 ...
一、命名成员
1:计算成员(度量维度):不可以使度量维度的子成员
With Member [Measures].[Total] as [Measures].[缺货库存] + [Measures].[不动销库存]
SELECT {[Measures].[Total]} on columns,
non empty {[时间.年月日].[日].Members} on rows
FROM [Repertory_Examination]
2:计算成员(其他维度):使用时间维度
With Member [时间.年月日].[grow] as '[时间.年月日].[2015].[11]. ...
一:块结构并发
同步与锁
synchronized既可以用在代码上也可以用在方法上,它表明在执行整个代码块或方法之前线程必须取得合适的锁。对于方法,取得对象实例锁(静态方法是类锁),对于代码块,指明要取得那个对象的锁
熟悉同步的知识
1:只能锁定对象,不能锁定原始类型
2:被锁定的对象数组中的单个对象不会被锁定
3:同步方法可以视同为包含整个方法的同步(this){}代码块
4:静态同步方法会锁定它的Class对象,因为没有实例对象可以锁定
5:如果要锁定一个类对象,用显示锁定,还是用getClass()两个方式对子类的影响不同
6:内部类的同步是独立于外部类的
...