* IE浏览器可以查找所有的js方法,以后如果在eclipse的项目中找到function来自哪里,可以在ie的console中查找。而且还有数据也可以在ie中找,比如一个图片路径。

 

* 根据id来控制前端模块

function test(slid){

    $("#"+slid).show();
}
 
 
* 跨js文件的时候,参数用?&之类的传,不太方便,但是可以跨js调用方法达到相同的目的。
 
 
* 数组获取数据的时候要特别小心不要忘记下标。
 
 
* 同事部署tomcat接口调用不到数据,花费大量时间。最主要的原因是没有找到日志文件在哪里,开始在调用方法前面写LoggHelper.LOG.Info(),在日志文件中找不到,以为是还没有执行导致这一步就报错了,然后一直调试调试,后来才发现真正的日子文件在文件夹内部,而且配置的日志的等级是error才能写进去的,白白浪费了大把的时间和精力。前面也想到会不会是日志根本没有写进去,但是没有深究,细节决定成败啊!以后要完全按照逻辑做事,不要盲目让情绪影响自己。所以隔一段时间的闭目养神非常重要,不要觉得领导看见会不高兴,同事看见会觉得精神不好,看轻自己,事实上,先不说别人会不会这么想,就算他们这么想了,那么又能怎么样呢?人们只会看结果,而不会在意你的过程,不要让情绪左右你的行为,要保持逻辑。
 
*  SELECT product_id FROM tab1 
    MINUS   //sql 差集
    SELECT product_id FROM tab2;

* select t.id,t.orckey from orc_info t group by t.id //不是GROUP BY表达式,这是因为GROUP BY是汇总分组的意思,要求select的字段都汇总到group by后的字段里去,而此处t.orckey没有汇总,不能保证orkey是单一的。

select t.id,t.orckey from orc_info t group by t.id,t.orckey//将t.orckey汇总分组

select t.id,max(t.orckey) from orc_info t group by t.id//使用max()函数保证orckey是唯一的。

 

*目前公司分页的方法是根据数据库sql语句查询出来多少条数据就显示多少TotalCount,一般情况下可以,但是一旦遇到left join且关联表有重复数据的就不行了,还好util里有方法,以后多熟悉公司的util呀。

 

* nmim(独立于smart-traffic)突然很多报错,开始以为是maven的jar包没有同步,删除jar.lastupdated文件,还是报错,后来发现众多报错信息中有一条是Multi-catch parameters are not allowed for source level below 1.7

eclipse的编译环境与项目的要求不对应造成的。

 

 

 

* 接下来每次学到新的东西都马上记录下来,不要觉得来不及,可以先大致记录一下,这样长远来说更有效率,每隔一段时间看一次,这样进步才快。

 

obj.pageSize = pageSize ? 10 : $('#wz').datagrid('getPager').data("pagination").options.pageSize;
obj.currentPage = pageNumber ? pageNumber : 1;

var num = $(".pagination-num").val();
doSearch(num);//增删改后页面留在当前页面

 

 

* 清理table中的数据  $("#wzTable .watch").children().text('')

 

 

* conflicts with existing, non-compatible bean definition of same name and cla   :》 启动项目突然报错,但是其他人与自己相同的代码却可以正常启动。看到日志信息是com.enjoyor.sof.spring.LogDaoImpl与com.enjoyor.sof.tms.LogDaoImpl冲突,这里就很明显地发现错误呀,下次不要靠感觉了,根据信息就可以判断啊,虽然自己的想法,要找到自己和他人有什么区别,到底是做了什么变化导致错误也没有错,但是当这种思想

不容易找到原因的时候也应该去尝试其他方法,那就是根据错误信息去判断。。  原来是徐总更新了frame-spring-mybatis,在里面加了日志相关接口,和我本地系统的类重名了,而其他人没有更新frame-spring-mybatis,这就是我与其他人的

差别所在。

 

 

*  将弹出框放在其他jsp页面里面,如果下拉框数据过多,会出现弹出框内没有数据的异常,可以重新写一个方法加载。 警用优化:

1、只在主页面定义弹出框

<div id="dlg" class="easyui-dialog" style="width: 553px; height: 420px;padding:10px 20px"
data-options="onBeforeOpen:function(){initDLLs();},modal:true" closed="true" buttons="#dlg-buttons">
</div>
<!-- ------------------------------------------------------------------ -->
<div id="dlgx" class="easyui-dialog" style="width:560px;height:250px;padding:10px 20px"
data-options="onBeforeOpen:function(){initDLLs();},modal:true" closed="true" buttons="#dlg-buttonsx">
</div>
<!-- ============================================================================ -->

2、将弹出框主体放到其他jsp上,比如PoliceDeviceInfoDlgX.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<form id="fmx" method="post">
<div class="m-form-row">
<div id="deviceCodeHead" class="m-form-cell">
<label style="width: 70px"><span style="color: #f00;">*</span>设备编码:</label>
<input class="easyui-textbox" type="text" id="ODeviceCode"
name="carCode" editable="false" />
</div>...........

</form>

3、连接弹出框jsp,加载下拉框,格式化datebox,渲染

function loadDialog()
{
$("#dlg").load(basePath + "Extra/PoliceDeviceInfoDlg.jsp",
function(responseText, textStatus, XMLHttpRequest) {
// 修改样式
InitDropDown("DEVICETYPE",$("#deviceType"),"DeviceDic",basePath);
tbxreset();
initPage();
});
}

~~~~~~~~~~~~~

//打开dialog前验证是否已初始化
var firstInitDlg = false;
function initDLLs() {
if (firstInitDlg)
return;
InitDdlDeptTree($("#localDepartment"),basePath,"暂无",false);//部门数据过多,放到此处加载。
InitDdlDeptTree($("#OLocalDepartment"),basePath,"暂无",false);
$.parser.parse($("#dlg"));
$.parser.parse($("#dlgx"));

$("#policeDate.easyui-datetimebox").each(function() {
$(this).datetimebox({
showSeconds : false
});
});

// 修改样式
tbxreset();
firstInitDlg = true;
}

 

 

* effective pom是可以看到项目所有的版本号,也就是说,我们需要什么包,还是需要自己添加进去,但是版本号不用写,如果写,要保持一致,不然会引用两个版本号不同的同类型jar包,导致冲突,所以有版本号的最好不要再写了。

 

spring容器加载顺序 :web.xml为入口,然后Listener的优先级最高,再是filter,最后是dispatcher。

 

* 后台返回String类型,特别是跨域处理后,需要var json = JSON.prase(jsonString);

 

* iReport做报表 java.lang.ClassNotFoundException: net.sf.jasperreports.compilers.GroovyEvaluator. 

jasperreports包冲突或者版本不对导致的,要和IReport的版本一致。

 

*   $ref: "$.list  后台王前端传数据时出现无法读取,原因是多层封装,比如将pojo1.setPojo(list<pojo2>),然后将Resulthelper.getResult(pojo1)以String类型传到前端就会报错。

解决方法是禁止循环引用检测ResultHelper.getResult(JSON.toJSONString(returnMap,SerializerFeature.DisableCircularReferenceDetect));