JavaWeb开发笔记(2016年)

原创 2016年08月29日 17:16:31

JavaWeb开发笔记(2016年)

@copyright  版权声明:本文为原创文章,未经允许不得转载。

一.2016/02/26

1.html页面让输入框只能输入数字和小数点

a 限制文本框只能输入正数,负数,小数 onkeyup="value=value.replace(/[^\-?\d.]/g,'')"

b 限制文本框只能输入正数,小数 onkeyup="value=value.replace(/[^\d.]/g,'')"

input标签为:<input maxlength="5" type="text" onkeyup="value=value.replace(/[^\-?\d.]/g,'')"  id="eg" name="eg" >,其实就是用正则表达式进行验证。

c    文本框只能输入数字代码(小数点也不能输入)   <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">

2.freemarker格式化

① 格式化日期

${updated?string("yyyy-MM-dd HH:mm:ss")}  

如果指定的变量不一定存在,可以这样:

${(dateMap.beginTime?string("yyyy.MM.dd"))!''}  

② 显示boolean值

<#assignfoo=true>  

${foo?string("yes", "no")}

</#assign> 

③ 截取字符串长度

<#if(userVO.cnname)?? && ((userVO.cnname)?length >10)>  

${userVO.cnname?substring(0,10)}  

<#else>  

${(userVO.cnname)!''}  

</#if>  

④ 数字格式

freemarker中预订义了三种数字格式:number,currency(货币)和percent(百分比)其中number为默认的数字格式转换

例如:

<#assigntempNum=20>  

${tempNum}      

${tempNum?string.number}或${tempNum?string("number")}  结果为20  

${tempNum?string.currency}或${tempNum?string("currency")}  结果为¥20.00  

${tempNum?string. percent}或${tempNum?string("percent")}  结果为2,000%

</#assign>

二.2016/03/04

1.mybatis中的#$的区别

1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。  

2. $将传入的数据直接显示生成在sql中。

3. #方式能够很大程度防止sql注入,$方式无法防止Sql注入。

5. $方式一般用于传入数据库对象,例如传入表名。

6. 一般能用#的就别用$。

三.2016/03/08

1.JQuery弹出层插件

1.jGrowl

jGrowl用于制作消息弹出框的jQuery插件。产生效果的类似于Mac OSX系统中Growl事件通知框架。

使用时需要导入两个包:

a. jquery.jgrowl.min.css

b. jquery.jgrowl.min.js 

2.layer

layer是一款近年来备受青睐的web弹层组件,她具备全方位的解决方案,致力于服务各水平段的开发人员,您的页面会轻松地拥有丰富友好的操作体验。

在与同类组件的比较中,layer总是能轻易获胜。她尽可能地在以更少的代码展现更强健的功能,且格外注重性能的提升、易用和实用性,正因如此,越来越多的开发者将媚眼投上了layer(已被2433089人次关注)。layer兼容了包括IE6在内的所有主流浏览器。 她数量可观的接口,使得您可以自定义太多您需要的风格,每一种弹层模式各具特色,广受欢迎。当然,这种“王婆卖瓜”的陈述听起来总是有点难受,因此你需要进一步了解她是否真的如你所愿。layer遵循LGPL协议,将永久性提供无偿服务。

四.2016/03/18

1.mysql 获取当前日期及格式化(DATE_FORMAT(date,format))

DATE_FORMAT(date,format)

根据format 字符串安排date 值的格式。

  以下说明符可用在 format 字符串中:

说明符

说明

%a

工作日的缩写名称  (Sun..Sat)

%b

月份的缩写名称  (Jan..Dec)

%c

月份,数字形式(0..12)

%D

带有英语后缀的该月日期  (0th, 1st, 2nd, 3rd, ...)

%d

该月日期, 数字形式 (00..31)

%e

该月日期, 数字形式(0..31)

%f

微秒 (000000..999999)

%H

小时(00..23)

%h

小时(01..12)

%I

小时 (01..12)

%i

分钟,数字形式 (00..59)

%j

一年中的天数 (001..366)

%k

小时 (0..23)

%l

小时 (1..12)

%M

月份名称 (January..December)

%m

月份, 数字形式 (00..12)

%p

上午(AM)或下午( PM)

%r

时间 , 12小时制 (小时hh:分钟mm:秒数ss 后加 AM或PM)

%S

秒 (00..59)

%s

秒 (00..59)

%T

时间 , 24小时制 (小时hh:分钟mm:秒数ss)

%U

周 (00..53), 其中周日为每周的第一天

%u

周 (00..53), 其中周一为每周的第一天

%V

周 (01..53), 其中周日为每周的第一天 ; 和 %X同时使用

%v

周 (01..53), 其中周一为每周的第一天 ; 和 %x同时使用

%W

工作日名称 (周日..周六)

%w

一周中的每日 (0=周日..6=周六)

%X

该周的年份,其中周日为每周的第一天, 数字形式,4位数;和%V同时使用

%x

该周的年份,其中周一为每周的第一天, 数字形式,4位数;和%v同时使用

%Y

年份, 数字形式,4位数

%y

年份, 数字形式 (2位数)

%%

‘%’文字字符

所有其它字符都被复制到结果中,无需作出解释。

注意,‘%’字符要求在格式指定符之前。

月份和日期说明符的范围从零开始,原因是 MySQL允许存储诸如 '2004-00-00'的不完全日期。

五.2016/03/22

1.freemarker截取指定长度字符串

 <#if item.content?length lt 20>

                      ${item.content}

<#else>

      ${item.content[0..19]}...

</#if>

判断item.content的长度是否小于20,如果长度小于20则全部显示,否则只显示前20个字符,后面的用...代替。

备注:大于 gt

小于 lt

大于等于 gte

小于等于 lte

