自己记忆

http://subclipse.tigris.org/update  //SVN插件

eclipse/configuration/.settings目录下,
有一个“org.eclipse.ui.ide.prefs”文件,用记事本打开,
里面有一个“SHOW_WORKSPACE_SELECTION_DIALOG”,
如果你之前有打勾的话后面的值是false,你把它改成true就好了,
下次再开就出现那个“Workspace Launcher”框了。


在Eclipse使用SVN的过程中大多数人往往习惯把访问SVN的用户名密码自动保存起来
以便下次自动使用,不要再次手工输入,但是有些时候需要变更密码或者用户名,
这时候怎么办?在网上查找后发现如下方法:

1. 查看你的Eclipse中使用的是什么SVN Interface
windows > preference > Team > SVN #SVN Interface

2. 如果是用的JavaHL, 找到以下目录并删除auth目录下的文件.
C:"Documents and Settings"[YourUserName]"Application Data"Subversion"

3. 如果你用的SVNKit, 找到以下目录并删除.keyring文件.
[eclipse]"configuration"org.eclipse.core.runtime


    主要有两种方法,一种是删除SVN客户端的账号配置文件;另外一种就是去SVN服务端将账号设置成不可用。

    具体步骤:

    1、通过删除SVN客户端的账号配置文件

    (1)找到我们使用的客户端配置文件,在window xp下面他们的位置在系统盘的 Documents and Settings/alex/Application Data/Subversion/auth/文件夹中,把里面的所有文件删除。

    (2)使用SVN更新或提交,使得客户端与服务端进行通讯,这样就会SVN客户端就要求我们输入新的用户名密码,输入我们的用户名密码就可以替换掉旧的用户名密码。

    2、通过修改SVN服务端账号配置文件,这部分需要SVN的管理员配合

    (1)找到服务端账号配置文件,这个文件位于SVN服务器的安装路径 config文件夹,打开并编辑passwd文件,删除或注释需要被替换的账号

    (2)在客户端使用SVN更新或提交,使得客户端与服务端进行通讯,这样就会SVN客户端就要求我们输入新的用户名密码,输入我们的用户名密码就可以替换掉旧的用户名密码。

sendTo = new String(sendTo.getBytes("ISO-8859-1"), "utf-8"); 

MYSQL
 public static String sDriverName = "com.mysql.jdbc.Driver";

 public static String sUrl = "jdbc:mysql://localhost/ydsdb?useUnicode=true&characterEncoding=utf-8";
 //url=jdbc:mysql://192.168.0.101:3306/news?Unicode=true&characterEncoding=true&characterEncoding=utf-8
 public static String sUserName = "root";
 public static String sPassWord = "mysql";
SQL2000
// public static String sDriverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
// public static String sUrl = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs";
// public static String sUserName = "sa";
// public static String sPassWord = "sa";

oracle
 oracle.jdbc.driver.OracleDriver
 jdbc:oracle:thin:@218.24.136.16:1521:slytship
 ship
 ship
SQL2005
 public static String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
 public static String url = "jdbc:sqlserver://198.1.1.17:1433; DatabaseName=slytship";
 public static String userName = "sa";
 public static String passWord = "123456";


