LayUI异步请求加载动画loading

点击功能按钮之后var loading = layer.load(0, {                    shade: false,                    time: 2*1000                });参数:  icon:0,1,2   loading风格    shade:false  是否有遮罩,true表示有遮罩    time : 2*1000  设定最长等待时间,设置时间之后,loading会在时间到之后自动关闭关闭"loading" (在ajax成功或失败回调中) :layer.close(loading);Ps:load默认不会自动关闭layer.load(); //默认采用第一种风格layer.closeAll(); //关闭所有弹出组件载入中动画可写在ajax发送前事件中,例如:$.ajax({    type: "POST",    async: false,    url: getUrl(queryUrl + "/submit"),    cache: true,    contentType: 'application/json',    dataType: "json",    data: JSON.stringify(data),    beforeSend:function(){        layer.load();    },    success: function (data) {        layer.closeAll();        },    error: function () {        layer.msg("fail...");    }});

js合并对象 相同/重复属性则覆盖

public extend(obj1: object, obj2: object) {    for (var obj in obj2) {        obj1[obj] = obj2[obj];    }    return obj1;}例如:for (var obj in detailAjax) {    console.log(detailInit[obj]+'===='+detailAjax[obj])    detailInit[obj] = detailAjax[obj];}其中detailInit为初始json对象,属性范围大于detailAjax。detailAjax为页面请求后的响应json对象,属性是detailInit子集。像这样浏览网页通过异步更新初始对象的某些信息就可以用上述代码即可。

Layui:设置select下拉框自动选中某项 使下拉框有记忆功能

var select = 'dd[lay-value=' + blog.UserId + ']';$('#advertisementUserId').siblings("div.layui-form-select").find('dl').find(select).click();另外记录上次选中,我选择用sessionStorage,demo<script>// 检测浏览器支持if (typeof(Storage) !== "undefined") {    // 存储    sessionStorage.setItem("lastname", "Smith");    // 检索    document.getElementById("result").innerHTML = sessionStorage.getItem("lastname");} else {    document.getElementById("result").innerHTML = "Sorry, your browser does not support Web Storage...";}</script>但是若value中含特殊字符等会导致查询报错,只需在lay-value=后加双引号即可var select = 'dd[lay-value="' + pointOption + '"]';

Java中用不建议用等于=号判断字符串相等

同事写的代码dealParam(queryCondition.get("creatDate"))!=""我用debug模式看左边运算结果是"",按理说这个条件判断应该为false,但结果却是true。但很迷的是,虽然条件成立,但条件内代码在本地环境下却没执行(jdk8),而在测试机器上却执行了。后用equals解决这个问题,至于问题原因可以一起探究下。该queryCondition为SpringMVC接收的Map<String,Object>数据,前端传了个&creatDate=的空参数,如果后台接收到是""的话那下列输出肯定为false场景还原:public static void main(String[] args) {    Map<Object, Object> queryCondition = new HashMap<>();    queryCondition.put("creatDate",new String());    System.out.println(dealParam(queryCondition.get("creatDate"))!="");}private static String dealParam(Object obj) {    String str = "";    if (obj == null) {        return str;    }    try {        str = obj.toString();    } catch (Exception e) {        e.printStackTrace();    }    return str;}但实际后台输出为true,如此反推,那creatDate对于前台传的空参,接收的并不是一个字符串了,而是一个对象,因此返回为true!

oracle数据库存在的隐式转换(varchar,date,number)

在使用MySQL的时候直接用时间字段例如time>'2018-08-08'可以用,前段时间在Oracle上也能这样用,但最近,发现Oracle上这样不能用了。于是百度搜集了一些资料,原来Oracle含隐式转换。我们会发现,在oracle中,有些数据的类型就算不一样也是可以比较,相加的。select '123'+123  from dual;==》246其实上面是存在隐式转换的,oracle自行处理了而且。oracle存在三大类型的转换:1,数字类型 2,字符类型 3,日期类型。但是他们并不是可以互相可以转换的。用函数转换的叫做显式转换,不用函数转换的叫做隐式转换。需要注意的是,在使用函数转换的时候,数据的格式要符合。不然会出问题。一,日期类型转换字符类型 (转换格式不区分大小写)。to_char(字段名,'yyyy-mm-dd ')                    --->  2016-12-05to_char(字段名,'yyyy-mm-dd hh24:mi:ss ')   --->  2016-12-05 12:20:30二,字符型转换成日期。to_date(字段名,'yyyy-mm-dd');to_date(字段名,'yyyy-mm-dd hh24:mi:ss ' );查询1980年12月17日入职的员工(方式一:日期隐示式转换)select * from emp where hiredate = '17-12月-80';使用to_char(日期,'格"常量"式')函数将日期转成字符串,显示如下格式:2015 年 04 月 25 日 星期六select to_char(sysdate,'yyyy" 年 "mm" 月 "dd" 日 "day') from dual;三,字符类型转换成数字类型。使用to_number('字符串')函数将字符串‘123’转成数字123select to_number('123') from dual;四,数字类型换成字符类型SELECT to_char(123) FROM dual;————————————————原文链接:https://blog.csdn.net/pojocheng/article/details/79627906

JPA执行本地SQL时ORA-00911: 无效字符 问题和解决

利用jpa执行本地SQL例如:String sql = "INSERT INTO AAA (id1,id2,id3,id4) VALUES ('1','2','3','4'); ";报错:SQL Error: 911, SQLState: 22019ORA-00911: 无效字符解决方法,去掉去掉sql末尾的;号即可

JQuery三种绑定事件方式

$(document).on("click", '.layui-input', function () {    $(".layui-input").val('');})$('.layui-input').bind('input click', function() {alert(12);});$('.layui-input').click(function () {    alert(123)});相关拓展:https://www.cnblogs.com/sqh17/p/7746418.html

将iPhone/iPad投屏到安卓 电视 电脑等设备上

    如何将iPhone/iPad投屏到安卓电视、安卓手机、Mac、Windows电脑等设备上?    下载ApowerMirror(傲软投屏)软件即可。前提需要不同设备在同一个WiFi下面,然后直接搜索投屏即可,软件帮助中有详细教程。    官网地址:https://www.apowersoft.cn/faq/use-apowermirror-android-app.html

SpringMVC使用@InitBinder初始化一些绑定规则

示例:/** * 方法绑定属性中不允许的参数 */private final static String[] DISALLOWED_PARAMS = new String[]{"idObject.primarykey"};@InitBinderpublic void initBinder(WebDataBinder binder) {    binder.setDisallowedFields(DISALLOWED_PARAMS);}    在添加和更新时,您应该禁止“id”字段。否则,恶意用户可能会篡改更新请求的“id”请求参数的值,从而将不同的记录更新为表单所示的记录(假设没有ACL或其他域级安全性)。 但是,如果您只是禁止“id”字段,控制器会将ID视为null,这在插入时有效,但在更新时无效(例如,它可能会尝试插入新记录而不是更新,具体取决于您的持久性机制'正在使用)。因此,您希望控制器记住请求之间的域对象的不可编辑值(不仅是ID,而是所有不允许的字段),以便它可以将所有正确的值发送到服务层或其他业务逻辑。这是使用类型级@SessionAttributes注释完成的。https://www.cnblogs.com/softidea/p/10078605.html

Manjaro 包无效或损坏(PGP签名)

sudo rm -r /etc/pacman.d/gnupgsudo pacman -Sy gnupg archlinux-keyring manjaro-keyringsudo pacman-key --initsudo pacman-key --populate archlinux manjaro sudo pacman-key --refresh-keys sudo pacman -Sc