六.2016/04/13

1.a标签href="#"这个在html中的作用

跳转到本页面顶部,一般建议写成javascript:void(0);要好一点,点了一点反应都没有,写#点了会跳一下的。

七.2016/08/29

1.inputvalue发生改变时触发事件

$(selector).bind("input change propertychange",function(event) {

if (event.type != "propertychange" || event.originalEvent.propertyName == "value") {

// 触发事件后要做的具体事情

}

});

这样做,input不用失去焦点才触发,只要value发生改变立刻触发事件。

八.2016/08/31

1.通过selecttext来选中对应的option

Html代码:

<label class="col-sm-1 control-label" for="idcard_type">证件类型</label>

<div class="col-sm-2 clp-left">

<select class="form-control input-sm" name="idcard_type" id="idcard_type">

<option value="1">身份证</option>

<option value="2">军官证</option>

</select>

</div>

Jquery代码

<script>

$(function() {

$("#idcard_type option").each(function() {

if ($(this).text() =="身份证") {

$(this).attr("selected",true);

}

});

});

</script>

九.2016/09/02

1.js 页面刷新location.reloadlocation.replace的区别

reload 方法,该方法强迫浏览器刷新当前页面。 
语法: location.reload([bForceGet]) 
参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新") 
replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。 
语法: location.replace(URL) 
在实际应用的时候,重新刷新页面的时候,我们通常使用: location.reload() 或者是 history.go(0) 来做。因为这种做法就像是客户端点F5刷新页面,所以页面的method="post"的时候,会出现“网页过期”的提示。那是因为Session的安全保护机制。可以想到: 当调用 location.reload() 方法的时候, aspx页面此时在服务端内存里已经存在, 因此必定是 IsPostback 的。如果有这种应用: 我们需要重新加载该页面,也就是说我们期望页面能够在服务端重新被创建, 我们期望是 Not IsPostback 的。这里,location.replace() 就可以完成此任务。被replace的页面每次都在服务端重新生成。你可以这么写: location.replace(location.href) 
replace函数在设置URL方面与location的href属性或assign函数完全一样,但是它会删除history对象的地址列表中的URL,从而使go或back等函数无法导航。 

十.2016/09/06

1.form表单标签被disabled后用$("#formId").serialize()值问题

如果form里的表单标签被disabled掉了$("#formId").serialize()不到值disabled状态下是不能传值的只能在取值的瞬间将他们disabled属性remove掉取完后再还原,这里列举两种方式

  • 第一种方式

//提交时将禁用的控件激活

$("#formId *:disabled").attr("disabled",false);

//提交将激活的控件激活禁用

$("#formId *:enabled").attr("disabled",true);

  • 第二种方式

//提交时将禁用的控件激活,用一个数组保存当前被enable的控件Id

var widgets=new Array();

$("#formId *:disabled").each(function(){

this.disabled=false;

widgets.push(this.id);

});

//在数组中取出Id,把被enable的控件disabled

for (x in widgets){

$("#"+widgets[x]).attr("disabled",true);

}

十一.2016/12/05

1.屏蔽页面鼠标右键、拖动效果、选中效果

oncontextmenu="window.event.returnValue=false;" 

ondragstart="window.event.returnValue=false;" 

onselectstart="event.returnValue=false;"

例如:<body id="content" ondragstart="window.event.returnValue=false;" oncontextmenu="window.event.returnValue=false;" onselectstart="event.returnValue=false;" ></body>

2.jQuery选择器中的通配符使用

$("input[id^='code']");//id属性以code开始的所有input标签

$("input[id$='code']");//id属性以code结束的所有input标签

$("input[id*='code']");//id属性包含code的所有input标签 

版权声明:本文为博主原创文章,未经博主允许不得转载。

JavaWeb零散笔记总结之-----.myeclipse遇到 source not found解决方案(2016年9月11日22:07:51)

这个系列的笔记都是本人在有道云笔记里记下来的。 参考 http://jingyan.baidu.com/article/9c69d48f48026813c9024e16.html ...

JavaWeb开发笔记

  • 2017年03月21日 14:12
  • 15.2MB
  • 下载

VisionMobile:2016年IoT大趋势(笔记)(一)开发者是新基线

VisionMobile在2015.12发表了报告IoT Megatarends 2016 (Six key trends in the IoT developer economy),下面是该报告的笔...

2016年javaWeb学习SSH注解整合例子demo

  • 2016年03月02日 14:14
  • 15.52MB
  • 下载

2016年付出与收获-javaweb

时间总是这样的无情,不会因为任何人的任何请求而停留。 在你打飞机的一分钟内,它消无声息的甩袖而去,留下一片湿润的废墟;在你敲了10行代码的一分钟里,它自若神闲的转身溜走,留下一个success的标记...

javaweb学习笔记:Servlet开发中需要注意的几个知识点

1、Servlet接口实现类       Servlet接口Sun公司定义了两个默认实现类,分别是:GenericServlet、HttpServlet。     HttpServlet指...

Javaweb开发学习笔记(一)

JavaWeb开发概述

JavaWeb开发笔记(2015年)

JavaWeb开发笔记(2015年)

从零开始写javaweb框架笔记7-动手开发web应用

开发阶段,我们先搭建框架,然后慢慢的细化,完善功能。 1  创建数据库 项目的数据库,我使用mysql,下载安装好mysql数据库,下载安装好mysql的数据库管理界面工具Navicat Premiu...

JavaWeb 学习笔记 spring+jdbc整合开发初步

JdbcTemplate类是Spring的核心类之一,可以在org.springframework.jdbc.core中找到它。JdbcTemplate类在内部已经处理数据库的建立和释放,可以避免一些...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaWeb开发笔记(2016年)
举报原因:
原因补充:

(最多只允许输入30个字)