<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    從制造到創造
    軟件工程師成長之路
    posts - 292,  comments - 96,  trackbacks - 0

    在windows操作系統上使用IE作為瀏覽器時。常常會發生這樣的問題:在瀏覽使用UTF-8編碼的網頁時,瀏覽器無法自動偵測(即沒有設定“自動選擇”編碼格式時)該頁面所用的編碼。即使網頁已經聲明過編碼格式:

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    由此造成某些含有中文UTF-8編碼的頁面產生空白輸出。

    如果使用的是Mozilla、Mozilla 瀏覽器、Sarafi的瀏覽器這不會造成這個問題。這是由于IE解析網頁編碼時以HTML內的標簽優先,而后才是HTTP header內的訊息;而mozilla系列的瀏覽器則剛剛相反。

    由于UTF-8為3個字節表示一個漢字,而普通的GB2312或BIG5是兩個。頁面輸出時,由于上述原因,使瀏覽器解析、輸出<title></title>的內容時,如果在</title>前有奇數個全角字符時,IE把UTF-8當作兩個字節解析時出現半個漢字的情況,這時該半個漢字會和</title>的<結合成一個亂碼字,導致IE無法讀完<title>部分,使整個頁面為空百輸出。而這個時候如果察看源文件的話,會發現實際上整個葉面全部已經輸出了。

    因此最簡單的解決辦法是在網頁文件的<head></head>標簽中一定要把字符定義

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    放在<title></title>之前。

    posted @ 2008-06-18 09:30 CoderDream 閱讀(416) | 評論 (0)編輯 收藏
    1、如何使用Log4j?
    2、http://supportweb.cs.bham.ac.uk/documentation/tutorials/docsystem/build/tutorials/log4j/log4j.html
    3、Log4j
    http://my.so-net.net.tw/idealist/Java/Log4j.html
    posted @ 2008-06-13 17:56 CoderDream 閱讀(405) | 評論 (0)編輯 收藏
         摘要: 14.1 什么是JavaScript 14.1.1 JavaScript概念 JavaScript是一種基于對象和事件驅動并具有安全性能的腳本語言。 14.1.2 JavaScript特點 是一種腳本編寫語言; 基于對象的語言; 簡單性; 安全性; 動態性; 跨平臺性 14.2 編寫第一個JavaScript腳本 文件范例:1401.html <!-- --...  閱讀全文
    posted @ 2008-06-04 09:29 CoderDream 閱讀(424) | 評論 (0)編輯 收藏
    我們在開發的過程中,調試的時候經常要進入某些包,如果沒有將這些包與對應的源文件文件夾或zip包對應,就會提示“Source not found”,但是現在很多jar文件都會有相應的源文件,如Struts、Spring等等。而且JavaEE的很多源文件可以通過Tomcat的源文件找到,我們把它打成zip包,注意要和jar文件夾對應,然后設置一下,以后新建Web Project的時候,就可以很方便的查看servlet文件夾下面的源代碼了。

    這是javaee.jar的設置畫面,其他Struts等等設置類似。
    posted @ 2008-05-29 14:57 CoderDream 閱讀(3160) | 評論 (0)編輯 收藏
    出現這個問題后使用“清理”功能,如果還不行,就直接到上一級目錄,再執行“清理”,然后再“更新”。

    有時候如果看到某個包里面的文件夾沒有SVN的標志,直接用“Ctrl+Delete”手工刪除,然后“清理”,最后“更新”或“提交”。


    網絡摘抄1:
    錯誤信息
    Malformed file   
    svn: E:\svn\repository\conf\svnserve.conf:12: Option expected   
    原因:

    配置文件12行開頭有空格

       

    錯誤信息
    Attempted to lock an already-locked dir   
    svn: Working copy 'E:\integration\com.svn.practise' locked  

    原因:

    需要用svn cleanup上次關閉時的鎖定


    網絡摘抄2:
    在eclipse里提交和更新文件是抱錯。

    Attempted to lock an already-locked dir
    svn: Working copy 'F:\workspace\WebFrame\WebRoot\attach\prodrelation' locked

    執行“清除”操作后,問題解決了。

    很多操作,例如中斷提交,都會進入這種工作拷貝的鎖定狀態。

    網絡摘抄3:
    因為這兩天頻出這個現象,現在基本不怕這個問題了
    我是這樣解決的:
    1 三令五申項目的組員必須先同步,合并,再提交
    2 操作后經常地在父目錄使用clean up命令
    3 解決了locked問題后,還出現不能更新的現象時,就刪除目錄下的所有文件,包括.svn,再重新check out服務器同目錄一次
    4 總之,操作要規范,要強調組員每天開工時,先在ECLIPSE里同步,下班時,要提交(提交前,先在文件夾的右菜單中,選擇小組>清除),保證每個人的機子里在開工前都是最新版本

    老實講,因為版本沖突,提交沖突,更新失敗等等問題,耽誤了好些時間,但我知道主要還是自身操作不熟練不規范的問題。我相信,只要堅持,大家包括我的組員一定都會喜歡上這個小海龜的  


     

    posted @ 2008-05-27 09:51 CoderDream 閱讀(108661) | 評論 (14)編輯 收藏
    效果:


    文件清單:
    序號 文件名
    1 ChangeLocaleAction.java
    2 ChangeLocaleForm.java
    3 struts-config.xml
    4 index.jsp
    5 application_en_US.properties
    6 application_zh_CN.properties
    7 application_zh_TW.properties

    清單1:
    package com.coderdream.struts.action;

    import java.util.Locale;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.apache.struts.Globals;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;

    import com.coderdream.struts.form.ChangeLocaleForm;

    public class ChangeLocaleAction extends Action {

        
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) {
            ChangeLocaleForm clForm 
    = (ChangeLocaleForm)form;
            String language 
    = clForm.getLanguage();
            
    if (language != null) {
                Locale locale;
                
    if (language.equalsIgnoreCase("en")) {
                    locale 
    = Locale.US;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                } 
    else if (language.equalsIgnoreCase("tw")) {
                    locale 
    = Locale.TAIWAN;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                } 
    else {
                    locale 
    = Locale.CHINA;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                }
            }
            
            
    return mapping.findForward("success");
        }
             
    }

    清單2:
    package com.coderdream.struts.form;

    import org.apache.struts.action.ActionForm;


    /**
     * 
     * description:
     * 
     * 
    @author 
     *
     
    */
    public class ChangeLocaleForm extends ActionForm{
        
        
    public ChangeLocaleForm() {
            
    super();
        }

        
    private String language;

        
    public String getLanguage() {
            
    return language;
        }

        
    public void setLanguage(String language) {
            
    this.language = language;
        }
    }

    清單3:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

    <struts-config>
        
    <data-sources />
        
    <form-beans>
            
    <form-bean name="ChangeLocaleForm"
                type
    ="com.coderdream.struts.form.ChangeLocaleForm" />
        
    </form-beans>

        
    <action-mappings>

            
    <action name="ChangeLocaleForm" path="/ChangeLocale"
                scope
    ="request"
                type
    ="com.coderdream.struts.action.ChangeLocaleAction"
                validate
    ="false">
                
    <forward name="success" path="/index.jsp" />
            
    </action>
        
    </action-mappings>

        
    <message-resources key="application"
            parameter
    ="com.coderdream.struts.resources.application" />
    </struts-config>

    清單4:
    <%@ page contentType="text/html; charset=UTF-8"%>
    <%@page import="org.apache.struts.Globals"%>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>

    <html:html>
    <head>
        
    <title>多語言測試</title>
        
    <meta http-equiv="pragma" content="no-cache">
        
    <meta http-equiv="cache-control" content="no-cache">
        
    <meta http-equiv="expires" content="0">
        
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        
    <meta http-equiv="description" content="This is my page">
    </head>
    <script language="javascript"> 
        function onLanguage(){
            var language 
    = document.getElementsByName("language")[0].value;
            
    if(language!=null&&language!=""){         
              document.forms[
    0].submit();
                }
              }   
        
    </script>

    <body>
        
    <html:form action="ChangeLocale.do">
            
    <html:select property="language" styleId="height:18"
                onchange
    ="onLanguage();">
                
    <option value="" title="">
                    
    --
                    
    <bean:message bundle="application" key="global.select.language" />
                    
    --
                
    </option>
                
    <option value="en" title="English">
                    English
                
    </option>
                
    <option value="cn" title="簡體中文">
                    簡體中文
                
    </option>
                
    <option value="tw" title="繁體中文">
                    繁體中文
                
    </option>
            
    </html:select>
        
    </html:form>
        
    <br>
        
    <br>
        
    <br>
        
    <bean:message bundle="application" key="global.select.test" />
        
    <%=request.getSession().getAttribute(Globals.LOCALE_KEY)%>

    </body>
    </html:html>

    清單5:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)

    global.select.language 
    = Language
    global.select.test     
    = Test

    清單6:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
    #BizException

    global.select.language = \u8BED\u8A00
    global.select.test     = \u6D4B\u8BD5

    清單7:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)

    global.select.language = \u8A9E\u8A00
    global.select.test     = \u6E2C\u8A66

    此功能的關鍵是在Action里面將頁面傳過來的language信息得到,然后根據信息設置Locale,然后將新的Locale放到Session中。

    源代碼:點擊下載
    posted @ 2008-05-14 18:20 CoderDream 閱讀(1019) | 評論 (0)編輯 收藏
    需求:用實線把各個面板圈起來,然后把面板的名字寫在圈圈的左上角。

    原始畫面:


    由于原來的程序使用的是AWT中的Panel,而這個控件我們沒有設置titleBorder的方法。
    現在將更新為Swing中的JPanel面板,代碼分別為:
    舊代碼:
        Panel pRoboCtrl=new Panel();
        pRoboCtrl.setLayout(
    new GridLayout(5125));
        
        
    // Robot控制面板的第一排,面板的標題
            Panel pR1=new Panel(); 
            pR1.setLayout(
    new GridLayout(1123));
         
            
    //Row One
        pR1.add(new Label("Robot Control",Label.CENTER));
    新代碼:
        JPanel pRoboCtrl=new JPanel();
        pRoboCtrl.setLayout(
    new GridLayout(4125));
        Border titleBorder1
    =BorderFactory.createTitledBorder("Robot Control");            
        pRoboCtrl.setBorder(titleBorder1);   
    原來的處理方式是將一個Label放到Panel中,然后將這個Panel放到外層的Panel中,新方式是將外層Panel定義成JPanel,然后設置Border的值為BorderFactory產生的一個實例。



    解決這個問題后,新問題又來了,兩個JPanel中的內容不一樣,上面多,下面少,但是現在面板卻是一樣大,要改成面板高度自動適應。
    其實這只需要修改一行代碼就可以了,代碼如下:
    舊代碼:
    CP.setLayout(new GridLayout(3125));  
    新代碼:
    CP.setLayout(new BoxLayout(CP, BoxLayout.Y_AXIS)); // 沿垂直方向布置組件
    舊代碼的處理方式是網格布局,新代碼的方式是用BoxLayout布局管理器,它會按要求垂直或水平分布。

    以下代碼創建了一個JPanel容器,它采用垂直 BoxLayout,在這個容器中包含兩個Button,這兩個Button沿垂直方向分布,并且保持像素為 5 的固定垂直間隔。
        JPanel panel = new JPanel();
        panel.setLayout(
    new BoxLayout(panel, BoxLayout.Y_AXIS));// 沿垂直方向布置組件
        panel.add(new JButton("Button1"));
        panel.add(Box.createVerticalStrut(
    5));
        panel.add(
    new JButton("Button2"));

    源代碼:下載
    posted @ 2008-04-29 16:16 CoderDream 閱讀(15619) | 評論 (2)編輯 收藏
    1、下載
    http://www.opensymphony.com/quartz/download.action
    https://quartz.dev.java.net/files/documents/1267/43545/quartz-1.6.0.zip

    2、詳細講解Quartz如何從入門到精通
    3、用 Quartz 進行作業調度
    posted @ 2008-04-15 17:46 CoderDream 閱讀(738) | 評論 (0)編輯 收藏
    數據庫和表
    create table USERS
    (
      USERNAME 
    VARCHAR2(20not null,
      PASSWORD 
    VARCHAR2(20)
    )
    alter table USERS
      
    add constraint U_PK primary key (USERNAME)

    /**
     * JdbcExample.java
     *
     * Provider: CoderDream's Studio
     *
     * History
     *    Date(DD/MM/YYYY)    Author          Description
     * ----------------------------------------------------------------------------
     *    Apr 14, 2008                CoderDream        Created
     
    */

    package com.coderdream.jdbc.oracle;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    /**
     * 
    @author XL
     *
     
    */
    public class JdbcExample {


        
    private static Connection getConn() {
            String driver 
    = "oracle.jdbc.driver.OracleDriver";
            String url 
    = "jdbc:oracle:thin:@10.5.15.117:1521:csi";
            String username 
    = "scott";
            String password 
    = "tiger";
            Connection conn 
    = null;
            
    try {
                Class.forName(driver);
                
    // new oracle.jdbc.driver.OracleDriver();
                conn = DriverManager.getConnection(url, username, password);
            }
            
    catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
            
    catch (SQLException e) {
                e.printStackTrace();
            }

            
    return conn;
        }

        
    private static int insert(String username, String password) {
            Connection conn 
    = getConn();
            
    int i = 0;
            String sql 
    = "insert into users (username,password) values(?,?)";
            PreparedStatement pstmt;
            
    try {
                pstmt 
    = conn.prepareStatement(sql);
                
    // Statement stat = conn.createStatement();
                pstmt.setString(1, username);
                pstmt.setString(
    2, password);
                i 
    = pstmt.executeUpdate();
                System.out.println(
    "resutl: " + i);

                pstmt.close();
                conn.close();
            }
            
    catch (SQLException e) {
                e.printStackTrace();
            }

            
    return i;
        }

        
    private static void query() {
            Connection conn 
    = getConn();
            String sql 
    = "select * from users";
            PreparedStatement pstmt;
            
    try {
                pstmt 
    = conn.prepareStatement(sql);
                ResultSet rs 
    = pstmt.executeQuery();
                
    while (rs.next()) {
                    System.out.println(
    "name: " + rs.getString("username")
                            
    + " \tpassword: " + rs.getString("password"));
                }

                rs.close();
                pstmt.close();
                conn.close();
            }
            
    catch (SQLException e) {
                e.printStackTrace();
            }

        }

        
    private static int update(String oldName, String newPass) {
            Connection conn 
    = getConn();
            
    int i = 0;
            String sql 
    = "update users set password='" + newPass
                    
    + "' where username='" + oldName + "'";
            PreparedStatement pstmt;
            
    try {
                pstmt 
    = conn.prepareStatement(sql);

                i 
    = pstmt.executeUpdate();
                System.out.println(
    "resutl: " + i);

                pstmt.close();
                conn.close();
            }
            
    catch (SQLException e) {
                e.printStackTrace();
            }

            
    return i;
        }
        
        
    private static int delete(String username) {
            Connection conn 
    = getConn();
            
    int i = 0;
            String sql 
    = "delete users where username='" + username + "'";
            PreparedStatement pstmt;
            
    try {
                pstmt 
    = conn.prepareStatement(sql);

                i 
    = pstmt.executeUpdate();
                System.out.println(
    "resutl: " + i);

                pstmt.close();
                conn.close();
            }
            
    catch (SQLException e) {
                e.printStackTrace();
            }

            
    return i;
        }

        
    /**
         * 
    @param args
         
    */
        
    public static void main(String[] args) {
            insert(
    "CDE""123");
            insert(
    "CoderDream""456");
            query();
            update(
    "CoderDream""456");
            query();
            delete(
    "CoderDream");
            query();
        }
    }
    posted @ 2008-04-14 17:55 CoderDream 閱讀(7051) | 評論 (0)編輯 收藏
    1、首先下載eclipse的Tomcat插件,文件名為:tomcatPluginV321.zip
    下載:地址

    2、安裝Tomcat插件,即將zip檔解壓,放入eclipse目錄下的 plugins 文件夾中。

    3、在項目上點右鍵,設置properties,在'Tomcat'下面設置'export   to   war   settings'輸入要導出的war文件路徑和文件名,確定,返回項目。


    4、在項目上點右鍵,選擇tomcat   project->Export  to the war file sets in project properties


    5、 進入C盤,可以看到csi.war文件正在生成,成功后會有提示框。這樣就可以通過Tomcat插件導出WAR檔了。
    posted @ 2008-04-08 13:43 CoderDream 閱讀(3737) | 評論 (1)編輯 收藏
    僅列出標題
    共24頁: 上一頁 1 2 3 4 5 6 7 8 9 下一頁 Last 

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(9)

    我參與的團隊

    隨筆分類(245)

    隨筆檔案(239)

    文章分類(3)

    文章檔案(3)

    收藏夾(576)

    友情鏈接

    搜索

    •  

    積分與排名

    • 積分 - 458130
    • 排名 - 114

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久精品视频免费播放| 久久久综合亚洲色一区二区三区 | 成人性生交大片免费看无遮挡| a级毛片免费观看在线| 亚洲午夜理论片在线观看| 亚洲AV午夜福利精品一区二区| 免费成人黄色大片| 精品久久洲久久久久护士免费| 2019中文字幕在线电影免费| 成人性做爰aaa片免费看| 一级特黄录像免费播放肥| 黑人粗长大战亚洲女2021国产精品成人免费视频| 亚洲宅男永久在线| 国产成人精品日本亚洲| 亚洲色偷偷狠狠综合网| 国产高清在线精品免费软件| 一个人免费高清在线观看| 思思re热免费精品视频66| **俄罗斯毛片免费| 91精品手机国产免费| 久久综合给合久久国产免费 | 亚洲一区二区三区自拍公司| 亚洲?V乱码久久精品蜜桃| 国产成人在线免费观看| 国产成人高清精品免费鸭子| 国产网站免费观看| 国产美女做a免费视频软件| 日韩免费观看的一级毛片| 色www永久免费视频| 午夜毛片不卡免费观看视频| 成年女人午夜毛片免费视频| 成人无遮挡裸免费视频在线观看| 免费观看黄网站在线播放| 久久久久久久91精品免费观看| 国产曰批免费视频播放免费s| 国产成人精品久久免费动漫| 麻豆视频免费播放| 永久免费的网站在线观看| 好男人视频社区精品免费| 国产99视频精品免费视频7| 亚洲精品色婷婷在线影院|