欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

记录自己开发中经常遇到的小问题以及解决。 博客分类: 一些良好习惯与养成 遇到问题经常 

程序员文章站 2024-03-24 18:15:34
...

1,经常遇到乱码问题,什么页面到后台呀。jquery校验中的,ajax提交的,windows跟linux中交互的。。

所有的转码:

 

        System.out.println("1:" + new String(str.getBytes("GBK"),"ISO8859_1")); 
        System.out.println("2:" +new String(str.getBytes("GBK"),"utf-8")); 
        System.out.println("3:" +new String(str.getBytes("GBK"),"GB2312")); 
        System.out.println("4:" +new String(str.getBytes("GBK"),"GBK")); 
        System.out.println("5:" +new String(str.getBytes("ISO8859_1"),"GBK")); 
        System.out.println("6:" +new String(str.getBytes("ISO8859_1"),"ISO8859_1")); 
        System.out.println("7:" +new String(str.getBytes("ISO8859_1"),"GB2312")); 
        System.out.println("8:" +new String(str.getBytes("ISO8859_1"),"utf-8")); 
        System.out.println("9:" +new String(str.getBytes("utf-8"),"GBK")); 
        System.out.println("10:" +new String(str.getBytes("utf-8"),"utf-8")); 
        System.out.println("11:" +new String(str.getBytes("utf-8"),"GB2312")); 
        System.out.println("12:" +new String(str.getBytes("utf-8"),"ISO8859_1")); 
        System.out.println("13:" +new String(str.getBytes("GB2312"),"GB2312")); 
        System.out.println("14:" +new String(str.getBytes("GB2312"),"ISO8859_1")); 
        System.out.println("15:" +new String(str.getBytes("GB2312"),"utf-8")); 
        System.out.println("16:" +new String(str.getBytes("GB2312"),"GBK")); 

 

 

 

 

2,关于文件大小,是否存在的几种方式:

 

.var  urlImages=window.location.protocol + "//" + window.location.host +  "<c:url value="/printTempImages/common/" />";

 

 //判断图片是否存在
 function checkimg(obj){
  //alert(obj);
  var s;
  var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
  xmlhttp.open("GET",obj,false);  
  xmlhttp.send();
  if(xmlhttp.readyState==4)
  { 
   if(xmlhttp.status==200) 
    s=true; //url存在 
   else if(xmlhttp.status==404) 
    s=false; //url不存在 
   else 
    s=false;//其他状态 
  }
   //alert(s); 
   return s;
 }

 

 

 

 

客户端文件校验大小:

 

 

<script type="text/javascript"> 
   
$(document).ready(function(){ 
$("#form0").submit(function() { 
        var filepath=$("input[name='myFile']").val(); 
        var extStart=filepath.lastIndexOf("."); 
        var ext=filepath.substring(extStart,filepath.length).toUpperCase(); 
        if(ext!=".BMP"&&ext!=".PNG"&&ext!=".GIF"&&ext!=".JPG"&&ext!=".JPEG"){ 
        alert("图片限于bmp,png,gif,jpeg,jpg格式"); 
        return false; 
        } 
        
   var img=new Image(); 
   img.src=filepath;   
   while(true){ 
    if(img.fileSize>0){ 
    if(img.fileSize>3*1024){       
            alert("图片不大于300KB。"); 
            return false; 
            } 
        break; 
    } 
   } 
   
   return true;       
}); 
}); 
</script> 

 

 

只能客户端校验,局限性非常大。。而且有浏览器兼容问题。

一般校验是一个ajax假提交form到后台进行一个文件大小的length判断返回到前台再进行正常提交。

 

 

 

3,关于windows下端口被占用解决。

 

windows下查看端口被占用情况 findstr "xxx" 跟linux下的grep的作用一样,查询包含的字符串
首先 netstat -ano | findstr "xxx" a:全部的端口使用情况 n:用数字的形式表示主机IP o:显示对应的PID
查出端口号所对应的PID号,再执行 tasklist | findstr "PID" 查询出是哪个程序
需要杀掉程序的话执行 taskkill 杀之

 

 

 

4,关于删除linux下的乱码文件名文件。

 

当文件名为乱码的时候,无法通过键盘输入文件名,所以在终端下就不能直接利用rm,mv等命令管理文件了。

但是我们知道每个文件都有一个i节点号,我们可以考虑通过i节点号来管理文件。首先,我们要取得文件的i节点号。这个可以通过ls命令的-i选项获得得,也可以通过ll -i 来获得。

第二步,使用find命令将文件名传递给rm命令。e.g:删除节点为12345的乱码文件夹可以使用如下命令

find ./ -inum 12345 -print -exec rm {} -rf /;