function trim(str){  //删除左右两端的空格  
 return str.replace(/(^/s*)|(/s*$)/g, "");  
}  
function ltrim(str){  //删除左边的空格  
 return str.replace(/(^/s*)/g,"");  
}  
function rtrim(str){  //删除右边的空格  
 return str.replace(/(/s*$)/g,"");  

 

1.tomcat5下jsp出现getOutputStream() has already been called for this response异常的原因和解决方法在tomcat5下jsp中出现此错误一般都是在jsp中使用了输出流(如输出图片验证码,文件下载等),
没有妥善处理好的原因。

具体的原因就是
在tomcat中jsp编译成servlet之后在函数_jspService(HttpServletRequest request, HttpServletResponse response)的最后
有一段这样的代码
finally {
      if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
    }
这里是在释放在jsp中使用的对象,会调用response.getWriter(),因为这个方法是和
response.getOutputStream()相冲突的!所以会出现以上这个异常。

然后当然是要提出解决的办法,其实挺简单的(并不是和某些朋友说的那样--
将jsp内的所有空格和回车符号所有都删除掉),

在使用完输出流以后调用以下两行代码即可:
out.clear();
out = pageContext.pushBody();

 

 


INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-12-20 18:31:34' , 'YYYY-MM-DD HH24:MI:SS' ) ) ;
查询显示:2007-12-20 18:31:34.0
-------------------
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-12-14 14:10' , 'YYYY-MM-DD HH24:MI' ) );
查询显示:2007-12-14 14:10:00.0
-------------------
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-12-14 14' , 'YYYY-MM-DD HH24' ) );
查询显示:2007-12-14 14:00:00.0
-------------------
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-11-15' , 'YYYY-MM-DD' ) );
查询显示:2007-11-15 00:00:00.0
-------------------
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-09' , 'YYYY-MM' ) );
查询显示:2007-09-01 00:00:00.0
-------------------
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007' , 'YYYY' ) );
查询显示:2007-05-01 00:00:00.0

从数据库获取完整时间
java.util.Date date = new java.util.Date(rs.getTimestamp("eta").getTime());


select senderCode,sendStaCode,oilCode,revStaCode,reciverCode,zoneCode,transModeCode,originalQty,adjustQty,afterQty from dpo
union
select '','','','','','','',sum(originalQty),sum(adjustQty),sum(afterQty) from dpo;


//在导入jxl包前提下
循环。。。
if (cell.getType() == CellType.NUMBER)----------------1
strdataint = ( (NumberCell) cell).getValue();
else if (cell.getType() == CellType.DATE)--------------------2
strdatastr = ( ( (DateCell) cell).getDate().toString());
else----------------------------------------------------------3
strdatastr = cell.getContents();
例:
while (rs.next()) {
                Vector vector = new Vector();

                vector.add(rs.getString("ID"));
                vector.add(rs.getString("NAME"));
                vector.add(rs.getTimestamp("FORECASTTIME"));
                vector.add(rs.getDouble("LAT"));
                vector.add(rs.getDouble("LON"));
                vector.add(rs.getDouble("LAT24"));
                vector.add(rs.getDouble("LON24"));
                vector.add(rs.getDouble("LAT48"));
                vector.add(rs.getDouble("LON48"));
                vector.add(rs.getDouble("LAT72"));
                vector.add(rs.getDouble("LON72"));
                vector.add(rs.getDouble("WINDPOWER"));
                vector.add(rs.getDouble("AIRPRESSURE"));
                vector.add(rs.getDouble("DIRECTION"));
                vector.add(rs.getDouble("SPEED"));
                vector.add(rs.getDouble("RADIUS7"));
                vector.add(rs.getDouble("RADIUS10"));

                list.add(vector);
            }
            Vector inner = null;
            String value = "";// 存放在cell中的文本值
            OutputStream os = new FileOutputStream(path);
            workbook = Workbook.createWorkbook(os); // 创建第一个工作表,name:工作表名称
            worksheet = workbook.createSheet("record", 0); // 创建第一个工作表,name:工作表名称
            Label label = null;// 用于写入文本内容到工作表中去
            jxl.write.Number nmb = null;// 用于写入数值到工作表中去

            WritableFont font = new WritableFont(WritableFont.createFont("宋体"), 10, WritableFont.BOLD);
            WritableCellFormat format = new WritableCellFormat(font);
            format.setAlignment(jxl.format.Alignment.CENTRE);
            jxl.write.DateFormat df = new jxl.write.DateFormat("yyyy-mm-dd");

            for (int i = 0; i < title.length; i++) {
                label = new Label(i, 0, title[i], format);// 参数依次代表列数、行数、内容
                worksheet.addCell(label);// 写入单元格
            }

            // 开始写入内容
            for (int i = 0; i < list.size(); i++) {
                inner = (Vector) list.get(i);// 获取一条记录
                for (int j = 0; j < inner.size(); j++) {
                    if(inner.get(j) == null || inner.get(j).equals("")){
                        continue;
                    }else{
                        if(j == 0 || j == 1){
                            value = (String) inner.get(j);
                            label = new Label(j, i + 1, value);
                            worksheet.addCell(label);
                        }else if(j == 2){
                            format = new WritableCellFormat(df);
                            Date date = (Date)inner.get(j);
                            jxl.write.DateTime dt = new jxl.write.DateTime(j, i + 1, date, format);
                            worksheet.addCell(dt);
                        }else{
                            Double d = (Double)inner.get(j);
                            label = new Label(j, i + 1, d.toString());
                            worksheet.addCell(label);
                        }
                    }
                }
            }

 

 

--------------------------------------------------------------------------------
**区劳动... 张小为....男...1963年9月   //原始数据

(DateCell)读时分秒问题+8
public static Date getLocalTime(Date date){
         long Time=(date.getTime()/1000)-60*60*8;
         date.setTime(Time*1000);
         return date;
    }

 

path应为:C:/Java/jdk1.5.0/bin;C:/Java/jdk1.5.0/jre/bin
   java-home应为:C:/Java/jdk1.5.0
   classpatch为:.;C:/Java/jdk1.5.0/lib;C:/Java/jdk1.5.0/lib/tools.jar 

 

 String sDate = "2100-01-01";
 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
 Date date = new Date();
 date = sdf.parse(sDate);

 Date date;
 String time = sdf.format(date);

select case  when SMALLITEMNAME= '比例' then (qoil+coil+moil)/3 else qoil+coil+moil end as 合计,qoil as 汽油,coil as 柴油,moil as 煤油  from test where bigitemname = '累计出厂完成总量' group by qoil,coil,moil,SMALLITEMNAME


tomcat连接池
1、将.jar文件放到tomcat lib下
2、conf->context.xml 加上
<Resource name="jdbc/oracle_shipping" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@218.24.136.16:1521:shscshipping" username="shipping" password="shipping" maxActive="500" maxIdle="50" maxWait="-1" />
3、程序web.xml里面<resource-ref>
        <description>Oracle Datasource</description>
        <res-ref-name>jdbc/oracle_shipping</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
  
4、public static Connection getCon(){
  Connection con = null;
  try{
   Context initContext = new InitialContext();
   Context envContext = (Context)initContext.lookup("java:/comp/env");
   DataSource ds = (DataSource)envContext.lookup("jdbc/oracle_manage");
   con = ds.getConnection();
  }catch(Exception e){
   e.printStackTrace();
   return null;
  }  
  return con;
 }

tomcat编码
server.xml下 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>

 

              //    Cookie cookies[]=request.getCookies();
                    //    Cookie sCookie = null;
                    //    String svalue = null;
                    //    String sname = null;
                    //    for(int i=0; i<cookies.length; i++){
                    //        sCookie = cookies[i];
                    //        if(sCookie.getName().equals("userName")){
                    //            svalue = sCookie.getValue();
                    //        }
                    //     }


/*cookie相关*************************************************************************************/

function setCookie(name,value,expireHours) {
    var exp = new Date();
    exp.setTime(exp.getTime() + expireHours * 3600 * 1000);
    document.cookie = name + "=" + escape(codeCookie(value)) + " ; expires=" + exp.toGMTString() + " ; path=/";
}

//获取某键
function getCookie(name) {
    var strArg = name + "=";
    var nArgLen = strArg.length;
    var nCookieLen = document.cookie.length;
    var nEnd;
    var i = 0;
    var j;

    while (i < nCookieLen) {
        j = i + nArgLen;
        if (document.cookie.substring(i,j) == strArg) {
            nEnd = document.cookie.indexOf (";",j);
            if (nEnd == -1) nEnd = document.cookie.length;
            return decodeCookie(unescape(document.cookie.substring(j,nEnd)));
        }
        i = document.cookie.indexOf(" ",i) + 1;
        if (i == 0) break;
    }
    return null;
}

//删除某键

function delCookie(name){
    /*
 var exp = new Date();   
    exp.setTime (exp.getTime() - 1);   
    var cval = getCookie(name);   
    document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); 
 */

    var exp = new Date();
    exp.setTime(exp.getTime()-(86400*1000));
    setCookie(name, "", exp);
}

//编码
function codeCookie(str) {  
    var strRtn="";
    for(var i=str.length-1;i>=0;i--) {
        strRtn+=str.charCodeAt(i);
        if(i) strRtn+="a"; //用a作分隔符
    }
    return strRtn;
}  
   
//解码  
function decodeCookie(str) {
    var strArr;
    var strRtn="";
    strArr=str.split("a");
    for(var i=strArr.length-1;i>=0;i--)
        strRtn+=String.fromCharCode(eval(strArr[i]));
    return strRtn;
}  

 

jsp上写
 String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath() + "/";
 String basePath1 =  application.getRealPath("") + "/" + "/export/";


关键字: dwr 错误:org.directwebremoting.util.CommonsLogging
dwr遇到这种错误:
org.directwebremoting.util.CommonsLoggingOutput error
严重: A request has been denied as a potential CSRF attack.

主要原因是因为:
页面URL被跨站了的服务所调用.
解决办法:
在web.xml里dwr的servlet部分加上一个参数:
Java代码
   
<init-param>     
            <param-name>crossDomainSessionSecurity</param-name>     
            <param-value>false</param-value>     
</init-param> 

 
<init-param>  
            <param-name>crossDomainSessionSecurity</param-name>  
            <param-value>false</param-value>  
</init-param>


corssDomainSessionSecurity这个参数是在dwr版本2.0才有的.默认值为true,也就是禁止其他域发送请求,corssDomainSessionSecurity:设置成false能够从其他域进行请求,但是这样做会在安全性上有一些冒险.


//检查是否为任意数(实数)  
  function   isNumeric(strNumber)   {  
  var   newPar=/^(-|/+)?/d+(/./d+)?$/  
  alert(newPar.test(strNumber));}  
  //检查是否为正数  
  function   isUnsignedNumeric(strNumber)   {  
  var   newPar=/^/d+(/./d+)?$/  
  alert(newPar.test(strNumber));   }  
  //检查是否为整数  
  function   isInteger(strInteger)   {  
  var   newPar=/^(-|/+)?/d+$/  
  alert(newPar.test(strInteger));   }  
  //检查是否为正整数  
  function   isUnsignedInteger(strInteger)   {  
  var   newPar=/^/d+$/  
  alert(newPar.test(strInteger));}


xmlHttp.readyState
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了

xmlHttp.status
100 Continue
 
101 Switching protocols
 
200 OK
 
201 Created
 
202 Accepted
 
203 Non-Authoritative Information
 
204 No Content
 
205 Reset Content
 
206 Partial Content
 
300 Multiple Choices
 
301 Moved Permanently
 
302 Found
 
303 See Other
 
304 Not Modified
 
305 Use Proxy
 
307 Temporary Redirect
 
400 Bad Request
 
401 Unauthorized
 
402 Payment Required
 
403 Forbidden
 
404 Not Found
 
405 Method Not Allowed
 
406 Not Acceptable
 
407 Proxy Authentication Required
 
408 Request Timeout
 
409 Conflict
 
410 Gone
 
411 Length Required
 
412 Precondition Failed
 
413 Request Entity Too Large
 
414 Request-URI Too Long
 
415 Unsupported Media Type
 
416 Requested Range Not Suitable
 
417 Expectation Failed
 
500 Internal Server Error
 
501 Not Implemented
 
502 Bad Gateway
 
503 Service Unavailable
 
504 Gateway Timeout
 
505 HTTP Version Not Supported

 

抽象类,   再抽象也还属于类的范畴,   它能包含一个类能包含的任何东西;  
  而接口已经不属于类了,   它是类的抽象.  
   
  除了直接实例化以外,   可以像使用普通类一样使用抽象类.  
  而对于接口,   几乎没有直接与之通信的可能性,   因为它几乎不提供具象的东西,   它是一种极端的抽象.
 .接口可以多重继承   ,抽象类不可以    
  2.接口定义方法,不给实现;而抽象类可以实现部分方法  
  3.接口中基本数据类型的数据成员,都默认为static和final,抽象类则不是  
  如果事先知道某种东西会成为基础类,  
  那么第一个选择就是把它变成一个接口。  
  只有在必须使用方法定义或者成员变量的时候,才应考虑采用抽象类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值