#import "RootViewController.h" #import <JavaScriptCore/JavaScriptCore.h> @interface RootViewController ()<UIWebViewDelegate> @end @implementation RootViewController - (void)viewDidLoad { [super viewDidLoad]; JSContext *context = [[JS…
利用ANTLR4实现一个简单的四则运算计算器 ANTLR4介绍 ANTLR能够自动地帮助你完成词法分析和语法分析的工作, 免去了手写去写词法分析器和语法分析器的麻烦 它是基于LL(k)的, 以递归下降的方式进行工作.ANTLR v4还支持多种目标语言.本文用java来写代码. 总结一下:ANTRL能自动完成语法分析和词法分析过程,并生产框架代码,让我们写相关过程的时候只需要往固定位置添加代码即可.大大简便了语法分析词法分析的过程. ANTLR4安装配置 因为用IDEA,所以直接介绍在IDEA中怎…
1.利用POI API实现简单的Excel表格导出 首先假设一个学生实体类: package com.sun.poi.domain; import java.io.Serializable; import java.util.Date; public class Student implements Serializable { private static final long serialVersionUID = 1L; //学生ID private int studentId; //学生姓…
html5利用websocket完成的推送功能(tomcat) 利用websocket和java完成的消息推送功能,服务器用的是tomcat7.0.42,一些东西是自己琢磨的,也不知道恰不恰当,不恰当处,还请各位见谅,并指出. 程序简单来说,就是客户A可以发送消息给客户B,但有很多可以扩展的地方, 比如 1.如果加入数据库后,A发消息时客户B未上线,服务端将会把消息存在数据库中,等客户B上线后,在将消息取出发送给客户B 2.服务端也可发送消息到任意客户端上. 程序的运行效果截图如下(在chrom…
前话 在许多类型游戏中我们经常会使用到背包,利用背包来设置相应角色属性,多了背包也会让游戏增色拓展不少. 那在Unity3D游戏开发中该如何编写背包系统呢?因为有高人开发了NGUI插件,因此我们进行简单编写代码设置即可实现一个简单的背包功能了. 准备工作 新建一个工程PackageDemo 导入NGUI包(最新版3.9.8版的正版89刀) 准备好图片素材,使用NGUI将其打包成图集 背包 背包格子 物品 简单背包功能实现 第一步,添加NGUI控件,使用素材 项目目录以及场景列表如下: 要注意的是…
在常见的APP中通常有着下拉页面从而达到刷新页面的功能,这种看似简单的功能有着花样繁多的实现方式.而利用Swiperefreshlayout实现下拉刷新功能则是其中比较简明扼要的一种. 一般来说,在竖直滑动时想要刷新页面可以用Swiperefreshlayout来实现.它通过监听界面的滑动来实现刷新.也可以通过一些方法来设置Swiperefreshlayout是否可以刷新.比如setrefreshing(true),就可以显示刷新动画:反之则取消. 在绘制该界面的layout的时候,需要在这个布…
编译版本:Delphi XE7 { Simple trimming functions } // 简单修饰功能 function DateOf(const AValue: TDateTime): TDateTime; inline; // 获取日期function TimeOf(const AValue: TDateTime): TDateTime; inline; // 获取时间 implementation function DateOf(const AValue: TDateTime):…
第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年份,请参考本章附录. 附录 历届世界杯冠军 届数 举办年份 举办地点 冠军 第一届 1930年 乌拉圭 乌拉圭 第二届 1934年 意大利 意大利 第三届 1938年 法国 意大利 第四届 1950年 巴西 乌拉圭 第五届 1954年 瑞士 西德 第六届 1958年 瑞典 巴西 第七届 1962年…
本文参考虫师python2实现简单爬虫功能,并增加自己的感悟. #coding=utf-8 import re import urllib.request def getHtml(url): page = urllib.request.urlopen(url) html = page.read() #print(type(html)) html = html.decode('UTF-8') #print(html) return html def getImg(html): reg = r'im…
简要教程 cropper是一款使用简单且功能强大的图片剪裁jQuery插件.该图片剪裁插件支持图片放大缩小,支持鼠标滚轮操作,支持图片旋转,支持触摸屏设备,支持canvas,并且支持跨浏览器使用. cropper提供了大量的参数.方法和事件供图片的剪裁操作. 安装 可以通过Bower或NPM来安装该插件. 1 2 bower install cropper npm install cropper                使用方法 使用该图片剪裁插件首先要引入必要的js和css文件. 1 2…
简单的功能 "通知我"内部列表或文档库中的主要项目.加入/删除/修改等操作,用户的E- mail通知设定功能:设置列表或文档库通知的能力,有可能设置通知为一个单一的项目.这是SharePoint一个Out Of Box的功能. 使用必须首先在管理中心设置传出邮件,然后确保用户的Email属性里有邮件地址.最后配置通知就可以.以下简介下通知服务的配置. 一.管理中心配置邮件服务 1.打开管理中心System Settings.找到配置传出邮件设置,例如以下图: 2.配置邮件server地…
源:Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件! 2014年02月06日发布控件的重要更新版本: Victor 串口控件 1.5.0.2 版本 (包含64位和32位VCL),适用于C++ Builder XE5 / XE4 / XE3. Victor 串口控件 1.5.0.2 版本 (32位VCL),适用于C++ Builder XE2 / XE / 2010 / 2009 / 2007. Victor 串口控件 1.3.3.6 版本 (32位…
echo -e:启用反斜线控制字符的转换        -E:关闭反斜线控制字符的转换(预设如此)        -n:取消行末之换行符号(与 -e 选项下的 \c 字符同意 -e参数下的控制参数 \a 发出警告声:   \b 删除前一个字符:            \c 最后不加上换行符号:            \f 换行但光标仍旧停留在原来的位置:            \n 换行且光标移至行首:            \r 光标移至行首,但不换行:            \t 插入tab…
先来几个原始数据的截图,如下所示: 示例图就举一个吧,因为这些数据量还挺大的,大概的总结了一下,这下列这几栏中不合规范的数据占比很大: (1)民族(经分析,在此表中所涉及到的民族分别为:汉族,满族,蒙古族,回族,土家族,侗族,瑶族,彝族,苗族,藏族,东乡族,壮族,傣族,仫佬族)原始数据中有写汉族,也有写汉的,其他民族的写法类似,为了将这些数据规范化,我们利用Excel中的批量替换功能,直接按快捷键Ctrl+f,如下:选中民族这一列,然后先进行查找,确认一下那些只写'汉'的这些数据行,然后再进行批…
基于django的自定义简单session功能 简单思路: 1.建立自定义session数据库 2.登入时将用户名和密码存入session库 3.将自定义的随机session_id写入cookie中 4.在中间件中,取出浏览器请求中cookie的session_id 5.使用session_id去数据库中比对用户名和密码,成功就访问,失败就重定向到登入页面 没有完善的地方:每次登入都会 生成一个随机字符串和value存入数据库 1.数据库 from django.db import models…
包含了大量的命名和目录服务,使用通用接口来访问不同种类的服务: 可以同时连接到多个命名或目录服务上: 建立起逻辑关联,允许把名称同Java对象或资源关联起来,而不必知道对象或资源的物理ID. JNDI程序包: javax.naming:命名操作: javax.naming.directory:目录操作: javax.naming.event:在命名目录服务器中请求事件通知: javax.naming.ldap:提供LDAP支持: javax.naming.spi:允许动态插入不同实现. 利用JN…
利用 Python 的字典实现 Switch 功能 Python是没有switch语句的,当遇到需要实现switch语句的功能时,一般可以用if/else进行代替,但是还有一种更加简洁的实现方法,利用字典进行实现,将需要选择的条件设为字典的键,选择的结果设为值,通过字典键索取值的方式实现switch的功能. def hello(): print('Hello!') def world(): print('World!') d = {'Hello': hello, 'World': world}…
利用 sqlalchemy 实现关系表查询功能 下面的例子将完成一个通过关系表进行查询的功能,示例中的数据表均在MySQL中建立,建立过程可以使用 SQL 命令或编写 Python 适配器完成. 示例中用到的表主要有3张,一张personInfo个人信息表,一张account_store账号信息表,以及一张person_account_rel的个人信息与账号关系表. 示例中将会通过已知的人物年龄和id通过个人信息表查出个人姓名(仅为参考示例,请忽略怪异的查找逻辑 :) ),随后根据关系表得到的人…
下面的代码演示如何利用 nodeJS 搭建一个简单的Web服务器: 1. 文件 WebServer.js: //------------------------------------------------ // 利用nodejs搭建一个简单的Web服务器 //------------------------------------------------ //启动计时器,记录启动服务所花费的时间 console.time('start WebServer need time'); //请求模…
2013.05.10  mytask 1.2 主程序休眠时间分成若干小的时间片断分段休眠,避免长时间的休眠不能及时响应系统信号. 2013.05.07 mytask 1.1 昨天发布了mytask1.0 版后(利用shell脚本实现计划任务功能),一直在想着如何解决那个最后的遗留问题"每个任务脚本中声明的函数名必须唯一不能重复,否则会导致任务函数覆盖.",无意间自问了一句为什么不能像crontab那样直接调用脚本和命令呢?这一问才让自己回忆起来,之所以用function封装任务是因为早…
接上一篇<DataGridView使用自定义控件实现简单分页功能>,本篇使用BindingNavigator来实现简单分页功能.其实也只是借用了一个BindingNavigator空壳, 实现原理和代码与上一篇几乎一样,实现方法如下: 1.新建一个WinForm程序,命名为BindingNavigatorMain,并拖入一个DataGridView控件及一个BindingNavigator控件.在BindingNavigator右下角弹窗中添加 一个Button(转到),BindingNavi…
最近有个功能, 要渲染从主相机视角看到的另一个相机的可视范围和不可见范围, 大概如下图 : 简单来说就是主相机视野和观察者相机视野重合的地方, 能标记出观察者相机的可见和不可见, 实现原理就跟 ShadowMap 一样, 就是有关深度图, 世界坐标转换之类的, 每次有此类的功能都会很悲催, 虽然它的逻辑很简单, 可是用Unity3D做起来很麻烦... 原理 : 在观察者相机中获取深度贴图, 储存在某张 RenderTexture 中,  然后在主相机中每个片元都获取对应的世界坐标位置, 将世界坐…
Python Django 实现简单注册功能 项目创建略,可参考前期文档介绍. 目录结构如下 编辑views.py from django.shortcuts import render # Create your views here. from django.http import HttpResponse from django.shortcuts import render from common.DBHandle import DataBaseHandle import time de…
Java 实现<编译原理>简单-语法分析功能-LL(1)文法 - 程序解析 编译原理学习,语法分析程序设计 (一)要求及功能 已知 LL(1) 文法为: G'[E]: E→TE' E'→+TE'|ε T→FT' T'→*FT'|ε F→(E)|i 为了方便处理,用:M 代替 E',N 代表 T':并展开相同同一非终结符的产生式:不影响含义,可自行再优化 即有: G[E]: E→TM M→+TM M→ε T→FN N→*FN N→ε F→(E) F→i 根据文法建立 LL(1) 分析表,并对输入…
Java 实现<编译原理>简单词法分析功能 - 程序解析 简易词法分析功能 要求及功能 (1)读取一个 txt 程序文件(最后的 # 作为结束标志,不可省去) { int a, b; a = 10; if(a>=1){ b = a + 20; } } # (2)词法识别分析表 单词类别 单词自身值 内部编码 关键字 int.for.while.do.return.break.continue 1 标识符 除关键字外的以字母开头,后跟字母.数字的字符序列 2 常数 无符号整型数 3 运算符…
using System.Drawing; using System.Windows.Forms; namespace ZhuoHuiSchoolroom.ZhuoHuiClass { /// <summary> /// 实现窗体内简单画笔功能 /// </summary> public class DrawClass { private Color __Color = new Color(); private Point __Start = new Point(); privat…
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet 的插件库,非常有用 内容概览 leaflet结合geoserver利用WFS服务实现图层删除源代码demo下载 效果图如下: 本篇主要是在上一篇leaflet结合geoserver利用WFS服务实现图层新增功能(附源码下载)基础上实现的,leaflet通过调用geoserver发布的地图服务WFS来…
内容概览 1.openlayers6结合geoserver利用WFS服务实现图层新增功能2.源代码demo下载 效果图如下: 本篇主要是openlayers6通过调用geoserver发布的地图服务WFS来达到图层新增记录的目的.与GeoServer的WFS进行基于Rest交互关键就在于请求参数,值得注意的是这些请求最好采用POST方法发送.查询可以采用json,但增加,删除,修改都只能采用XML形式Transaction geoserver默认WFS服务是没有编辑操作权限的,所以需要在geos…
利用Postman和Chrome的开发者功能探究项目 controller层研究 前两天忙着写开题报告,没有来得及做项目,今天继续研究一下这个项目. 上次研究到后端的DAO层,研究了一下后端和数据库交互的过程,service层封装了一些DAO层的函数,没有什么太多的东西,今天研究一下controller层和前端的代码. 首先,一个典型的controller层代码是这样的: package... import ... import org.springframework.beans.factory…
#import "RootViewController.h" #import <JavaScriptCore/JavaScriptCore.h> @interface RootViewController () @end @implementation RootViewController - (void)viewDidLoad { [super viewDidLoad]; JSContext *context = [[JSContext alloc] init]; con…