日出星辰

          2011年9月14日 #

          從需求開發會議談起

          今天項目組進行了一個小時的需求討論,由于剛進入項目組不久,對系統了解不多,幾乎沒有發言一直在旁聽。

          此次會議得出一點心得:系統開發中最重要的就是解決方案的敲定,解決方案選擇對的話,就算沒有達到事半功倍的效果,開發人員開發起來也能輕松很多。

          怎么才能產生一個好的解決方案,這就與對系統、需求、技術的掌握程度了,程度越高考慮事情越周全、解決方案越有效。

          由此也可以得出,企業在選擇員工時應該看重分析問題、解決問題的能力,而不是技術能力。當然了,技術能力一般,解決問題能力可能也不是多好。

          一個好的程序員:技術能力+解決問題能力(思維邏輯),所以技術是基礎、必備的,技術上要每天都有收獲,思維方式要時刻注意培養,不僅僅是解決開發問題時注意,日常生活同樣使用。

          posted @ 2011-10-21 23:19 日出星辰 閱讀(148) | 評論 (0)編輯 收藏

          你的成功在于你每天養成的習慣

          要成功,就馬上準備有所付出吧!這就是每天你應該養成的習慣。 
          1、不說“不可能”; 
          2、凡事第一反應: 找方法,不找借口; 
          3、遇到挫折對自己說聲:太好了,機會來了! 
          4、不說消極的話,不落入消極的情緒,一旦發生立即正面處理; 
          5、凡事先訂立目標; 
          6、行動前,預先做計劃; 
          7、工作時間,每一分、每一秒做有利于生產的事情; 
          8、隨時用零碎的時間做零碎的事情; 
          9、守時; 
          10、寫點日記,不要太依靠記憶; 
          11、隨時記錄想到的靈感; 
          12、把重要的觀念、方法寫下來,隨時提示自己; 
          13、走路比平時快30%,肢體語言健康有力,不懶散、萎靡; 
          14、每天出門照鏡子,給自己一個自信的微笑; 
          15、每天自我反省一次; 
          16、每天堅持一次運動; 
          17、聽心跳一分鐘,在做重要的事情,疲勞時,緊張時,煩躁時。。。。 
          18、開會做前排; 
          19、微笑; 
          20、用心傾聽,不打斷對方的話; 
          21、說話有力,感覺自己的聲音能產生感染力的磁場; 
          22、說話之前,先考慮一下對方的感覺; 
          23、每天有意識贊美別人三次以上; 
          24、即使表示感謝,如果別人幫助了你的話; 
          25、控制住不要讓自己作出為自己辯護的第一反應; 
          26、不用訓斥、指責的口吻與別人說話; 
          27、每天做一件”分外事“; 
          28、不關任何方面,每天必須至少做一次”進步一點點“,并且有意識的提高; 
          29、每天提前15分上班,推遲30分下班; 
          30、每天下班前5分鐘做一下今天的整理工作; 
          31、定期存錢; 
          32、節儉; 
          33、時常運用”頭腦風暴“,利用腦力激蕩提升自己創新能力; 
          34、恪守誠信; 
          35、學會原諒。

          posted @ 2011-10-09 10:58 日出星辰 閱讀(177) | 評論 (0)編輯 收藏

          數字轉換人民幣大寫

          通過JS完成,能滿足多種瀏覽器,不足之處是展示效果不是很理想,而且最多只能輸入13位數字,希望大家提出改正方法

          <html>
          <head>
          <title>數字轉換人民幣大寫</title>
          <script type="text/javascript">
          function convert() {
          var big = new Array("", "", "", "", "", "", "", "", "", "");
          var unit = new Array("", "", "", "", "", "", "", "", "", "",
          "", "", "");
          var num = document.getElementById("num").value;
          if (num =="") {
          alert(
          "輸入為空,請輸入數字");
          return false;
          }

          if (num.match(/[^,.\d]/) != null) {
          alert(
          "輸入內容不合法,請輸入數字");
          return false;
          }
          var temp = "";
          if (num != null&&num.length<=13) {
          for (var i = 0; i < num.length; i++) {
          if(num.charAt(i)==0){
          alert(
          "輸入內容不合法,不能以0開始");
          return false;
          }
          else{
          temp
          = temp + big[num.charAt(i)] + unit[num.length - i - 1];
          }

          }
          }
          else{
          alert(
          "最多只能輸入13位數字");
          return false;
          }
          document.getElementById(
          "rmb").innerText = temp;

          }


          </script>
          </head>

          <body>
          <input type="text" name="num" id="num"/>
          <input type="button" name="convert" value="轉換" onclick="return convert()"/>
          <input type="text" id="rmb"/>
          </body>
          </html>


           

           

          posted @ 2011-10-08 10:36 日出星辰 閱讀(188) | 評論 (0)編輯 收藏

          敲回車光標跳到下一個輸入框(只能在IE中使用)

          <html>
          <head>
          <title> 敲回車光標跳到下一個輸入框(只能在IE下使用) </title>
          </head>
          <script>
          function turnNext(object){
          if(object.keyCode==13){
          object.keyCode
          =9;
          }
          }
          </script>
          <body>
          <table>
          <tr>username<input type="text" name="name1" onkeydown="turnNext(event)"/></tr>
          <tr>password<input type="text" name="name2" /></tr>
          <tr>age<input type="text" name="name2" /></tr>
          </table>
          </body>
          </html>

          posted @ 2011-10-08 10:22 日出星辰 閱讀(279) | 評論 (0)編輯 收藏

          各種文件注釋寫法

          JSP注釋

          在JSP中注釋最好用<%----注釋內容----%>

          JSP注釋分兩種

          顯示注釋:在客戶端(源代碼)可以看到

          HTML中的注釋<!---注釋內容--->  

          隱式注釋:在客戶端(源代碼)看不到

          使用JAVA中的“//”、“/*…………*/”,以及JSP中自己的注釋<%----注釋內容----%>

          <%---JSP中的注釋,看不見---%>

          <%

           //注釋,看不見 單行注釋

           /*

           XXXXX

           注釋,看不見  多行注釋

           YYYYY

          */

          %>

          <!----顯示注釋--->

          <!--This page was loaded on <%= (new java.util.Date()).toLocaleString() %> -->

          結果:<!--This page was loaded on 2010-12-01 13:24:32 -->

          如果用顯示注釋,瀏覽器也會執行里面的內容,速度會低點

          HTML注釋

          只有一種 <!----注釋內容-->

          <!----這里是HTML注釋--->

          XML注釋

          只有一種<!----注釋內容-->

          CSS注釋

          只有一種 /*  注釋內容 */

          JavaScript注釋

          單行注釋   //注釋內容

          多行注釋  

          /*

          XXXX

          注釋內容

          YYYY

          */

          posted @ 2011-09-30 15:52 日出星辰 閱讀(224) | 評論 (0)編輯 收藏

          Struts1入門實例(簡單登錄)

          現在開始加入公司的核心項目,但由于項目開發比較早,所以使用的技術不是很新潮,前臺用的還是struts1。

          雖然不是什么新技術,但仍可以從中學到好多東西的。花了一個晚上的時間終于把struts1的流程跑通了。

          省略了創建過程及加入jar包的過程,直接進入正題。

          首頁要在web.xml中添加相應的struts配置:

          <servlet>
          <servlet-name>action</servlet-name>
          <servlet-class>
          org.apache.struts.action.ActionServlet
          </servlet-class>
          <init-param>
          <param-name>config</param-name>
          <param-value>/WEB-INF/struts-config.xml</param-value>
          </init-param>
          <init-param>
          <param-name>debug</param-name>
          <param-value>2</param-value>
          </init-param>
          <init-param>
          <param-name>detail</param-name>
          <param-value>2</param-value>
          </init-param>
          <load-on-startup>2</load-on-startup>
          </servlet>
          <servlet-mapping>
          <servlet-name>action</servlet-name>
          <url-pattern>*.do</url-pattern>
          </servlet-mapping>

          然后在config所對應的目錄下添加struts配置文件struts-config.xml

          <?xml version="1.0" encoding="UTF-8" ?>

          <!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd"
          >

          <struts-config>

          <!-- ActionForm -->
          <form-beans>
          <!-- name:名稱 type:類路徑 -->
          <form-bean name="loginForm" type="com.login.LoginForm">
          </form-bean>
          </form-beans>
          <!-- 設置全局URL,必須寫在Action前面,這樣任何Action都可以使用 -->
          <global-forwards>
          <forward name="result" path="/result.jsp" />
          </global-forwards>

          <!-- 注冊Action -->
          <action-mappings>
          <!-- name:名稱 type:類路徑 path:客戶端(JSP)提交到服務器端時指定的路徑(Form表單中的action=”/login.do" -->
          <action path="/login" type="com.login.LoginAction"
          name
          ="loginForm" scope="request">
          <!-- 局部URL,只有這個action可以使用 -->
          <forward name="success" path="/success.jsp"></forward>
          <forward name="error" path="/error.jsp"></forward>
          </action>
          </action-mappings>


          </struts-config>
          
          
          注:Action和Form的關系是一個Action只能對應一個Form(通過Action的name屬性)
          而一個Form可以被多個Action調用
          LoginAction.java
          package com.login;

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

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

          public class LoginAction extends Action {

          @Override
          public ActionForward execute(ActionMapping mapping, ActionForm form,
          HttpServletRequest request, HttpServletResponse response)
          throws Exception {
          LoginForm lf
          = (LoginForm) form;
          String username
          = lf.getUsername();
          String password
          = lf.getPassword();
          String errorInfo
          = "";
          String result
          = UserManager.getInstance().login(username, password);
          if (result.equals("success")) {
          request.setAttribute(
          "username", username);
          return mapping.findForward("success");
          }
          else if (result.equals("username")) {
          errorInfo
          = "密碼錯誤";
          }
          else {
          errorInfo
          = "用戶名錯誤";
          }
          request.setAttribute(
          "errorInfo", errorInfo);
          return mapping.findForward("error");
          }

          }
          LoginForm.java
          package com.login;

          import javax.servlet.http.HttpServletRequest;

          import org.apache.struts.action.ActionErrors;
          import org.apache.struts.action.ActionForm;
          import org.apache.struts.action.ActionMapping;

          public class LoginForm extends ActionForm {

          private String username;
          private String password;

          public void reset(ActionMapping mapping, HttpServletRequest request) {
          System.out.println(
          "--------reset()-------------");
          super.reset(mapping, request);
          }

          public ActionErrors validate(ActionMapping mapping,
          HttpServletRequest request) {
          System.out.println(
          "--------validate()-------------");
          return super.validate(mapping, request);
          }

          public String getUsername() {
          return username;
          }

          public void setUsername(String username) {
          this.username = username;
          }

          public String getPassword() {
          return password;
          }

          public void setPassword(String password) {
          this.password = password;
          }

          }
          對我個人來說最重要的是前臺jsp頁面沒有掌握,經常在頁面上花費很多時間
          在編寫JSP頁面時要用struts標簽,而我經常會忘記
          引入jsp標簽
          <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
          <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
          index.jsp
          <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
          <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
          <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
          
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html>
          	<head>
          		<title>首頁</title>
          	</head>
          
          	<body>
          		<html:form action="/login.do">
          			用戶名:<html:text property="username"></html:text><br/>
          			密碼: <html:password property="password"></html:password><br/>
          			<html:submit>submit</html:submit>
          		</html:form>
          	</body>
          </html>
          

           

          展示結果(將Action的返回值展示到JSP頁面上)

          <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
          <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
          <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
          
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html>
          	<head>
          		<title>Error</title>
          	</head>
          	<body>
          		<bean:write name="errorInfo" scope="request" />
          	</body>
          </html>
          

           
           
          
          			
          			

          posted @ 2011-09-19 23:00 日出星辰 閱讀(140) | 評論 (0)編輯 收藏

          Ant學習實例

          1.安裝Ant

          先從http://ant.apache.org/下載Ant,解壓到任一目錄下面,比如E:\Lab

          然后設置環境變量

          ANT_HOME=E:\Lab\apache-ant-1.8.2

          path=E:\Lab\apache-ant-1.8.2\bin

          最后驗證是否安裝成功

          在dos中輸入ant,如果顯示

          Buildfile: build.xml does not exist!
          Build failed

          則安裝成功

          2.基礎元素

          project元素

          project元素是Ant文件的根元素

          project的屬性

          Attribute

          Description

          Required

          name

          項目名稱

          No

          default

          當沒有指定target時使用的缺省target

          Yes

          basedir

          用于指定基路徑的位置。該屬性沒有指定時,使用 Ant 的構件文件的附目錄作為基準目錄。

          No

          target元素

          target為Ant的基本執行單元,它可以包含一個或多個具體的任務。多個target 可以存在相互依賴關系

          Ant會依照depends屬性中target出現的順序(從左到右)依次執行每個target。然而,要記住的是只要某個target依賴于一個target,后者就會被先執行。

          <target name="A"/>

          <target name="B" depends="A"/>

          <target name="C" depends="B"/>

          <target name="D" depends="C,B,A"/>

          假定我們要執行target D。從它的依賴屬性來看,你可能認為先執行C,然后B,最后A被執行。錯了,C依賴于B,B依賴于A,所以先執行A,然后B,

          然后C,最后D被執行。

          一個target只能被執行一次,即時有多個target依賴于它。

          若想更好的控制build過程,可以使用if或unless。

          if 屬性

              用于驗證指定的屬性是否存在,若不存在,所在 target 將不會被執行。

          unless 屬性

              該屬性的功能與 if 屬性的功能正好相反,它也用于驗證指定的屬性是否存在,若不存在,所在 target 將會被執行。

          property元素

          property元素可看作參量或者參數的定義(即經常使用的變量),project 的屬性可以通過 property 元素來設定,也可在 Ant 之外設定。

          name是變量的名稱 value是變量的值,要用某個變量時使用${name}方式調用。

          3.完整示例

          創建一個java項目

          HelloWorld.java

          package com.test;
          
          public class HelloWorld {
          	public static void main(String[] args) {
          		System.out.println("Hello world");
          	}
          }

          編寫build.xml文件

          注:build.xml放在和src同級目錄,而不是在src下級目錄

          目錄結構是

          MyProject <dir>
          |--lib <dir> --庫目錄
          |--classes <dir> --目的文件目錄
          |--src <dir> --源文件目錄
          |--doc <dir> --api文檔目錄
          |--build.xml

          <?xml version="1.0" encoding="UTF-8" ?>
          <project name="helloWorld" default="run" basedir=".">
          	<property name="src" value="src"/>
          	<property name="dest" value="build/classes"/>
          	<property name="lib" value="lib"></property>
          	<property name="hello_jar" value="hello1.jar"></property>
          	<!--初始化 之前執行刪除操作-->
          	<target name="init" depends="clean">
          		<mkdir dir="${dest}"/>
          	</target>
          	<!--編譯生成class文件 -->
          	<target name="compile" depends="init">
          		<javac srcdir="${src}" destdir="${dest}"></javac>
          	</target>
          	<!--將編譯后的class文件打包-->
          	<target name="build" depends="compile">
          		<mkdir dir="${lib}"/>
          		<jar jarfile="${lib}/${hello_jar}" basedir="${dest}"></jar>
          	</target>
          	<target name="run" depends="build">
          		<java classname="com.test.HelloWorld" classpath="${lib}/${hello_jar}"></java>
          	</target>
          	<!--刪除-->
          	<target name="clean">
          		<delete dir="${dest}"></delete>
          		<delete dir="${lib}"></delete><!-- 是dir 刪除目錄 ,不是file 刪除文件-->
          	</target>
          </project>
          整個過程:初始化----編譯----打包---放到相應的位置

          參考:

          http://www.cnblogs.com/philander/articles/1782254.html

          http://www.cnblogs.com/elric/archive/2011/03/19/1988840.html

          posted @ 2011-09-14 22:03 日出星辰 閱讀(193) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 鹿邑县| 祁阳县| 沙雅县| 晋江市| 敦化市| 牟定县| 东海县| 固原市| 钟祥市| 马公市| 奈曼旗| 宁都县| 鱼台县| 宝应县| 彰武县| 高邮市| 乐亭县| 扎兰屯市| 泰顺县| 宁城县| 紫阳县| 马关县| 永丰县| 屯留县| 资中县| 南康市| 白银市| 来凤县| 巴林右旗| 竹北市| 江川县| 虞城县| 凤山市| 彰武县| 始兴县| 榆中县| 裕民县| 鄂伦春自治旗| 达拉特旗| 长葛市| 康定县|