日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > htmlcss > struts2+spring+hibernate+dwr3實現下拉框二級聯動

struts2+spring+hibernate+dwr3實現下拉框二級聯動

來源:程序員人生   發布時間:2015-01-09 09:01:10 閱讀次數:2695次

3大框架如何整合我這就不說了,csdn里很多大神都有詳細整合博客。

由于是用spring管理了struts2和hibernate,所以我們只要把spring與dwr整合就好了。


首先我們需要dwr.jar我用的是最新的dwr3,之前測試過dwr2也是成功的。

先把我們的dwr.jar放到工程的lib目錄下,再在web.xml的同等級目錄下新建1個dwr.xml。

這是我的dwr.xml配置

<?xml version="1.0" encoding="UTF⑻"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd"> <dwr> <allow> <!-- List到頁面上,就是數組。Map到頁面上,就這樣去rtu["字段名稱"],如過從數據庫中查詢到的,記得字段名稱大寫 --> <convert converter="array" match="*"/> <convert converter="array" match="[[*"/> <convert converter="collection" match="java.util.Collection"/> <!-- 傳統的DWR --> <create javascript="CourseAction" creator="spring"> <param name="beanName" value="courseAction" /> </create> //你所需要用到的javabean <convert converter="bean" match="com.jxust.bean.Chapter"> </convert> <convert converter="bean" match="com.jxust.bean.Course"> </convert> <convert converter="bean" match="com.jxust.service.serviceImpl.VideoServiceImpl"> </convert> </allow> <signatures> <![CDATA[ import java.util.Map ; import java.util.List ; ]]> </signatures> </dwr>
接著再在web.xml里面加入這段代碼

<!-- dwr配置 --> <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class> org.directwebremoting.servlet.DwrServlet </servlet-class> <init-param> <param-name>config-dwr</param-name> <param-value>/WEB-INF/dwr.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>activeReverseAjaxEnabled</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name> initApplicationScopeCreatorsAtStartup </param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>maxWaitAfterWrite</param-name> <param-value>500</param-value> </init-param> <init-param> <param-name>allowGetForSafariButMakeForgeryEasier</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>crossDomainSessionSecurity</param-name> <param-value>false</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping>

這是用來配置dwr的。


接著在你所要引入的dwr的頁面上引入/dwr/util.js、/dwr/engine.js、和你要操作的java方法我這里用的是引入了action里面的方法/dwr/interface/CourseAction.js

<script type='text/javascript'src="<s:url value='/dwr/util.js'/>"></script> <script type='text/javascript' src="<s:url value='/dwr/engine.js'/>"></script> <script type='text/javascript' src="<s:url value='/dwr/interface/CourseAction.js'/>"></script>

我測試過好像dwr的兩個工具類不可以放在引入action方法后面,如有毛病請大神改正。

下面是我的頁面完全代碼

<%@ page language="java" import="java.util.*" pageEncoding="UTF⑻"%> <%@taglib prefix="s" uri="/struts-tags"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>videoUpload</title> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> <script type='text/javascript'src="<s:url value='/dwr/util.js'/>"></script> <script type='text/javascript' src="<s:url value='/dwr/engine.js'/>"></script> <script type='text/javascript' src="<s:url value='/dwr/interface/CourseAction.js'/>"></script> <script> function getList(){ var course=document.getElementById("course_title").value; CourseAction.getChapterList(course,getChapter_callback) } function getChapter_callback(data){ alert(data); var chapter=document.getElementById("course_chapter"); chapter.options.length=0; for(var i=0;i<data.length;i++) { var opt=document.createElement("option") opt.value=data[i].title; opt.innerText=data[i].title; //var opt=new option(data[i].title,data[i]); chapter.appendChild(opt); } } </script> </head> <body> <s:form name="videoForm" id="videoForm" action="courseAction_addVideo" method="post"> <table width="100%" border="0" cellpadding="1" cellspacing="1"> <tr bgcolor="#ccccff" > <td colspan="2" align="center"><strong>添加視頻</strong></td> </tr> <tr bgcolor="#ccccff" > <td width="18%">選擇課程</td> <td width="82%"><s:select onchange="getList();" name="course.name" id="course_title" list="#CourseList" headerKey="0" headerValue="-請選擇課程-" listKey="name" listValue="name" /></td> </tr> <tr bgcolor="#ccccff" > <td>選擇章節名稱:</td> <td><s:select name="chapter.title" id="course_chapter" list="#{}" listKey="title" /></td> </tr> <tr bgcolor="#ccccff" > <td>確認添加</td> <td><input type="button" id="button" value="確認添加"/></td> </tr> </table> </s:form> </body> </html>

索性把java代碼也貼出來


//dwr2級聯動 public Set<Chapter> getChapterList(String name)throws Exception{ System.out.println("asdfasd"); Course course=courseService.findBytitle(name); getChapterList=course.getCourseChapter(); return getChapterList; }

List 的getter、setter方法省略

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲男人的天堂在线 | 成人影院在线观看 | 玖玖玖精品 | 国产精品久久久久久久久久久新郎 | 99re国产精品 | 一区二区高清 | 999成人网 | a级毛片免费播放 | 欧美性猛交xxxx黑人交 | 久久香视频 | 久久精品中文字幕 | 99av精品国产极品嫩模 | 国产一区二区三区精品久久久 | 亚洲国产欧美在线 | 91视频国产一区 | 亚洲欧洲在线视频 | 亚洲欧美另类在线观看 | 在线观看视频免费播放 | 欧美精品xx | 成人免费ⅴa | 亚洲福利视频导航 | av另类 | 99久色| 国产精品乱 | aaaaaaaaa特黄少妇 | 69xxx免费| 男女免费观看在线爽爽爽视频 | 亚洲一区视频 | 蜜臀麻豆 | 午夜亚洲福利 | 日本福利在线观看 | 在线播放av网站 | 日本毛片在线观看 | av网站在线免费观看 | 久久精品视频偷拍 | 日韩视频在线观看 | 久久精品一区二区三区不卡牛牛 | 黄色片免费在线观看 | 亚洲日韩中文字幕一区 | 亚洲精彩视频在线 | 久久九九国产 |