通过插件规范程序员的开发过程(3)(Eclipse 代码助手新功能发布)
助手继续更新,增加对JSP和HTML的相关校验功能,该插件其他功能,请参见博客第一篇日志和第二篇日志
JSP页面无相关QuickFix功能,请参照提示进行修改。
目前很多浏览器已经升级到HTML5,程序员需要针对各种浏览器进行开发和测试,过程繁琐,增加对HTML5的提示,降低程序员的开发成本,进一步提高开发质量。
截止目前插件已经可以对Java,JSP和Ibatis的XML配置在代码编写时进行校验,进一步提高程序代码开发质量,减少初次出错概率。
以后还会结合实际工作经验对插件进行持续改进,降低程序员的开发难度,提高程序员的初次开发质量。
1:在页面直接使用JSP的EL表达式${},容易引起跨站脚本攻击,请使用jstl的<c:out进行替换
2:jstl的c:out标签,如果没有escapeXml或者escapeXml=false,容易引起跨站脚本攻击,请添加属性escapeXml=true
3:在HTML中如果有<!--这样的HTML注释,提示此段内包含HTML注释,请不要使用,请使用JSp注释,JSP注释样例<%-- 注释 --%>
4:脚本中出现document.getElementByName,提示以下内容 在Javascript中使用document.getElementByName,在HTML5下会因为语法严格,导致取值失败,请修改为使用document.getElementById进行取值
5:页面字符集统一为UTF-8,在jsp和html的meta中如果使用meta字符集非为UTF-8,提示页面字符集需要为UTF-8,请修改为UTF-8
6:在页面中除了button,checkbox,radio外,如果<input>标签中无id属性,提示属性无ID,在html5中,会出现异常情况,请添加 Id属性
7:发现页面中有相同的ID,提示本页面id重复,请使用其他名字命名Id
8:form中如果无autocomplete=false属性,提示以下内容 :在IE10以上支持HTML5标准的浏览器中autocomplete需要设置为off,否则浏览器默认启用启用自动完成功能,提示用户输入已经输入过的内容,有可能泄露客户输入过的历史信息的相关信息
9:页面出现<a href=‘#’>,提示以下内容在Firefox下使用#会造成返回首页,交易无法继续,建议修改为javascript:void(0),已经在chrome,firefox,IE,opera下测试通过
10:checkbox如果添加ID属性提示以下内容checkbox不应该出现Id属性,请使用其他方法获得该值
11:radiobox如果添加ID属性提示以下内容raido不应该出现Id属性,,请使用其他方法获得该值
12:submit方法中,如果有onclick方法,提示:submit中不能使用onclick方法,请将type="submit"换成type="button"