前端MVC学习总结(三)——AngularJS服务、路由、内置API、jQueryLite

AngularJS功能最基本的组件之一是服务(Service)。服务为你的应用提供基于任务的功能。服务可以被视为重复使用的执行一个或多个相关任务的代码块。AngularJS服务是单例对象,这意味着只有一个实例被创建过,服务使用AngularJS的依赖注入机制来定义和注册。可以把服务注入模块、控制器和其它服务。常见的内置服务如下:$http发送http请求$resource创建一个可以RESTful服务器端数据源交互对象$window浏览器的window元素的jQuery包装$document浏览器的document元素的jQuery包装$rootScope根作用域的访问$rootElement根元素的访问$cacheFactory提供键/值对放置到对象缓存$interval提供对window.setInterval访问$timeout提供对window.setTimeout访问$cookies提供对浏览器的cookie的读写访问$animate提供动画钩子来同时链接到以CSS和JavaScript为基础的动画1.1.1、浏览器Window服务($window)引用浏览器的window对...

前端MVC学习总结(一)——MVC概要与angular概要、模板与数据绑定

框架是一个软件的半成品,在全局范围内给了大的约束。库是工具,在单点上给我们提供功能。框架是依赖库的。AngularJS是框架而jQuery则是库。在传统的非模块化JavaScript开发中有许多问题:命名冲突、文件依赖、跨环境共享模块、性能优化、职责单一、模块的版本管理、jQuery等前端库层出不穷,前端代码日益膨胀AMD规范及其代表:RequireJS异步模块定义(AsynchronousModuleDefinition),它是依赖前置(因为依赖必须一开始就写好)会先尽早地执行(依赖)模块,相当于所有的require都被提前了CMD规范及其代表:SeaJS(CommonModuleDefinition)模块定义规范一个模块就是一个文件;它推崇依赖就近想什么时候require就什么时候加载,实现了懒加载,延迟执行(aslazyaspossible)MVC的核心理念是:你应该把管理数据的代码(Model)、业务逻辑的代码(Controller)、以及向用户展示数据的代码(View)清晰的分离开模型:代表应用当前的状态视图:用于展示数据,用于接口控制器:用来管理模型和视图之间的关系&nbs...

前端MVC学习总结(二)——AngularJS验证、过滤器、指令

angularJS中提供了许多的验证指令,可以轻松的实现验证,只需要在表单元素上添加相应的ng属性,常见的如下所示:<inputType="text"ng-model=""[name=""][required=""][ng-required=""][ng-minlength=""][ng-maxlength=""][ng-pattern=""][ng-change=""][ng-trim=""]>表单与表单元素都需要通过name引用,请注意设置name的值。获得错误的详细参数可以在示例中看到。示例代码:<!DOCTYPEhtml><!--指定angular管理的范围--><htmlng-app="app01"><head><metacharset="UTF-8"><title>验证</title></head><body><!--指定控制器的作用范围--><formng-controller="Controller1"name="form1">...

LightOj_1265 Island of Survival

题目链接题意:  在孤岛生存,孤岛上有t头老虎,d头鹿,每天会出现随机出现两只生物(包括你自己),如果出现了一只老虎,那么你将被吃掉,如果两只老虎,则两只老虎会同归于尽,其他情况你都将生存下来。  当孤岛上没有老虎时,就视为你生存成功。  问你生存成功的最大概率。  思路:  仔细想一想,生存下来其实只和老虎有关,因为你遇上其他情况,你都会存活下来。  就相当于是一个0-1分布,要么活下来,要么被吃掉。  如果t只老虎是一个奇数,那么必然存活失败,因为老虎的消耗是成对的,你要存活下来最基本的条件就是所有的老虎都同归于尽了,或者没有老虎,否则你总会有一天遇见老虎。  如果t只老虎是一个偶数,那么不一定存活成功。  因为每天都会出现两只生物,那么我们计算t只老虎同归于尽的最大概率。  每天随机出现两只生物,所有的情况数:t*(t+1)(因为鹿与存活与否无关),两只老虎遇见的情况数:t*(t-1)  概率P=t*(t-1)/(t*(t+1))=(t-1)/(t+1) 代码:  1#include<cmath>2#include<cstdio>3#includ...

