锘??xml version="1.0" encoding="utf-8" standalone="yes"?> <!-- maxElementsInMemory="10"鍐呭瓨涓殑鏈澶ч〉闈㈠璞?br />
eternal="false" <cache name="show" 紺轟緥錛歵his.getHibernateTemplate().find(”from bean.User”); 榪斿洖鎵鏈塙ser瀵硅薄 浜屻乫ind(String queryString , Object value); 紺轟緥錛歵his.getHibernateTemplate().find(”from bean.User u where
u.name=?”, “test”); 鎴栨ā緋婃煡璇細this.getHibernateTemplate().find(”from bean.User u where
u.name like ?”, “%test%”); 榪斿洖name灞炴у間負test鐨勫璞★紙妯$硦鏌ヨ錛岃繑鍥瀗ame灞炴у煎寘鍚玹est鐨勫璞★級 涓夈乫ind(String queryString, Object[] values); 紺轟緥錛歋tring hql= “from bean.User u where u.name=? and
u.password=?” this.getHibernateTemplate().find(hql, new
String[]{”test”, “123″}); 榪斿洖鐢ㄦ埛鍚嶄負test騫朵笖瀵嗙爜涓?23鐨勬墍鏈塙ser瀵硅薄 錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛?/p>
鍥涖乫indByExample(Object exampleEntity) 紺轟緥錛?/p>
User u=new User(); u.setPassword(”123″);//蹇呴』
絎﹀悎鐨勬潯浠朵絾鏄繖涓や釜鏉′歡鏃跺茍鍒楃殑錛堣薄褰撲簬sql涓殑and錛?nbsp; u.setName(”bb”);
list=this.getHibernateTemplate().findByExample(u,start,max); 榪斿洖錛氱敤鎴峰悕涓篵b瀵嗙爜涓?23鐨勫璞?/p>
浜斻乫indByExample(Object exampleEntity, int firstResult, int
maxResults) 紺轟緥錛?/p>
User u=new User(); u.setPassword(”123″);//蹇呴』
絎﹀悎鐨勬潯浠朵絾鏄繖涓や釜鏉′歡鏃跺茍鍒楃殑錛堣薄褰撲簬sql涓殑and錛?nbsp; u.setName(”bb”);
list=this.getHibernateTemplate().findByExample(u,start,max); 榪斿洖錛氭弧瓚崇敤鎴峰悕涓篵b瀵嗙爜涓?23錛岃嚜start璧峰叡max涓猆ser瀵硅薄銆傦紙瀵硅薄浠?寮濮嬭鏁幫級 鈥斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺?/p>
鍏乫indByNamedParam(String queryString , String paramName , Object
value) 浣跨敤浠ヤ笅璇彞鏌ヨ錛?nbsp; String queryString = “select count(*) from bean.User u where
u.name=:myName”; String paramName= “myName”; String value= “xiyue”; this.getHibernateTemplate().findByNamedParam(queryString, paramName,
value); System.out.println(list.get(0)); 榪斿洖name涓簒iyue鐨刄ser瀵硅薄鐨勬潯鏁?/p>
涓冦乫indByNamedParam(String queryString , String[] paramName , Object[]
value) 紺轟緥錛?/p>
String queryString = “select count(*) from bean.User u where
u.name=:myName and u.password=:myPassword”; String[] paramName= new String[]{”myName”, “myPassword”}; String[] value= new String[]{”xiyue”, “123″}; this.getHibernateTemplate().findByNamedParam(queryString, paramName,
value); 榪斿洖鐢ㄦ埛鍚嶄負xiyue瀵嗙爜涓?23鐨刄ser瀵硅薄 鍏乫indByNamedQuery(String queryName) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryAllUser”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryAllUser”); 涔濄乫indByNamedQuery(String queryName, Object value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByName”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name = ? ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryByName”, “test”); 鍗併乫indByNamedQuery(String queryName, Object[] value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =? and
u.password =? ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 String[] values= new String[]{”test”, “123″}; this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”
, values); 鍗佷竴銆乫indByNamedQueryAndNamedParam(String queryName, String paramName,
Object value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByName”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryByName” ,
“myName”, “test”); 鍗佷簩銆乫indByNamedQueryAndNamedParam(String queryName, String[]
paramName, Object[] value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName
and u.password=:myPassword ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 String[] names= new String[]{”myName”, “myPassword”}; String[] values= new String[]{”test”, “123″}; this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”
, names, values); 鍗佷笁銆乫indByValueBean(String queryString , Object value); 紺轟緥錛?/p>
1銆佸畾涔変竴涓猇alueBean錛屽睘鎬у悕蹇呴』鍜孒SQL璇彞涓殑錛氬悗闈㈢殑鍙橀噺鍚嶅悓鍚嶏紝姝ゅ蹇呴』鑷沖皯鏈変袱涓睘鎬э紝鍒嗗埆涓簃yName鍜?
myPassword錛屼嬌鐢╯etter鏂規硶璁劇疆灞炴у煎悗 ValueBean valueBean= new ValueBean(); valueBean.setMyName(”test”); valueBean.setMyPasswrod(”123″); 2銆?/p>
String queryString= “from bean.User u where u.name=:myName
and u.password=:myPassword”; this.getHibernateTemplate().findByValueBean(queryString ,
valueBean); 鍗佸洓銆乫indByNamedQueryAndValueBean(String queryName , Object value); 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName
and u.password=:myPassword ]]> </query> </hibernate-mapping>
2銆佸畾涔変竴涓猇alueBean錛屽睘鎬у悕蹇呴』鍜孶ser.hbm.xml鍛藉悕鏌ヨ璇彞涓殑錛氬悗闈㈢殑鍙橀噺鍚嶅悓鍚嶏紝姝ゅ蹇呴』鑷沖皯鏈変袱涓睘鎬э紝鍒嗗埆涓?
myName鍜宮yPassword錛屼嬌鐢╯etter鏂規硶璁劇疆灞炴у煎悗 ValueBean valueBean= new ValueBean(); valueBean.setMyName(”test”); valueBean.setMyPasswrod(”123″); 3銆?/p>
String queryString= “from bean.User u where u.name=:myName
and u.password=:myPassword”;
this.getHibernateTemplate().findByNamedQueryAndValueBean(”queryByNameAndPassword”,
valueBean); 紺轟緥錛歵his.getHibernateTemplate().find(”from bean.User”); 榪斿洖鎵鏈塙ser瀵硅薄 浜屻乫ind(String queryString , Object value); 紺轟緥錛歵his.getHibernateTemplate().find(”from bean.User u where
u.name=?”, “test”); 鎴栨ā緋婃煡璇細this.getHibernateTemplate().find(”from bean.User u where
u.name like ?”, “%test%”); 榪斿洖name灞炴у間負test鐨勫璞★紙妯$硦鏌ヨ錛岃繑鍥瀗ame灞炴у煎寘鍚玹est鐨勫璞★級 涓夈乫ind(String queryString, Object[] values); 紺轟緥錛歋tring hql= “from bean.User u where u.name=? and
u.password=?” this.getHibernateTemplate().find(hql, new
String[]{”test”, “123″}); 榪斿洖鐢ㄦ埛鍚嶄負test騫朵笖瀵嗙爜涓?23鐨勬墍鏈塙ser瀵硅薄 錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛?/p>
鍥涖乫indByExample(Object exampleEntity) 紺轟緥錛?/p>
User u=new User(); u.setPassword(”123″);//蹇呴』
絎﹀悎鐨勬潯浠朵絾鏄繖涓や釜鏉′歡鏃跺茍鍒楃殑錛堣薄褰撲簬sql涓殑and錛?nbsp; u.setName(”bb”);
list=this.getHibernateTemplate().findByExample(u,start,max); 榪斿洖錛氱敤鎴峰悕涓篵b瀵嗙爜涓?23鐨勫璞?/p>
浜斻乫indByExample(Object exampleEntity, int firstResult, int
maxResults) 紺轟緥錛?/p>
User u=new User(); u.setPassword(”123″);//蹇呴』
絎﹀悎鐨勬潯浠朵絾鏄繖涓や釜鏉′歡鏃跺茍鍒楃殑錛堣薄褰撲簬sql涓殑and錛?nbsp; u.setName(”bb”);
list=this.getHibernateTemplate().findByExample(u,start,max); 榪斿洖錛氭弧瓚崇敤鎴峰悕涓篵b瀵嗙爜涓?23錛岃嚜start璧峰叡max涓猆ser瀵硅薄銆傦紙瀵硅薄浠?寮濮嬭鏁幫級 鈥斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺?/p>
鍏乫indByNamedParam(String queryString , String paramName , Object
value) 浣跨敤浠ヤ笅璇彞鏌ヨ錛?nbsp; String queryString = “select count(*) from bean.User u where
u.name=:myName”; String paramName= “myName”; String value= “xiyue”; this.getHibernateTemplate().findByNamedParam(queryString, paramName,
value); System.out.println(list.get(0)); 榪斿洖name涓簒iyue鐨刄ser瀵硅薄鐨勬潯鏁?/p>
涓冦乫indByNamedParam(String queryString , String[] paramName , Object[]
value) 紺轟緥錛?/p>
String queryString = “select count(*) from bean.User u where
u.name=:myName and u.password=:myPassword”; String[] paramName= new String[]{”myName”, “myPassword”}; String[] value= new String[]{”xiyue”, “123″}; this.getHibernateTemplate().findByNamedParam(queryString, paramName,
value); 榪斿洖鐢ㄦ埛鍚嶄負xiyue瀵嗙爜涓?23鐨刄ser瀵硅薄 鍏乫indByNamedQuery(String queryName) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryAllUser”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryAllUser”); 涔濄乫indByNamedQuery(String queryName, Object value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByName”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name = ? ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryByName”, “test”); 鍗併乫indByNamedQuery(String queryName, Object[] value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =? and
u.password =? ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 String[] values= new String[]{”test”, “123″}; this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”
, values); 鍗佷竴銆乫indByNamedQueryAndNamedParam(String queryName, String paramName,
Object value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByName”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 this.getHibernateTemplate().findByNamedQuery(”queryByName” ,
“myName”, “test”); 鍗佷簩銆乫indByNamedQueryAndNamedParam(String queryName, String[]
paramName, Object[] value) 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName
and u.password=:myPassword ]]> </query> </hibernate-mapping> 2銆佸涓嬩嬌鐢ㄦ煡璇細 String[] names= new String[]{”myName”, “myPassword”}; String[] values= new String[]{”test”, “123″}; this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”
, names, values); 鍗佷笁銆乫indByValueBean(String queryString , Object value); 紺轟緥錛?/p>
1銆佸畾涔変竴涓猇alueBean錛屽睘鎬у悕蹇呴』鍜孒SQL璇彞涓殑錛氬悗闈㈢殑鍙橀噺鍚嶅悓鍚嶏紝姝ゅ蹇呴』鑷沖皯鏈変袱涓睘鎬э紝鍒嗗埆涓簃yName鍜?
myPassword錛屼嬌鐢╯etter鏂規硶璁劇疆灞炴у煎悗 ValueBean valueBean= new ValueBean(); valueBean.setMyName(”test”); valueBean.setMyPasswrod(”123″); 2銆?/p>
String queryString= “from bean.User u where u.name=:myName
and u.password=:myPassword”; this.getHibernateTemplate().findByValueBean(queryString ,
valueBean); 鍗佸洓銆乫indByNamedQueryAndValueBean(String queryName , Object value); 紺轟緥錛?/p>
1銆侀鍏堥渶瑕佸湪User.hbm.xml涓畾涔夊懡鍚嶆煡璇?/p>
<hibernate-mapping> <class>……</class> <query
name=”queryByNameAndPassword”><!–姝ゆ煡璇㈣璋冪敤鐨勫悕瀛?#8211;> <![CDATA[ from bean.User u where u.name =:myName
and u.password=:myPassword ]]> </query> </hibernate-mapping>
2銆佸畾涔変竴涓猇alueBean錛屽睘鎬у悕蹇呴』鍜孶ser.hbm.xml鍛藉悕鏌ヨ璇彞涓殑錛氬悗闈㈢殑鍙橀噺鍚嶅悓鍚嶏紝姝ゅ蹇呴』鑷沖皯鏈変袱涓睘鎬э紝鍒嗗埆涓?
myName鍜宮yPassword錛屼嬌鐢╯etter鏂規硶璁劇疆灞炴у煎悗 ValueBean valueBean= new ValueBean(); valueBean.setMyName(”test”); valueBean.setMyPasswrod(”123″); 3銆?/p>
String queryString= “from bean.User u where u.name=:myName
and u.password=:myPassword”;
this.getHibernateTemplate().findByNamedQueryAndValueBean(”queryByNameAndPassword”,
valueBean);
棣栧厛緗戜笂鏌ヤ簡涓嬶紝ehcache鍜宱scache錛屼笂鐩稿簲鐨勫畼緗戞煡鐪嬶紝鍙戠幇oscache鍒?7騫翠互鍚庡氨娌℃洿鏂拌繃錛屼笉鐭ラ亾鏄敼鍚嶅瓧浜嗭紝榪樻槸鍏跺畠鍘熷洜錛屾渶鍚庨噰鐢ㄤ簡ehcache鍋氶〉闈㈢紦瀛?br />
閰嶇疆鍙互鍙傝冨畼鏂歸〉闈細http://ehcache.org/documentation/web_caching.html
web閲岄潰閰嶇疆濡備笅錛?br />
<filter>
<filter-name>CachePage1CachingFilter</filter-name>
<filter-class>net.sf.ehcache.constructs.web.filter.SimplePageCachingFilter
</filter-class>
<init-param>
<param-name>suppressStackTraces</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>cacheName</param-name>
<param-value>CachePage1CachingFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>SimplePageFragmentCachingFilter</filter-name>
<filter-class>net.sf.ehcache.constructs.web.filter.SimplePageFragmentCachingFilter
</filter-class>
<init-param>
<param-name>suppressStackTraces</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>cacheName</param-name>
<param-value>SimplePageFragmentCachingFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>SimpleCachingHeadersPageCachingFilter</filter-name>
<filter-class>net.sf.ehcache.constructs.web.filter.SimpleCachingHeadersPageCachingFilter
</filter-class>
<init-param>
<param-name>suppressStackTraces</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>cacheName</param-name>
<param-value>CachedPage2Cache</param-value>
</init-param>
</filter>
<!-- This is a filter chain. They are executed in the order below.
Do not change the order. -->
<filter-mapping>
<filter-name>CachePage1CachingFilter</filter-name>
<url-pattern>/CachedPage.jsp</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>SimplePageFragmentCachingFilter</filter-name>
<url-pattern>/include/Footer.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>SimplePageFragmentCachingFilter</filter-name>
<url-pattern>/fragment/CachedFragment.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>SimpleCachingHeadersPageCachingFilter</filter-name>
<url-pattern>/CachedPage2.jsp</url-pattern>
</filter-mapping>
<Ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../main/config/ehcache.xsd">
<diskStore path="java.io.tmpdir"/>
<defaultCache
maxElementsInMemory="10"
eternal="false"
timeToIdleSeconds="5"
timeToLiveSeconds="10"
overflowToDisk="true"
/>
<!-- Page and Page Fragment Caches -->
<cache name="CachePage1CachingFilter"
maxElementsInMemory="10"
eternal="false"
timeToIdleSeconds="10000"
timeToLiveSeconds="10000"
overflowToDisk="true">
</cache>
<cache name="CachedPage2Cache"
maxElementsInMemory="10"
eternal="false"
timeToLiveSeconds="3600"
overflowToDisk="true">
</cache>
<cache name="SimplePageFragmentCachingFilter"
maxElementsInMemory="10"
eternal="false"
timeToIdleSeconds="10000"
timeToLiveSeconds="10000"
overflowToDisk="true">
</cache>
<cache name="SimpleCachingHeadersTimeoutPageCachingFilter"
maxElementsInMemory="10"
eternal="false"
timeToIdleSeconds="10000"
timeToLiveSeconds="10000"
overflowToDisk="true">
</cache>
</ehcache>
鐜板湪鐨勯棶棰樻槸鏈変簺欏甸潰瑕佹洿鏂幫紝鍦ㄥ唴瀛樻垨鑰呯‖鐩樹笂鐨勬暟鎹渶瑕佹洿鏂幫紝鑰屼笖鏄疄鏃剁殑銆傚簲璇ユ庝箞鍔烇紝緗戜笂澶氱殑涔熸槸瀵硅薄鐨勬搷浣滐紝鍩烘湰娌℃湁緙撳瓨欏甸潰鐨勬搷浣溿?br />
棣栧厛璇翠笅緙撳瓨欏甸潰鐨勫ぇ姒傛柟娉曘?br />
ehcache.xml閲岄潰瀵瑰簲web.xml錛宯ame閮戒竴鏍風殑錛屾瘮濡備竴涓叿浣撹礬寰勶紝show.action?showId=1,閰嶇疆濡備笅錛?br />
<filter-mapping>
<filter-name>show</filter-name>
<url-pattern>/show.action</url-pattern>
</filter-mapping>
鍙栧墠闈㈢殑閮ㄥ垎灝卞彲浠ヤ簡銆傚搴攅hcache.xml閰嶇疆錛?br />
timeToIdleSeconds="120" timeToIdleSeconds 錛屽闀挎椂闂翠笉璁塊棶璇ョ紦瀛橈紝閭d箞ehcache 灝變細娓呴櫎璇ョ紦瀛樸?nbsp;
timeToLiveSeconds="240" timeToLiveSeconds 錛岀紦瀛樼殑瀛樻椿鏃墮棿錛屼粠寮濮嬪垱寤虹殑鏃墮棿綆楄搗銆?br />
overflowToDisk="true" 鏄惁鍐欏叆紜洏
-->
<!-- Page and Page Fragment Caches -->
maxElementsInMemory="10"
eternal="false"
timeToIdleSeconds="30"
timeToLiveSeconds="60"
overflowToDisk="true">
</cache>
榪欓噷鍙湁涓涓猚ache,鍦╡hcache鍗沖搴斾竴涓狤hcache瀵硅薄,鐢盋acheManager錛堝崟渚嬫ā寮忓疄鐜幫級鍘葷鐞嗭紝鍦–acheManager閲岀敤閰嶇疆鏂囦歡涓殑name鍙互鑾峰彇Ehcache瀵硅薄鐨勫疄渚嬨?br />
浠g爜濡備笅:
Ehcache cache = CacheManager.getInstance().getEhcache(cacheName);
灞曠ず欏甸潰鏈夊緢澶氾紝姣斿涓涓晢瀹朵竴涓睍紺洪〉闈紝鍗硈how.action?showId=1鍚庨潰鐨勬暟瀛楁槸鍙彉鐨勶紝鍦╡hcache閲岄潰鏄敤map鍘誨瓨鍌ㄧ殑錛屾瘮濡俿how.action?showId=1瀵瑰簲鐨刱ey涓猴細
GET/show.actionshowId=1
GET涓鴻闂柟寮忥紝鎶婇棶鍙峰幓鎺変簡錛宔hcache鍐呴儴涔熸槸榪欐牱瀛樺偍鐨勶紙綾諱技map錛夛紝榪欐牱淇濊瘉浜嗚姹傜殑欏甸潰鍦ㄥ唴瀛樹腑鐨勫敮涓鎬э紝鑾峰彇涔熷揩銆?br />
鏃㈢劧key閮界煡閬撲簡錛屽垹闄ゅ氨濂戒簡錛岀洿鎺?鏌ョ湅api鏂囨。Ehcache閲屾湁寰堝remove鏂規硶銆傜ず渚嬩唬鐮佸涓嬶細
Ehcache cache = CacheManager.getInstance().getEhcache(cacheName);
if (null == cache) {
return;
}
cache.remove(key);
key鐨勮幏鍙栧氨涓嶇敤澶氳浜嗗惂錛屽綋鏇存柊涓涓〉闈㈢殑鏁版嵁鏃訛紝鑲畾鐭ラ亾鏁版嵁鐨刬d錛岀洿鎺ュ瓧絎︿覆澶勭悊涓嬪氨鍙互鑾峰彇key浜嗭紝榪欓噷娉ㄦ剰涓嬪氨鏄紝浠g爜緙栧啓鏃訛紝涓鑸瑄rl閲岄兘鏈夐」鐩殑鍚嶅瓧錛屾寮忓彂甯冩椂錛岃偗瀹氭病鏈夛紝鑰屽墠鑰呭湪ehcache閲岀敓鎴恔ey閲屾湁欏圭洰鐨勫悕瀛楋紝鍗籌細
GET/projetName/show.actionshowId=1
鎵浠ユ渶濂界敤spring娉ㄥ叆鍊鹼紝鍒版椂鏀逛篃鏂逛究銆?br />
鏇磋緇嗙殑錛岃鏌ョ湅api鏂囨。鍜屾祴璇曚笅錛屽畼鏂規枃妗g粰鐨勯兘鏄璞$殑錛岄〉闈㈢紦瀛樼殑緇欑殑姣旇緝灝戯紝鎴戜篃鏄煡鐪嬫簮鐮佹墠寰楀嚭涓婇潰浠g爜銆?br />
璁頒竴涓嬶紝甯屾湜甯姪鏈夐渶姹傜殑浜恒?br />
]]>
]]>
<filter-name>struts-prepare</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class>
</filter>
<filter>
<filter-name>struts-execute</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class>
</filter>
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts-prepare</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts-execute</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
]]>
<s:param name="name">
<s:property value="name" /> ///榪欓噷浼氭彁浜TF-8緙栫爜
</s:param>
</s:url>
璁板緱浠ュ墠濂藉儚鍐欒繃錛屼笉榪囦笉鐭ラ亾鏀懼摢閲岋紝浠婂ぉ鐢╯truts2.1.8+spring+hibernate鍋氬紑鍙戞椂錛屽張閬囧埌榪欎釜闂錛屽啓鍑烘潵鍚э紝涓嬫濂芥壘錛?br />
欏甸潰緙栫爜璁劇疆鎴怳TF-8錛屽浣曟彁浜ょ殑涓枃涓?#8221;闈掍簯灞?#8220;,鎻愪氦鍒癮ction閲屽彉鎴愪簡錛?img alt="" src="http://www.tkk7.com/images/blogjava_net/asdtiang/ffff.jpg" /> 38738鍏跺疄灝辨槸UTF-8緙栫爜錛岃嚜宸卞啓浜嗕竴涓被榪涜杞寲涓涓氨琛屼簡銆?br />
private static MyConverter myConverter;
private StringBuffer str;
private char[] ch;
private MyConverter() {
}
public static MyConverter getMyConverter() {
if (myConverter == null) {
myConverter = new MyConverter();
}
return myConverter;
}
public String converter(String str3) {
if(str3==null){
return "";
}
str=new StringBuffer();
str.append("");
ch=str3.toCharArray();
for (int i = 0; i < ch.length; i++) {
if(ch[i]=='&'){
if(ch[i+1]=='#')
{
str.append(Character.toChars(Integer.parseInt(new String(ch,i+2,5))));
i+=7;
}
else{
str.append(ch[i]);
}
}
else{
str.append(ch[i]);
}
}
return str.toString();
}
}
浣跨敤鏃訛紝鍦╝ction涓紝鍙兘鏈変腑鏂囨彁浜ょ殑鍦版柟杞寲涓涓嬪氨琛屼簡銆?br />
MyConverter my = MyConverter.getMyConverter();
this.userName = my.converter(this.userName);
]]>
]]>涓銆乫ind(String queryString);
]]>
嫻嬭瘯浜嗕笅錛?nbsp; MyEclipse Enterprise Workbench 8.0.0.me200911192202-7a7Z-AEAjd9xel_OmPWSXgPz00jf涓嶈兘瀹夎錛?br />
spring ,struts,hibernate,閮借兘瀹夎
MyEclipse Standalone Modules 涓嬮潰鐨勯兘鑳藉畨瑁?br />
涓嶈繃鏈濂介夎嚜宸遍渶瑕佺殑鎻掍歡灝辮浜嗭紝澶氫簡涔熸病鐢ㄣ?br />
3銆?鏁村悎FLEX3銆?涔熸槸鍙互鐨勩?br />
鎴偣鍥懼惂錛?br />
]]>
ServletContextListener 鏄?ServletContext 鐨勭洃鍚咃紝濡傛灉 ServletContext 鍙戠敓鍙樺寲錛屽鏈嶅姟鍣ㄥ惎鍔ㄦ椂 ServletContext 琚垱寤猴紝鏈嶅姟鍣ㄥ叧闂椂 ServletContext 灝嗚琚攢姣併?
鍦↗SP鏂囦歡涓紝application 鏄?ServletContext 鐨勫疄渚嬶紝鐢盝SP瀹瑰櫒榛樿鍒涘緩銆係ervlet 涓皟鐢? getServletContext()鏂規硶寰楀埌 ServletContext 鐨勫疄渚嬨?
鎴戜滑浣跨敤緙撳瓨鐨勬濊礬澶ф鏄細
鏈嶅姟鍣ㄥ惎鍔ㄦ椂錛孲ervletContextListener 鐨? contextInitialized()鏂規硶琚皟鐢紝鎵浠ュ湪閲岄潰鍒涘緩濂界紦瀛樸傚彲浠ヤ粠鏂囦歡涓垨鑰呬粠鏁版嵁搴撲腑璇誨彇鍙栫紦瀛樺唴瀹圭敓鎴愮被錛岀敤 ervletContext.setAttribute()鏂規硶灝嗙紦瀛樼被淇濆瓨鍦?ServletContext 鐨勫疄渚嬩腑銆?
紼嬪簭浣跨敤 ServletContext.getAttribute()璇誨彇緙撳瓨銆傚鏋滄槸 JSP錛屼嬌鐢╝ pplication.getAttribute()銆傚鏋滄槸 Servlet錛屼嬌鐢? getServletContext().getAttribute()銆傚鏋滅紦瀛樺彂鐢熷彉鍖?濡傝闂鏁?錛屼綘鍙互鍚屾椂鏇存敼緙撳瓨鍜屾枃浠?鏁版嵁搴撱傛垨鑰呬綘絳? 鍙樺寲縐瘡鍒頒竴瀹氱▼搴忓啀淇濆瓨錛屼篃鍙互鍦ㄤ笅涓姝ヤ繚瀛樸?
鏈嶅姟鍣ㄥ皢瑕佸叧闂椂錛孲ervletContextListener 鐨? contextDestroyed()鏂規硶琚皟鐢紝鎵浠ュ湪閲岄潰淇濆瓨緙撳瓨鐨勬洿鏀廣傚皢鏇存敼鍚庣殑緙撳瓨淇濆瓨鍥炴枃浠舵垨鑰呮暟鎹簱錛屾洿鏂板師鏉ョ殑鍐呭銆?
鍦⊿truts涓紝鎴戜滑鍙互鍐欎竴涓猄ervlet璁╁畠緇ф壙浜嶢ctionServlet騫惰 鐩栧叾init()鏂規硶錛岀劧鍚庝慨鏀箇eb.xml鏂囦歡鐨凷truts鍚姩鐩稿叧閰嶇疆鏉ヨ揪鍒扮洰鐨勩?nbsp;
閭d箞錛屽湪Struts2涓垜 浠簲璇ユ庝箞鍋氬憿錛?nbsp;
鍦?span class="hilite1">Struts2涓紝鎴戜滑鍙互鍐欎竴涓猣ilter璁╁畠緇ф壙浜嶧ilterDispatcher騫惰鐩栧叾 init()鏂規硶錛岀劧鍚庝慨鏀箇eb.xml鏂囦歡鐨?span class="hilite1">Struts2鍚姩鐩稿叧閰嶇疆鏉ヨ揪鍒扮洰鐨勩?/span>
涓嶇鏄疭truts銆?span class="hilite1">Struts2榪樻槸鍏朵粬鐨剋eb灞傛鏋訛紝瀹冧滑鐩墠鍩轟簬鐨勬妧鏈兘鏄? Servlet錛屽彧瑕佹牴鎹畐eb.xml鎵懼埌閭d釜鍚姩綾伙紝鎴戜滑灝辮兘閫氳繃瑕嗙洊璇ョ被鐨勭殑init()鏂規硶鏉ュ疄鐜扮郴緇熺殑鍒濆鍖栧伐浣溿?/p>
浠ヤ笂鐨勫疄鐜版柟寮忛兘渚靛叆浜嗘鏋剁殑鍘熺敓綾伙紝鍒╃敤Servlet 瀹瑰櫒鐨勭壒鎬ф垜浠彲浠ユ洿浼橀泤鐨勫疄鐜扮郴緇熺殑鍒濆鍖栧伐浣溿?/span> 鎴戜滑鍙互鍐欎竴涓猯istener璁╁畠瀹炵幇ServletContextListener鎺? 鍙o紝鍦╟ontextInitialized()鏂規硶涓仛鎯沖仛鐨勪簨鎯呫傚皢姝istener閰嶇疆鍒皐eb.xml涓紝Servlet瀹瑰櫒濡倀omcat浼? 鍦ㄥ惎鍔ㄨweb搴旂敤紼嬪簭鏃惰皟鐢ㄦ鏂規硶銆?/span>