-
表單中有些樣式?jīng)]對齊,注意可以使用theme = 'simple'
查看全部 -
需要把頁面中的../換成${pageContext.request.contextPath}
查看全部 -
由于頁面的延遲加載,導(dǎo)致部門并沒有傳到頁面中,需要使用攔截器實(shí)現(xiàn)此功能。
查看全部 -
模型驅(qū)動接收數(shù)據(jù)?implements?ModelDriven<Employee?>??用getModel()接受參數(shù)
查看全部 -
級聯(lián)刪除,在action 中先查詢再刪除,然后再映射文件里,添加cascad="delete".
查看全部 -
添加部門的執(zhí)行方法,然后調(diào)用Service的save方法,在業(yè)務(wù)層添加實(shí)現(xiàn)方法,在業(yè)務(wù)層的實(shí)現(xiàn)類中實(shí)現(xiàn)save方法。在業(yè)務(wù)層里添加事物管理@Transactional,在業(yè)務(wù)層調(diào)用Dao 中save方法,dDao的實(shí)現(xiàn)類中實(shí)現(xiàn)save方法,使用Hibernate中的模板存入,返回的success 在struts.xml中配置下,重定向到一個Action
查看全部 -
分頁Bean ,設(shè)置當(dāng)前頁數(shù),每頁顯示記錄數(shù),總記錄數(shù),總頁數(shù)。
Math.ceil( )向上取整函數(shù)。
查看全部 -
刪除部門時級聯(lián)刪除員工:
1、刪除部門時,在刪除部門的方法里,先查詢,再刪除。
2、部門映射文件中,添加cascade="delete"屬性。
修改部門員,工里的部門沒有數(shù)據(jù)的原因。
1、因為雙方都配置了關(guān)聯(lián)關(guān)系,只要有一端修改都會影響另外一端,一般需要讓一方放棄外鍵維護(hù)全,需要在set里添加inverse=“true”,讓維護(hù)由一方來維護(hù)。
查看全部 -
知識點(diǎn)1:struts標(biāo)簽中盡量不使用敏感字符比如id。
知識點(diǎn)2:struts標(biāo)簽里不支持嵌套(例如:<s:textfield name="birthday" value="<s:date name="model.birthday" format="yyyy-MM-dd"/>"/>)
知識點(diǎn)3:struts密碼標(biāo)簽回顯屬性:showPassword="true"<s:password name="password" value="%{model.password}" showPassword="true"></s:password>
查看全部 -
查看全部
-
防止通過員工查詢部門的延遲加載:
1、在XML中添加攔截器(有先后順序,放在struts攔截器前)
<filter> ?
? ? <filter-name>OpenSessionInViewFilter</filter-name> ?
? ? <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> ?
? ??
</filter> ?
<filter-mapping> ?
? ? <filter-name>OpenSessionInViewFilter</filter-name> ?
? ? <url-pattern>/*</url-pattern> ?
</filter-mapping>
2、員工的映射文件中添加lazy=“false”
3、員工的映射文件中添加
fetch="join"
查看全部 -
用hibernate分頁可以使用DetachedCriteria類來簡化操作 DetachedCriteria類的實(shí)例化: DetachedCriteria criteria = DetachedCriteria。forClass(XXX.class); 獲取該頁的XXX集合 List<XXX> list=this.getHibernateTemolate().findByCriteria(criteria,begin,pageSize); //begin是當(dāng)前頁數(shù)的第一個數(shù)據(jù)在數(shù)據(jù)庫中的位置,pageSize每頁多少給數(shù)據(jù)。
在自定義的攔截器中存入值棧:得到值棧對象后調(diào)用ValueStack.put(Object?object)方法。 在Action類中存入值棧:得到值棧對象后調(diào)用ValueStack.put(Object?object)方法。 在JSP中存入值棧:標(biāo)簽<s:push?value="..."></s:push>是專門用來在JSP中把指定的value放入值棧的,但value被放入值棧的時間僅在s:push標(biāo)簽內(nèi),即程序運(yùn)行到</s:push>標(biāo)簽處會把value從值棧中移出。另外,還有一些標(biāo)簽比如<s:iterator/>由于其功能的需要也會把一些對象放到值棧中。 具體分析網(wǎng)址:https://www.jianshu.com/p/9c497ee8fd23
泛型詳解:https://www.cnblogs.com/jpfss/p/9928747.html
查看全部 -
修改部門
步驟1:信息回顯(請求一個action,并傳入該部門的id,查詢該部門并存入request域)
步驟2:保存信息,并返回查詢頁面(請求一個action,保存修改后的信息)
問題1:不添加@Transactional,也可以進(jìn)行保存操作。
知識2:非struts標(biāo)簽添加${pageContext.request.contextPath },struts標(biāo)簽添加%{pageContext.request.contextPath}相當(dāng)于項目虛擬路徑,和request.getContextPath()作用相同,項目發(fā)布后src文件下的東西都會存儲在Webapp下的項目的WEB-INF下的classes下,通常是虛擬路徑加classes下的真是路徑。
知識3:Action中也可以把對象賦值給模型驅(qū)動的對象,通過getModel就可以把他返回,前端可以通過%{model.屬性名}獲取值。(模型驅(qū)動默認(rèn)會在值棧中)
查看全部 -
部門管理——Action、Service、Dao的創(chuàng)建及配置
1、分頁功能
2、部門的增、刪、改、查(所有和單個)
查看全部 -
用模型驅(qū)動的方法接受前臺傳入過來的參數(shù)。1。通過接口 ModelDriven<> 2. 實(shí)現(xiàn)接口里面的getModel() 方法; 3.創(chuàng)建employee對象。(getModel 就會把前面?zhèn)鬟^來的參數(shù)用戶名,密碼,封裝進(jìn) employee對象當(dāng)中,之后在login中就可以使用這個對象,這個對象也會一層一層的向下傳遞,到達(dá)dao層,)
查看全部 -
ssh實(shí)現(xiàn)篇-顯示數(shù)據(jù)庫其他表信息配置查看全部
-
ssh實(shí)現(xiàn)篇-頁數(shù)跳轉(zhuǎn)操作查看全部
舉報