- 浏览: 507024 次
- 性别:
- 来自: 广州
-
最新评论
文章列表
redis事务理解
1.redis是以单进程的形式运行的,命令是一个接着一个执行的.
2.其实redis本事是不会存在并发问题的,因为他是单进程的,再多的command都是one by one执行的。我们应用的时候,
可能会出现并发问题.(如读了再更改, ...
AngularJs框架下controller间的传值方法
第一种方式
angularJS中默认情况下,当前作用域中无法找到某个属性时,就会在父级作用域中进行查找,若找不到直至查找到$rootScope。
如果在$rootScope中也无法找到程序依旧运行,但视图不会更新。
//Javascript
app.controller('ParentController', function($scope) {
$scope.person = {greeted: false};
});
app.controller('ChildController', function($scope) ...
Angularjs run(AngularJS应用中第一个被执行的方法)
1.运行块
2.和配置块不同,运行块在注入器创建之后被执行,它是所有AngularJS应用中第一个被执行的方法。
3.运行块通常用来注册全局的事件监听器
假设我们需要在每次路由发生变化时,都执行一个函数来验证用户的权限,放置这个功能唯一合理的地方就是run方法
angular.module('myApp', ['ngRoute'])
.run(function($rootScope, AuthService) {
$rootScope.$on('$routeChangeStart', function(evt ...
JSONObject、JSONArray
1.从外到里看,例子中就是一个数组,数组里面是两个json格式的字符串。
2.工作中需要取出name4的值,你们会怎么取呢?。最初我都想过字符串截取,那时还不了解JSONArray,现在知道了,
取出来也就相当容易了。
取出name4值过程步骤:
1,将以上字符串转换为JSONArray对象;
2,取出对象的第一项,JSONObject对象;
3,取出name1的值JSONObject对象;
4,取出name2的值JSONObject对象;
5,取出name4的值value2。
示例中json数组格式的字符串可以通过方法直接转换为JSONArr ...
redis原生应用
一、普通同步方式
public void test1Normal() {
Jedis jedis = new Jedis("localhost"); //生成Jedis,连接到redis服务器
long start = System.currentTimeMillis();
for (int i = 0; i < 100000; i++) {
String result = jedis.set("n" ...
AngularJS Ajax($http)
1.$http服务只是简单的封装了浏览器原生的XMLHttpRequest对象。
2.$http服务是只能接受一个参数的函数,这个参数是一个对象,包含了用来生成HTTP请求的
配置内容。这个函数返回一个promise对象,具有success和error两个方法。
$http({
url:'data.json',
method:'GET'
}).success(function(data,header,config,status){
//响应成功
}).error(function(data,header,config,status) ...
AngularJs directive(指令)
返回的是一个对象,对象里面定义了一些属性,方法
var appModule = angular.module('app', []);
appModule.directive('hello', function() {
return {
restrict: 'E', //restrict:指令方式选择
template: '<div>Hi there</div ...
promise(很多少服务的then)
1、promise有三种状态, 等待(pending)、已完成(fulfilled)、已拒绝(rejected)
2、promise的状态只能从“等待”转到“完成”或者“拒绝”,不能逆向转换,同时“完成”和“拒绝”也不能相互转换
3、promise必须有一个then方法,而且要返回一个promise,供then的链式调用,也就是可thenable的
4、then接受俩个回调(成功与拒绝),在相应的状态转变时触发,回调可返回promise,等待此promise被resolved后,继续触发then链
实现原理:
then方法把要回调的函数放入到pro ...
Anguar 工作过程
Anguar的指令编译过程:
1.首先加载angularjs库,查找到ng-app指令,从而找到应用的边界,
2.根据ng-app划定的作用域来调用$compile服务进行编译,angularjs会遍历整个HTML文档,并根据js中指令的定义来处理在
页面上声明的各个指令按照指令的优先级(priority)排列
3.根据指令中的配置参数(template,place,transclude等)转换DOM然后就开始按顺序执行各指令的compile函数(如果指令
上有定义compile函数)对模板自身进行转换
4.注意:此处的compile函数是我们指令中配置的,跟上面说 ...
Map遍历(效率比较高的方法)
keySet遍历key+value
for (String key : map.keySet()) {
value = map.get(key);
}
遍历key
for (String key : map.keySet()) {
}
遍历value
for (String value : map.values()) {
}
$on、$emit和$broadcast的使用
如何在作用域之间通信
1.其中一个选择就是在应用程序作用域之中创建一个单例服务,然后通过这个服务处理所有子作用域的通信(通过服务来进行数据的共享)
2.另外一个选择:通过作用域中的事件处理通信。(以下就是这种方式)
$on、$emit和$broadcast使得event、data在controller之间的传递变的简单
1.$emit只能向parent controller传递event与data
2.$broadcast只能向child controller传递event与data
3.$on用于接收event与data //
...
AngularJs API
以下列出了一些通用的 API 函数:
angular.lowercase() 转换字符串为小写
angular.uppercase() 转换字符串为大写
angular.isString() 判断给定的对象是否为字符串,如果是返回 true。
angular.isNumber() 判断给定的对象是否为数字,如果是返回 true。
angular.lowercase() 将字符串转换为小写
angular.uppercase() 将字符串转换为大写
angular.copy() 数组或对象深度拷贝
angular.forEach() 对象或数组 ...
AngularJS 路由
AngularJS 路由允许我们通过不同的 URL 访问内容的不同部分。如:
http://runoob.com/#/first
http://runoob.com/#/second
http://runoob.com/#/third
内容由3部分组成,每个URL对应其中的一部分,#号之后的内容在向服务端请求时会被浏览器忽略掉,AngularJS 路由就是通过这个来实现的
通过 AngularJS 可以实现多视图的单页Web应用(single page web application,SPA)。
AngularJS 路由 就通过"# + 标记"帮 ...
AngularJS $location
$location
path()
获取当前页面的路径,也可以设置一个新的路径,如:path("/")样就修改为“/”的路由了(即当地URL)
$location.path();//获取
$location.path("/");//设置
replace()
如果你希望跳转后用户不能点击 ...
AngularJS中service,factory,provider的区别
在一个分层良好的 Angular 应用中,Controller 这一层应该很薄。也就是说,应用里大部分的业务逻辑和持久化数据都应
该放在 Service 里。(就是为了Controller 这一层做得很薄)
Angular 提供了3种方 ...