LightOj_1342 Aladdin and the Magical Sticks

题目链接题意:  地上有n种棍子,其中有两种类型,一种类型是可识别,一种类型是不可识别,每个棍子都有一个权值。  当你捡到可识别的,那么你以后就不会再捡这个棍子,如果是不可识别的,那么你有可能还会捡。  问将所有棍子收集完的权值的期望。 思路:  此题借鉴参考了此篇文章:AladdinandtheMagicalSticks  首先,这个题初看起来,和LightOj1027  ADangerousMaze有点像,只不过,这里是要将所有的门都走遍。  先引入一个经典的问题:             邮票收集问题(CouponCollectorProblem)WiKi资料             几何分布期望的证明过程  求解邮票收集问题时,由概率求期望时需要用到几何分布期望,因此这里给出了几何分布期望的证明过程。很简洁明了,还有大量例子结合理解。   通过上面的问题,我们可以假设,我们现在面对的是一个n面的骰子,骰子的每面都是随机出现的(相当于是不可识别的棍子),求问将所有面都被看完所期望的投掷次数(假设只看最上面那一面)  那么,问题的解就是:  ...

Hdu 1709 The Balance

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1709 题意:   给N个整数,每个数只能使用一次。将他们组合起来,最后看在1~sum(a[1]..a[N])这些数里有多少数是这N个数组合不出来的.   先输出这些数的个数,再将这些数输出来。如果个数是0,那么不需要输出数。    案例分析:   input:   3   1 24   output:   0   -->1(||4-1-2),2(||4-2),1+2(||4-1),4 ,1+4,2+4,1+2+4.思路分析:   可以将这N个数看成是N个物品。就将这个问题转化成了一个0-1背包问题,那么,所有的加法组合就可以求出来。那么减法呢?&nb...
代码星球 代码星球·2020-03-31

flask | SQLAchemy

meixie ...
代码星球 代码星球·2020-03-31

Flask学习之旅--数据库

  在Web开发中,数据库操作是很重要的一部分,因为网站的很多重要信息都保存在数据库之中。而Flask在默认情况下是没有数据库、表单验证等功能的,但是可以用Flask-extension为Web应用添加这些功能。   SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。由于Python对SQlite有内置的支持,因此在Flask应用程序中和SQLite进行交互是比较容易的。  首先需要创建一个SQLite数据库“user.db”,并在其中创建一张用户表。代码如下:1importsqlite3234conn=sqlite3.connect("user.db")5print("Connected!")67conn.execute("CREATETABLEUSER(usernameTEXT,passwordTEXT,EMAILTEXT)")8print("Tablecreatedsuccessfully!")9conn.close()  这里就不贴HTML代码了,就是一个注册页面,在注册的时候会将用户输入的用户名、密码和邮箱传到后台。在ap...

flask基础

  Flask是一个基于Python开发并且依赖jinja2模板和WerkzeugWSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。“微”(micro)并不表示你需要把整个Web应用塞进单个Python文件(虽然确实可以),也不意味着Flask在功能上有所欠缺。微框架中的“微”意味着Flask旨在保持核心简单而易于扩展。Flask不会替你做出太多决策——比如使用何种数据库。而那些Flask所选择的——比如使用何种模板引擎——则很容易替换。除此之外的一切都由可由你掌握。如此,Flask可以与您珠联璧合。默认情况下,Flask不包含数据库抽象层、表单验证,或是其它任何已有多种库可以...
代码星球 代码星球·2020-03-30

flask的插件

详情参考官方文档  安装:pip install flask-session  使用方法:先导入  fromflask_sessionimportSession  创建一个flask的app,app=Flask(__name__)       将app传入Session即可       Session(app)        或者先实例化一个session对象    sess=Session()         sess.init_app(app)  实例化时,将app对象,传入,并且覆盖了原本flask中的session_interface  然后在这个_get_interface中又做了分类。我们只...
代码星球 代码星球·2020-03-30

java报错:The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files

