日常工作笔记(持续更新中。。)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32332777/article/details/80562843
  • 32.MySQL查询每天早上9点到昨天9点的数据
1.获取当天日期零点的字符串:SELECT DATE_FORMAT(NOW(),'%Y%m%d')
2.将字符串转换为日期格式:SELECT STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'),'%Y%m%d')
3.使用日期添加间隔DATE_ADD()函数,获取当天0点的第前15个小时:SELECT DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'),'%Y%m%d'),INTERVAL -15 HOUR);
4.获取当天0点的第后9个小时:SELECT DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'),'%Y%m%d'),INTERVAL 9 HOUR);
最终结果:SELECT * FROM t_xyx_order WHERE createtime >= (SELECT DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'),'%Y%m%d'),INTERVAL -15 HOUR)) AND createTime <= (SELECT DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'),'%Y%m%d'),INTERVAL 9 HOUR))
  • 31.action返回页面时的js、css样式失效问题(单独访问页面没有样式问题)
原因:action跳转后的url会根据命名空间,自动跳转到命名空间子目录,使得当前引用的css和js查找不到,从而失效
解决办法;先将struts2.xml命名空间改写为“/”,不再使用自定义的命名空间
然后在jsp页面获取根路径 basePath,
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
    //String ticket=request.getParameter("ticket");
    String channel = request.getParameter("channel");
    //String company = request.getParameter("company");
    //String center = request.getParameter("center");
    //String wgName = request.getParameter("wgName");
    //String pageName = request.getParameter("pageName");
    //basePath = "https://openapp.10010.com/bj/";
    //basePath = "https://ecstest0517.10010.com/bj/";
%>
<base href="<%=basePath%>">
<script type="text/javascript" src="<%=basePath%>guoman/res/jquery-1.7.2.js"></script>
  • 30.js:点击切换
$('#protocol_link').click(function(){
        window.open($("base").attr("href")+"single/web/protocol.jsp");
        $('#protocolCheck').removeAttr('disabled');
        var judge = $('#protocolCheck').val();
        $('#protocolCheck').click(function(event){
            if(judge){
                judge = 0;
                $('#protocolCheck').attr('checked','checked');
            }else{
                judge = 1;
                $('#protocolCheck').attr('checked',false);
            }
        });
    });
  • 29.Uncaught TypeError: $(…).live is not a function
on() 方法在被选元素及子元素上添加一个或多个事件处理程序。
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。
注意:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。
提示:如需移除事件处理程序,请使用 off() 方法。
提示:如需添加只运行一次的事件然后移除,请使用 on() 方法。
解决办法:在项目中所有使用jquery的live()方法都修改成on()方法,使用方法相同,只用修改方法名即可。
  • 28.jsp引入页面乱码,不修改子页面的编码格式的方法
strtus2,s:include 父页面与导入的子页面编码格式必须一致,而使用jsp动态引入,子父页面编码 pageEncoding="UTF-8" 不必一致:<jsp:include   page="head.jsp"/>
原理:jsp include指令告诉容器:先复制被包含文件汇总的所有内容,再把它粘贴到这个文件中。其中<jsp:include   page="head.jsp" flush="false"/> ,flush属性默认 flush="false" 不会清理缓存数据
  • 27.MySQL默认时间设置
MySQL为时间类型:timestamp 设置默认值为当前时间:CURRENT_TIMESTAMP
  • 26.java获取月末最后一天
    /**
    * 判断是否本月的最后一天
    *
    * @return
    */
    public static String isMonthLastDay() {
        Date a = new Date();
        Calendar b = Calendar.getInstance();
        b.setTime(a);
        int lastDay = b.getActualMaximum(Calendar.DAY_OF_MONTH);
        int now = b.get(Calendar.DAY_OF_MONTH);

        String str = lastDay == now ? "0" : "1";
        if(str.endsWith("0")){
            return  b.get(Calendar.HOUR_OF_DAY) >= 17 ? "0" : "1";
        }else{
            return "1";
        }
    }
  • 25.js获取月末最后一天的12点前
        //当前时间
        var newDate = new Date();
            var str =+ newDate.getFullYear() + "-";
             str += (newDate.getMonth()+1) + "-";
             str += newDate.getDate() +" ";
             str += newDate.getHours()+":";
             str += newDate.getMinutes()+":";
             str += newDate.getSeconds();
           //第二个月一号的时间
        var oldDate = new Date();     
            var stt =+ oldDate.getFullYear() + "-";
             stt += (oldDate.getMonth()+2) + "-";
             stt += '01' +" ";
             stt += '00'+":";
             stt += 0+":";
             stt += '00';
           //当前时间的毫秒数
        var newD = Date.parse(str);
        //下个月1号的毫秒数
        var oldD = Date.parse(stt);

        if(newD <oldD-43200000){//12个小时的毫秒数
            //alert1("当前时间在月末最后一天的19点前,可以正常办理");
        }else{
            alert1("亲,注意:每月最后一日中午12点后在本页面申请订购的用户,流量包将有可能于次次月才能生效,请酌情安排好申请订购的时间。");

        }
  • 24.提升css样式优先级,方法:添加 !important;
input {
    border: solid 1px #bbbbbb !important;
    background: white !important;
}
  • 23.从路径中获取文件名,再获取文件名的后八位
有后缀名:String str = path.substring(path.lastIndexOf("/") + 1, path.length());
没有后缀名:String name = str.substring(0, str.lastIndexOf("."));
获取名称中后八位作为日期:String dada=name.substring(name.length()-8);
  • 22.ajax请求post方法,本地项目没问题,服务器上报500错误
