willim

          常用鏈接

          統(tǒng)計(jì)

          好友列表

          鏈接

          最新評(píng)論

          2007年1月22日 #

          Spring的DAO學(xué)習(xí)筆記

          1.理解的Spring的DataAccessException
          DataAccessException:是Spring提供了一種與特定技術(shù)無(wú)關(guān)的異常,實(shí)現(xiàn)服務(wù)層與數(shù)據(jù)訪問(wèn)層的分離。

          你不一定要處理DataAccessException,同時(shí)由于DataAccessException是NestedRunTimeException的子類(lèi),
          你可以通過(guò)它的getCourse()獲得導(dǎo)致這個(gè)異常的另一個(gè)異常,這樣你就可以獲得與特定技術(shù)相關(guān)的異常信息。

          Spring為你打造異常分類(lèi)
          Spring清楚與特定技術(shù)相關(guān)的異常,Spring自己會(huì)拋出更為精確的異常
          CleanupFailureDataAccessException
          DataAccessResourceFailureException
          DataIntegrityViolationException
          DataRetrieveFailureException
          DeadlockLoserDataAccessException
          IncorrectUpdataSemanticsDataAccessException
          InvalidDataAccessApiUsageException
          InvalidDataAccessResourceUsageException
          OptimisticLockingFailureException
          TypeMismatchDataAccessException
          UncategorizeDataAccesException

          2.與DataSource一起工作
          從JNDI中獲得DataSource
          創(chuàng)建一個(gè)DataSource連接池? org.apache.commons.dbcp.BasicDataSource
          在測(cè)試時(shí)使用DataSource?? DriveManageDataSource

          3.一致的DAO支持
          Tempate模式
          流程順序不變,可能有某個(gè)流程的細(xì)節(jié)是要變化,這個(gè)交給接口了,然后每個(gè)實(shí)現(xiàn)著去實(shí)現(xiàn)這個(gè)接口就可以。
          所以Spring是通過(guò)提供相應(yīng)的模板類(lèi)來(lái)實(shí)現(xiàn)的,同時(shí)也提供了支撐類(lèi)。

          4.Spring與hibernate整合
          Spring與hibernate整合主要在以下幾方面:
          整合事務(wù)管理
          異常處理
          線程安全,輕量級(jí)模板類(lèi)
          便利的支持類(lèi)
          資源管理

          配置SessionFactory
          LocalSessionFactoryBean
          dataSource
          hibernateProperties
          mappingDirectoryLocations
          mappingResources

          HibernateTemplate
          HibernateDaoSupport

          posted @ 2007-01-22 11:22 willlim 閱讀(397) | 評(píng)論 (0)編輯 收藏

          2006年12月31日 #

          JSP學(xué)習(xí)筆記(EL篇)

          1.如何通過(guò)EL訪問(wèn)Implicit Object
          EL可以用在兩個(gè)位置:
          a.template text
          b.標(biāo)準(zhǔn)標(biāo)簽和自定義標(biāo)簽的屬性設(shè)置

          Implicit Object
          與取值范圍有關(guān)的: applicationScope, sessionScope, requestScope, pageScope
          與輸入輸出有關(guān)的:param, paramValues
          與head有關(guān)的:header,headerValues
          與cookie有關(guān):cookie
          與ServletContext的初使化參數(shù)有關(guān):initParam
          還有一個(gè)pageContext


          2.EL訪問(wèn)操作符
          property操作符號(hào):.或者 []
          集合操作符號(hào):[]
          如果要訪問(wèn)的屬性里面包含非字母,必須要用[]

          3. EL其他操作符號(hào)
          a.Arithmetic: +,-(binary),*,/(div),%(mod)
          b.logic: &&(and),||(or), !(not)
          c.relational:==(eq), !=(ne), <(lt), >(gt),<=(le),>=(ge)
          d.empty:用來(lái)判斷是否為null或empty
          e.conditional: ?

          4.EL functions
          a.如何使用el functions
          ${prefix:functionName(args0,...)}
          b.如何定義一個(gè)function
          定義function必須是一個(gè)public static方法,且類(lèi)的訪問(wèn)修飾符也是public
          package willim;
          public class MyFunction{
          ?public static boolean equals(String str1, String str2) {
          ???return str1.equals(str2);
          ?}
          }
          c.配置descriptor
          <function>
          ??<name>equals</name>
          ??<function-class>willim.MyFunction</function-class>
          ??<function-signature>boolean equals(java.lang.String, java.lang.String)</function-signature>
          </function>

          posted @ 2006-12-31 11:19 willlim 閱讀(1578) | 評(píng)論 (0)編輯 收藏

          2006年12月28日 #

          易保面試題

               摘要: eBaoTech? Test 一 筆試 全英文(答案僅代表本人意見(jiàn),本人做了丑陋的翻譯。希望自己認(rèn)真思考。) 以...  閱讀全文

          posted @ 2006-12-28 16:14 willlim 閱讀(7544) | 評(píng)論 (5)編輯 收藏

          2006年12月25日 #

          SERVLET學(xué)習(xí)筆記(一)

          打算這個(gè)星期把SERVLET和JSP復(fù)習(xí)下,我認(rèn)為基礎(chǔ)對(duì)一個(gè)人很重要,所以會(huì)經(jīng)常回過(guò)頭來(lái)看看.
          1.HTTP協(xié)議
          每個(gè)做web應(yīng)用都應(yīng)該熟悉HTTP協(xié)議吧,如果不熟悉大家找些資料去學(xué)學(xué).
          GET: 參數(shù)直接作為一個(gè)query string放到URL后面?zhèn)鬟f的.可以是text
          POST:參數(shù)是作為封裝一個(gè)請(qǐng)求信息體里的.可以是text和binary
          servlet里有多個(gè)方法用來(lái)對(duì)應(yīng)處理http協(xié)議的請(qǐng)求方法
          doGet() : link,和直接在瀏覽器中輸入U(xiǎn)RL
          doPost():? 通過(guò)form表單顯示聲明method="post",否則默認(rèn)為get
          doDelete(): 針對(duì)要?jiǎng)h除服務(wù)器的某些資源的請(qǐng)求
          doTrace(): 調(diào)試服務(wù)器連接的http方式
          doOptions() : The OPTIONS request determines which HTTP methods the server supports and returns an appropriate header. For example, if a servlet overrides doGet, this method returns the following header:
          Allow: GET, HEAD, TRACE, OPTIONS
          doPut() : 針對(duì)要向服務(wù)器放入新的文件的請(qǐng)求
          doHead(): 針對(duì)只要response的Header信息的請(qǐng)求

          當(dāng)client來(lái)一個(gè)請(qǐng)求時(shí),doService(HttpServletRequest request, HttpServletResponse response) throws ServletException ,IOException接受這個(gè),并選擇相應(yīng)的請(qǐng)求選擇相應(yīng)的方法進(jìn)行處理

          2.HttpServletResquest介紹
          常用的方法:String getParameter(String name)
          Enumeration getParameterNames()
          String[] getParameterValues(String name)
          String?? getHeader(String name)
          int getIntHeader(String name)
          long getDateHeader(String name)
          Enumeration getHeaderNames()
          String[] getHeaderValus(String name)
          Cookies[] getCookies()

          3.HttpServletResponse介紹
          void setContentType(String type)
          setHeader(String name, String value)
          setIntHeader(String name, int value)
          setDateHeader(String name, long value)
          addHeader(String name, String name)
          addIntHeader(String name, int value)
          addDateHeader(String name ,long value)
          boolean containsHeader(String name)

          PrintWriter getWriter()? //返回字符流
          OutputStream getOutputStream()? //返回字節(jié)流

          void sendRedirect(String URL) //重定向到某個(gè)頁(yè)面

          void sendError(int sc) //發(fā)生錯(cuò)誤向客戶(hù)端發(fā)送狀態(tài)碼
          void sendError(int sc, String message)

          void addCookie(Cookie cookie) //增加一個(gè)cookie

          Cookie(String name, String value) //? cookie的構(gòu)造方法

          4.SERVLET的生命周期
          servlet loading? ---> servlet instantiation ---> call init() ---> call doService handle request ---> call destroy()

          public void init(ServletConfig config) throws ServletException
          如果override這個(gè)方法必須先調(diào)用super.init(config)

          public void init() throws ServletException

          public void service() throws ServletException, IOException

          public void destroy() throws ServletException

          posted @ 2006-12-25 22:30 willlim 閱讀(439) | 評(píng)論 (0)編輯 收藏

          2006年12月20日 #

          我的blog開(kāi)通啦!!!!! 大家多來(lái)逛逛

          今天一大喜事當(dāng)然就是我終于成立我自己的blog啦! 而且是一個(gè)java技術(shù)blog,很興奮ing, 歡迎大家來(lái)吐口水,以后我會(huì)在這里多吐口水的.


          沒(méi)怎么寫(xiě)過(guò)blog, 但是看到好多人都有自己的blog,心里癢癢的,應(yīng)該把自己的思想,自己學(xué)的新知識(shí)給大家分享應(yīng)該是一種享受也......?


          圣誕快到了, 祝賀大家圣誕快樂(lè)!!!!!!

          posted @ 2006-12-20 21:13 willlim 閱讀(241) | 評(píng)論 (0)編輯 收藏

          僅列出標(biāo)題  
          主站蜘蛛池模板: 长葛市| 清镇市| 博兴县| 长白| 丹棱县| 正蓝旗| 绵竹市| 毕节市| 城固县| 张家口市| 望奎县| 金湖县| 望江县| 仙居县| 韶关市| 霍林郭勒市| 许昌县| 韶山市| 新建县| 莫力| 韶关市| 河西区| 通城县| 木里| 阳谷县| 贺兰县| 南汇区| 五指山市| 阿尔山市| 永城市| 泾川县| 洪洞县| 定远县| 小金县| 邮箱| 巩留县| 石林| 丁青县| 托里县| 聂拉木县| 北京市|