注意/;前面的空格不能少,少了就会报错。

 

 

5,记得上次什么东西搞的ibaits里面的xml执行语句。 在where条件后面有固定条件and动态查询条件,怎么搞都不行。最后写这个东西~~。记下。

 

<select id="queryhotEaListByCond"
		parameterClass="Ea"
		resultMap="eaResult">
		select eaproviderid,eaprovidername,eaid,eaname,description,eastatus,activetime,eaphono,eatype,eaassort,ealabel,partition,
		eagenre,usedegree,tryoutdegree,bestowstamp,eadevlevel,eansp,score,votecount,status,applynum  from zxdev.ea
		where  eaid not in(select hottoolid from toolmaintenance)
		and eastatus='0'
		<dynamic>  
       <isNotEmpty prepend="and" property="eaid">
			  eaid = #eaid#
		</isNotEmpty> 
		<isNotEmpty prepend="and" property="eaname">
			  eaname like '%$eaname$%' escape '\'
		</isNotEmpty>
		<isNotEmpty prepend="and" property="activetime">
			  activetime =  #activetime#
		</isNotEmpty>
		<isNotEmpty prepend="and" property="eaassort">
			  eaassort =  #eaassort#
		</isNotEmpty>
		<isNotEmpty prepend="and" property="eagenre">
			  eagenre =  #eagenre#
		</isNotEmpty>
     </dynamic>  
</select>

 

 

6,oracle删除数据库死锁:

 

 -第一步:查看是否有死锁存在,查出有数据则代表有死锁   
 select p.spid,c.object_name,b.session_id,b.oracle_username,b.os_user_name  from v$process p,v$session a,v$locked_object b,all_objects   c   
 where  p.addr=a.paddr   
 and    a.process=b.process   
 and    c.object_id=b.object_id 

 --第二步:查出死锁session的精确信息【sid 为前面语句的session_id】 
 SELECT sid, serial#, username, osuser FROM v$session where sid='第一步查询出来的session_id'; 

 --第三步:删除死锁【第一个参数为sid,第二个为serial#】 
 alter system kill session '第一个参数,第二个参数'; 

 

 

7,struts2的防止页面重复提交:

 

 

<!-- token标签防止重复提交的请求  -->
		<action name="register_app_register" class="developerAction" method="app_register">
			<interceptor-ref name="defaultStack" />
			<interceptor-ref name="token" />
			<result name="register_success_app">/aspportal/user/register_success_app.jsp</result>
			<result name="invalid.token">/aspportal/comm/repeat.jsp</result>
		</action>
		
		<action name="register_com_register" class="developerAction" method="com_register">
			<interceptor-ref name="defaultStack" />
			<interceptor-ref name="token" />
			<result name="register_success_com">/aspportal/user/register_success_com.jsp</result>
			<result name="register_activation">/aspportal/user/activation_email.jsp</result>
			<result name="invalid.token">/aspportal/comm/repeat.jsp</result>
		</action>
<!--  END -->

 

8,访问weblogic部署应用的时候提示403禁止访问....

很有可能是访问人数超过限制,然后禁止访问....一般未破解的weblogic'只能提供给5个人学习。

 

 

9,JS转换一段UTF码的中文成汉字

 

 


function revertUTF8(szInput)
{
    var x,wch,wch1,wch2,uch="",szRet="";
    for (x=0; x<szInput.length; x++)
    {
        if (szInput.charAt(x)=="%")
        {
            wch =parseInt(szInput.charAt(++x) + szInput.charAt(++x),16);
            if (!wch) {break;}
            if (!(wch & 0x80))
            {
                wch = wch;
            }
            else if (!(wch & 0x20))
            {
                x++;
                wch1 = parseInt(szInput.charAt(++x) + szInput.charAt(++x),16);
                wch  = (wch & 0x1F)<< 6;
                wch1 = wch1 & 0x3F;
                wch  = wch + wch1;
            }
            else
            {
                x++;
                wch1 = parseInt(szInput.charAt(++x) + szInput.charAt(++x),16);
                x++;
                wch2 = parseInt(szInput.charAt(++x) + szInput.charAt(++x),16);
                wch  = (wch & 0x0F)<< 12;
                wch1 = (wch1 & 0x3F)<< 6;
                wch2 = (wch2 & 0x3F);
                wch  = wch + wch1 + wch2;
            }
            szRet += String.fromCharCode(wch);
        }
        else
        {
            szRet += szInput.charAt(x);
        }
    }
    return(szRet);
}

 

 

  • 记录自己开发中经常遇到的小问题以及解决。
            
    
    博客分类: 一些良好习惯与养成 遇到问题经常 
  • 大小: 49.9 KB