原因竟然是:方法中有一个controller调用另一个controller,一个service调用另一个controller造成,修改后成功
  • 21.java.lang.IllegalStateException: Annotation-specified bean name ‘xyxDao’ for bean class [com.surekam.xiaoyuanxing.dao.XyxDao] conflicts with existing, non-compatible bean definition of same name and class [com.surekam.xiaoyuanxing.dao.impl.XyxDaoImpl]
解决办法;注解名称相同,修改为不一样
  • 20.按行读后,将每行的字符串按照“|”分割,出现bug:打印出结果是按照每个字符分割
解决办法;加转义“\\|”
  • 19.页面报错net::ERR_ABORTED
原因:找不到引用的js
影响元素:js路径问题,js加载顺序问题,
解决办法:改路径,调试加载顺序,都不行的话,不要引用js文件,直接将js中的方法提取到页面上
  • 18.js获取td,span等的值
var tel = document.getElementById("con_tel").innerText;
  • 17.a标签样式修改为不可用
加入href =”javascript:return false;” 可以实现不可点击功能 
$('#chexiao_order').removeAttr('onclick');移除点击事件
加入style=”opacity: 0.2”可以实现变灰的效果
  • 16.修改数据库相应字段的属性,选择charset为utf-8,collation为utf8-unicode-ci
Caused by: java.sql.SQLException: Incorrect string value:
'\\xE5\\x91\\xA8\\xE6\\ --异常
  • 15.JS获取select下拉框选中的name1属性的值:
var cloud\_type = \$("\#speed").find("option:selected").attr("name1");
  • 14 上传图片时,手机端支持打开相册和拍照
可行方式:
&lt;input class="weui-uploader\_\_input" type="file" multiple
accept="image/\*" name="file13" id="file13"&gt;

不可行方式:
&lt;!-- &lt;input class="weui-uploader\_\_input" type="file"
capture="camera" accept="image/\*" name="file13" id="file13"&gt; --&gt;
  • 13.英文姓名不能为空且不能包含中文
if (ip\_name == "" || /.\*\[\\u4e00-\\u9fa5\]+.\*\$/.test(ip\_name)) {

alert1("英文姓名不能为空且不能包含中文");

return;

}
  • 12..js判断输入的只能是字母和数字
var reg = /\^\[0-9a-zA-Z\]+\$/

function jiaoyan(){

var str = \$.trim(\$("\#2\_idcard").val());

if(!reg.test(str)){

alert("您输入的统一社会信用代码不是数字或者字母")

return;

}

}
  • 11.将查询到的结果集集合都合并放到一个为逗号隔开的新字段
(SELECT GROUP\_CONCAT(StateTag) FROM t\_wst\_order\_status AS B WHERE
B.OrderId = '011WBSWEB20180403111205582') AS stateTag
  • 10.跳转相对路径
href="/bj/cloudspecialline/app/header.jsp"
  • 9.java.lang.NumberFormatException: For input string: “14757272012”
原因&解决办法:Integer在32位的编译环境下,存储长度为32位。即-2\^31\~2\^31-1;
即-2,147,483,648\~2,147,483,647,此时将Integer换成BigInteger类型,问题解决
  • 8.js中将字符串类型转换为数字类型进行计算
js中变量为弱类型,可以直接进行运算:cloud\_type = cloud\_type \* 1 +15;
  • 7.
(1)Unable to instantiate Action

(2)java.lang.ClassNotFoundException

(3)ResourceBundle \[i18n.SecurityMessage\] not found for MessageSource:

除了配置错误,还要检查往后台服务器上部署的时候class文件位置是否正确(\\web\\WEB-INF\\classes\\com\\surekam\\
  • 6.MYSQL中批量替换某个字段的部分数据
UPDATE t\_wt\_csl\_order SET ddgj\_trade\_id = REPLACE(ddgj\_trade\_id,
'AA', NULL) \#批量替换:将order表中的BB替换为null
  • 5.按照自定义的时间格式查询一段时间的下单数量,如:按照每天的小时
SELECT DATE_FORMAT(order_time,'%Y-%m-%d %H') days,COUNT(1) COUNT FROM t_wt_wbsp_main_sheet WHERE order_time >= '2018-04-01' AND order_time <= '2018-04-30' GROUP BY days ;
  • 4.
String dateStr=new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new
Date());
  • 3.ReadOnly和Disabled的作用是使用户不能够更改表单域中的内容.
但是二者还是有着一些区别的:

1、Readonly只针对input(text/password)textarea有效,而disabled对于所有的表单元素有效,包括select,radio,checkbox,button等。

2、在表单元素使用了disabled后,我们将表单以POST或者GET的方式提交的话,这个元素的值不会被传递出去,而readonly会将该值传递出去

常用情况:

1、在某个表单中为用户预填了某个唯一识别代码,不允许用户改动,但是在提交时需要传递该值,此时将属性设置为readonly

2、当用户正式提交了表单后需要等待管理员的信息验证,不允许用户再更改表单中的数据,而是只能够查看,由于disabled的作用元素范围大,所以此时应该使用disabled,但同时应该注意的是要将submit
buttondisabled掉,否则只要用户按了这个按钮,如果在数据库操作页面中没有做完整性检测的话,数据库中的值会被清除。

3、在用户按了提交按钮后,利用javascript将提交按钮disabled掉,可防止在网络条件比较差的环境下,用户反复点击提交按钮导致数据冗余地存入数据库
  • 2.mysql查询字段值为空的语法:
where 字段名 is null
  • 1.jquery定位到某一行:
$("input[name='Operator_card_num']")[0].focus();
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页