spring-boot-2.0.3之quartz集成,数据源问题,源码探究

  开心一刻      着火了,他报警说:119吗,我家发生火灾了。    119问:在哪里?    他说:在我家。    119问:具体点。    他说:在我家的厨房里。    119问:我说你现在的位置。    他说:我趴在桌子底下。    119:我们怎样才能到你家?    他说:你们不是有消防车吗?    119说:烧死你个傻B算了。  路漫漫其修远兮,吾将上下而求索!  github:https://github.com/youzhibing  码云(gitee):https://gitee.com/youzhibing  上篇博客中,讲到了springboot与quartz的集成,非常简单,pow.xml中引入spring-boot-starter-quartz依赖即可,工程中就可以通过@OverrideprivateSchedulerscheduler;  自动注入quartz调度器,然后我们就可以通过调度器对quartz组件:Trigger、JobDetail进行添加与删除等操作,实现对任务的调度。  结果也如我们预期一样,每隔10s我们的MyJob的executein...

以聚合数据免费接口为例,通过 Class 类继承方法,让小程序实现项目化接口调用

微信小程序数据来源,是通过接口实现的。但接口如何调,数据如何取?每个人都有不同的方法,下面以聚合数据免费接口为例。配置接口config.js聚合数据请求接口需要以key作为参数。constconfig={api_base_url:"http://apis.juhe.cn/goodbook",key:"93bdf89de207034fa6c7544f88b99c76"};export{config}封装wx.request方法ES6中有类方法可以直接使用,使用HTTP作为类名,新建request作为类的方法,在这个方法中调用wx.request。classHTTP{//requestrequest(params){letthat=this;if(!params.method){params.method='GET';}wx.request({url:config.api_base_url+params.url+"?key="+config.key,data:params.data,method:params.method,header:{'content-type':'applicati...

使用免费 mongodb数据库 + 免费node.js服务器搭建小程序接口

由于微信的小程序只支持不带端口的域名接口,不支持IP地址和接口,所以我们需要映射到80端口并绑定备案过的域名才能被微信小程序访问到。简单点就是接口需要https协议才行,找了许久的免费数据库与node.js的环境,都不尽人意,下面是整理的可以考虑的免费的产品:通过新浪云部署Node.js微信小程序商城(不用买域名、不用备案、不用配置https如果已经有备案的网站但是没有配置SSL时,可以考虑阿里云免费证书DVSSL,这个免费的证书隐藏的比较隐蔽:证书类型选择Symantec品牌注意,选择之后你并不会看到免费的证书!选择证书类型你还需要选择一下增强型OVSSL,这时免费型DVSSL选项才会出现。使用国外的,国外有三家非常不错的供应商MongoLab和RedisLabs和MongoDBAtlas,可以提供免费的mongodb数据库,可以考虑,需要翻墙免费的node.js服务器heroku,同样需要翻墙,注册需要使用gmail邮箱,偏慢但(推荐)国外的三家免费的mongodb数据库对比: MongoLab  提供500MB免费的云端存储,Mongo目前版本为3...

简单 PHP + MySQL 数据库动态网站制作 -- 摘抄

在这篇文章中,我尽量用最浅显易懂的语言来说明使用PHP,MySQL制作一个动态网站的基本技术。阅读本文需要简单的HTML基础知识和(任一编程语言的)编程基础知识(例如变量、值、循环、语句块的概念等)。概述PHP是一种解释性语言,可用于对网页进行预处理。PHP脚本在服务器端运行,其运行结果是一个可用来显示的网页。尽管可以完成许多类似工作,但是JavaScript和PHP的一大区别就是,JavaScript是在浏览器端运行的。事实上,浏览器会接收JavaScript代码并运行它,所以用户是可以查看JavaScript代码的。而PHP不会将原始代码交给浏览器,只会将其运行的结果交给浏览器,所以用PHP处理用户登陆、用户权限等问题是安全可靠的。PHP与HTML实际编写的时候,通常采用的方式是建立扩展名为 php 的文件(网页文件本质上是文本文件)。编写php代码和编写html代码并没有多少区别,而最方便的地方在于,在一个php文件中,两种代码是可以混编的。规则:php代码需要包含在 <?php...?> 标签中,就像这样:<?php//...

php 接口与前端数据交互实现

最近在做前后端数据交互的尝试,也跳了很多坑,使用的是php+bootstrap-table+js,把一些收获记录在这里,方便查询。这个小项目,仅有3个文件,分别为:crud.htmldata.phpcrud.sql数据交互实现1:查询mysql数据库建表php查询接口前端数据展现mysql数据库建表  数据库名称:crud  第一个表名:t_users  主键:user_id,自增长排列 php:<?php//测试php是否可以拿到数据库中的数据/*echo"44444";*///做个路由action为url中的参数$action=$_GET['action'];switch($action){case'init_data_list':init_data_list();break;case'add_row':add_row();break;case'del_row':del_row();break;case'edit_row':edit_row();break;}//查询方法functioninit_data_list(){//测试运行crud.html时是否可以获取到...

php get接口,并在浏览器中以json格式返回查找到的数据

php查询数据有6个步骤,分别为:连接数据库服务器,使用的命令为:mysql_connect("服务器名称","用户名","密码")选择数据库,使用的命令为:mysql_select_db("数据库的名称[可选的资源号,也就是第一步的变量名$conn]")执行sgl语句,使用的命令为:mysql_query(sql语句);获取执行结果,并把获取到的数据存放在一个数组中,使用的命令为:mysql_fetch_array(),会返回多行,因此要使用while循环关闭数据连接,使用的命令为:mysql_close(连接服务器的变量)将结果转换为JSON格式,并输出到客户端,使用的命令为:json_encode(第4步中定义的数组变量)代码分析:<?php//php接口的写法,php访问mysql数据库的基本步骤,获取用户//1连接数据库服务器:mysql_connect("服务器名称","用户名","密码");ordie("前面语句执行不成功后返回的信息".mysql_error());//.mysql_error()这个函数的意思是什么原因导致前面的sql语句执行失败$conn=my...

巧用weui.topTips验证数据

场景一、有一个输入金额的场景,这个金额需要验证,验证说明如下:不能为空格;不能为0;不能为汉字;不能为其它字符;不能大于200; 唯一可以的是,只有输入3~199之间的数字,下面的确定按钮才会显示,否则,隐藏这个按钮。HTML:<!--医生问诊金额--><divclass="weui-jiaj-panel"><divclass="weui-jiaj-money-boxdialogjs_show"><divclass="weui-jiaj-money-box-btn"></div><divclass="weui-jiaj-money-box-three"><divclass="weui-flex__item"><aid="showMoney"href="javascript:;"class="weui-btnweui-btn_miniweui-btn_default">其它</a></div></div></div></div&g...

巧用ajax请求服务器加载数据列表时提示loading

我们利用weui.js中的weui.loading为效果,ajax的beforeSend与complete方法,做一个加载数据时会有几秒的loading...要在页面需要加载的JS文件:<scriptsrc="../js/libs/weui.min.js"></script>可以去weui的文档中下载,这是它的demo:  https://weui.io/weui.js/这里主要讲jQueryajax的get,查询数据时,它的结构为:$.ajax({type:'get',url:url,data:data,dataType:'json',contentType:'apllication/json;charset=utf-8',//数据加载前调用的方法beforeSend()beforeSend:function(data){//这里判断,如果没有加载数据,会显示loadingif(data.readyState==0){weui.loading('loading');}},//数据加载成功调用的方法sucess()sucess:functio...

手机端页面下拉加载数据的笨办法--点击按钮添加数据

因为页面是根据数据库查出来的数据,有通过分页来显示数据,默认使用page:1,size:10 (1页显示10条数据)来显示,如果所有数据为99条,那么想通过点击10条数据后的一个“加载数据...”的按钮,每点击一次,增加一次page的值,同时再调用一次查询数据的方法,以此类推,显示所有数据。如果最后一页小于10条数据,则提示并隐藏该按钮。下面看方法:首先,给page给个变量,默认它为1,使用它作为查询方法的参数。这个点击事件要放在DOM加载完成之后执行:      //点击按钮分页加载varpagenum=1;$(function(){//首次查询getDoctorProblem();//点击分页加载$('#loadData').on('click',function(){pagenum=pagenum+1;console.log("按钮点击的次数:"+pagenum);            //再次查询getDoctorProblem(pagenum);})});把page的变量作为参数传给查询数据的方法,下面是我自己的数据://查询医生问题fun...

使用 antd Table组件, 异步获取数据

 使用React.js+Redux+antd制作CMS后台内容管理系统,分享一点点积累,欢迎讨论。在this.state中初始化数据:this.state={pageNum:1,/*翻页查询*/pageSize:10,/*分页查询*/activePage:1,/*默认显示一页*/selectedRowKeys:[],//这里配置默认勾选列loading:false,/*antd*/selectedRow:[]}在制作过程中,根据需要把antd的官方教程的分页查询方法,更改如下:/*翻页事件*/onShowSizeChange(current,pageSize){this.props.searchGroupManage({page:current,size:pageSize});}/*分页事件*/onChange(current){    this.props.searchGroupManage({page:currentsize:this.state.pageSize});}render()方法中,解析数据: //定义antdtable数据constdata=[];...

javascript 红宝书笔记之数据类型

 typeof 检测给定变量的数据类型,通过typeof来区分函数和其它对象 varmessage='somestring';console.log(typeof(message));  //"string" console.log(typeof(null)); //"Object"特殊的返回值,因为null被认为是一个空的对象引用。  注意:尚未声明过的变量,只能进行一项操作,就是使用typeof检测它的数据类型  Undefined  它只是一个值,值是undefined.        场景:使用var声明变量,但没有赋值(没有初始化)时,这个变量会返回undefined.       Undefined主要目的是用于比较,是为了正式区分空对象指针与未经过初始化的变量,我理解为,是为了区分变量的返回值是空...

将excel的.xlsx文件转成数据库文件.db的方法

1.下载好工具SQLiteExpertProfessional3,晚上有很多,自行百度。2.打开.xls文件,将文件另存为.csv文件。说明一下:可以将xls文件看作是数据库里的一个表。所以,表名和.xls文件名称一直,里面的字段,就是.xls文件中的字段。3.打开SQLiteExpertProfessional3,新建一个数据库,数据库名称,就起你想要的名称,后缀就加.db。  ...

android 数据存储之SharePreference 的几种方式

1.常见的getSharedPreferences(Stringfilename,mode) 指定sp文件的名称,生成的文件名为filename.xml2.getPreferences(mode)getPreferences只有一个参数,不能指定文件名,文件名固定为当前Activity的名字,不包含包名。3.PreferenceManager.getDefaultSharedPreferences(Context)该SharedPreferencesMODE默认为MODE_PRIVATE,而且生成文件名为<包名>_preferences.xml   ------------------三个modeMODE_PRIVATE私有的,不允许其他程序访问该xml文件。MODE_WORLD_READABLE其他程序可以读取MODE_WORLD_WRITABLE其他程序可以写 这里其他程序如何访问呢?有两种方式:第一种,在第二个程序中通过File:Filef=newFile("/data/data/包名/shared_prefs/xxx...

让人泪奔的方法:两个变量在不使用其他变量的情况下进行数据交换

这是个很经典很多时候都会用到的问题,但是容易被忘记。在这里做个笔记:inta=1;intb=2;inlinevoidSwap(int&a,int&b){   if(a!=b)   {       a=a^b;       b=a^b;     a=a^b;   }}^是异或XOR运算符;优化后:int&swap(int&a,int&b){    return(b^=a^=b^=a);}这样就实现了交换方法一voidswap(int*p,int*q){    *p=*p+*q;    *q=*p-*q;    *p=...
首页上一页...407408409410411...下一页尾页