看包的路径是否对对:比如这样不对(...src/object/obietc)其它解决方法转载: https://www.cnblogs.com/yadongliang/p/5918228.html https://blog.csdn.net/airufengye/article/details/64129361...

Hive的Explain命令

Hive的Explain命令,用于显示SQL查询的执行计划。Hive查询被转化成序列阶段(这是一个有向无环图)。这些阶段可能是mapper/reducer阶段,或者是Metastore或文件系统的操作,如移动和重命名的阶段。例子 hive>explain[extended]--加上关键字extended,则显示抽象语法树>select*fromstudent>clusterbyage; 1.查询的抽象语法树(没用,可以忽略)2.执行计划计划的不同阶段之间的依赖关系(很重要)OKSTAGEDEPENDENCIES:Stage-1isarootstageStage-0isarootstage3.每个场景的描述STAGEPLANS:Stage:Stage-1MapReduceMapOperatorTree://发生在job的map处理阶段过程TableScan       //读取表的数据alias:student//表名为student,若select*fromempe;表有别名则显示别名eStatistics:Numrows:0Datasize:74...
代码星球 代码星球·2020-03-29

【FFmpeg】ffplay播放rtsp视频流花屏问题 (转)

问题描述:ffplay播放rtsp视频流时,播放过程中随机出现花屏现象。基本流程学习:阅读ffplay源码,熟悉其播放rtsp视频流的基本流程。在ffplay源码阅读和分析的基础上,画出了其播放rtsp的函数调用关系,如下图所示:avformat_open_input函数根据输入的文件名,与rtsp_read_packet关联。rtsp_read_packet完成每个rtp包的读取和解析,读取主要是利用rtp_read从缓冲区获取数据,解析主要是根据rtp协议,解析rtp包,得到h264码流数据,由rtp_parse_packet完成。av_read_frame读取一帧数据的avpacket包,主要是调用rtsp_read_packet读取h264码流数据包,然后由av_parser_parse2组成h264码流包,最终组成一帧数据的avpacket。错误测试:发布不同分辨率的rtsp视频流,测试错误产生的原因。利用VLC发布视频的rtsp服务,经测试,同一种视频封装格式,分辨率越小,花屏现象越少。分辨率越小,服务端发送给客户端的数据越小,其花屏现象越少,说明花屏现象与服务端发送的数据...

flask+阿里云短信服务实现注册发送手机验证码

效果图:  该效果主要讲解实现通过调用阿里云的SDK实现发送注册验证码短信(阿里云短信付费使用) 购买阿里云短信服务购买链接:https://www.aliyun.com/product/sms1、点击免费开通按钮 2、注册阿里云账号,有账号的可以直接登录(也可以使用支付宝登录),我这边直接登录了   3、设置短信签名和短信模板  登录成功以后会跳转到短信管理界面,点击界面的快速学习,点击马上添加签名,添加模板,添加签名和添加模板没什么好说的,按照阿里的规则去添加就好了,审核通过以后会显示审核通过。       4、充值。  点击右上角的充值按钮,充值对应的金额。本人很穷,只冲了5块钱。   5、下载SDK。  同样的python可以用pip安装。pipinstallaliyun-python-sdk-core  5、下载SDK激活demo。  阿里云激活SDK的demo链接:https://api...

flask实现验证码并验证

 效果图:点击图片、刷新页面、输入错误点击登录时都刷新验证码    实现步骤: 第一步:先定义获取验证码的接口verificationCode.py1#验证码2@api.route('/imgCode')3defimgCode():4returnimageCode().getImgCode()此处的@api是在app下注册的蓝图,专门用来做后台接口,所以注册了api蓝图   第二步:实现接口逻辑 1)首先实现验证码肯定要随机生成,所以我们需要用到random库,本次需要随机生成字母和数字,所以我们还需要用到string。string的ascii_letters是生成所有字母 digits是生成所有数字0-9。具体代码如下1defgeneText():2'''生成4位验证码'''3return''.join(random.sample(string.ascii_letters+string.digits,4))#ascii_letters是生成所有字母digits是生成所有数字0...
代码星球 代码星球·2020-03-29
首页上一页...407408409410411...下一页尾页