国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Dwr3.0純注解(純Java Code配置)配置與應用淺析一之零配置文件化

Dwr3.0純注解(純Java Code配置)配置與應用淺析一之零配置文件化

2020-04-21 11:35源-代碼 JAVA教程

Dwr對我來說最重要的功能點就是反向Ajax調用,通俗來將就是后端可以直接調用前端的JS方法(只要在所能訪問的范圍內),這也就是Dwr的真正來由,當然它也有最基本的前端直接調用后端的特性,省去了我們經常的一般Ajax調用

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//Annotation configuration dwr servletprivate void initializeDwrServlet(ServletContext container)
{DwrServlet dwrServlet = new DwrServlet();
ServletRegistration.Dynamic dynamic = container.addServlet("dwr-invoker", dwrServlet    );
dynamic.setLoadOnStartup(2);
dynamic.setInitParameter("debug", "true");
dynamic.setInitParameter("pollAndCometEnabled", "true");
dynamic.setInitParameter("activeReverseAjaxEnabled", "true");
dynamic.setInitParameter("maxWaitAfterWrite", "1800000");
dynamic.setInitParameter("disconnectedTime", "60000");
dynamic.setInitParameter("classes", dwrAnnotationClasssConfiguration());
dynamic.addMapping("/dwr/*");}
// Configure Dwr Annotation Classes,comma separatedprivate String dwrAnnotationClasssConfiguration() {
StringBuffer config = new StringBuffer();
config.append("com.g360.bean.reconsole.opcost.AnnualOpCostRequestController");
config.append(",");config.append("com.g360.bean.security.SessionExpiredParam");
return config.toString();}

上面我的配置是基于注解版的Dwr Servlet配置(將web.xml里面的servlet配置轉換為了純Java代碼配置),當然也包括前端和后端直接交互的類(

com.g360.bean.reconsole.opcost.AnnualOpCostRequestController,com.g360.bean.security.SessionExpiredParam

)也是使用注解配置的(Dwr注解配置,包括@RemoteProxy,@RemoteMethod),這對于有些注解配置基礎的同學來說可能比較容易看懂,對于初次接觸的有什么不懂的可以給我留言哦;

com.g360.bean.security.SessionExpiredParam的注解配置如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
@Component("sessionExpiredParam")
@RemoteProxy(creator = SpringCreator.class, scope = ScriptScope.APPLICATION, name = "remote", creatorParams = @Param(name = "beanName", value = "sessionExpiredParam"))
 public class SessionExpiredParam{
private static final Logger LOGGER = LoggerFactory.getLogger(SessionExpiredParam.class);
public boolean isSessionExpire (String sessionId) {
return null == ConstantCacheService.getCacheConstant(sessionId); }
 @RemoteMethod public void setEnableDwrUpdate(String sessionId) {
  ScriptSession scriptSession = WebContextFactory.get().getScriptSession();
 String jsessionId = scriptSession.getHttpSessionId();
String dwrSessionId = scriptSession.getId();
LOGGER.info(String.format("set jsessionId = [%s],dwrsession = [%s] push enabled",jsessionId,dwrSessionId));
ConstantCacheService.putCacheConstant(Constants.PUSH_ID+jsessionId, dwrSessionId);
} }

這就是相當于dwr.xml配置文件中如下所示:

?
1
2
3
4
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd"><dwr>
<allow> <create creator="new" javascript="remote" scope="application"
 <param name="class" value="com.g360.bean.security.SessionExpiredParam"/>
 </create> </allow></dwr>

對于com.g360.bean.reconsole.opcost.AnnualOpCostRequestController來說道理一樣,這里就不多做說明了;

對于使用DwrServlet來說要使用純注解配置(不使用dwr.xml)一定要注意在初始化參數時一定要配置 classes這個參數,而且這個參數是這個注解類的全路徑名,有多個的話就使用逗號分隔,這個是特別重要的哦,因為Dwr3.0好像還不支持包掃描,不知道是需要什么配置才能實現還是怎么的,如果有哪位仁兄正好看見,也正好知道的話請留言麻煩告訴一下,感激不盡啊!歡迎大家有什么不明白的地方或者有什么不對的地方,請隨時留言;

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲国产综合在线 | 人人爱人人射 | 成人免费视频网站在线观看 | 欧美精品在线播放 | 欧美日韩日本国产 | 一区二区三区在线看 | 亚洲国内精品 | 免费一级黄色录像 | 国产专区在线 | 日日夜夜狠狠干 | 综合久久久 | 日韩欧美精品一区二区三区 | 中国黄色一级 | 99久久婷婷国产精品综合 | 欧美日韩高清 | 亚洲人成网站在e线播放 | 国产在线a | 日本不卡一区二区三区在线观看 | 精品久久久一区 | 精品国产成人 | 国产高清在线a视频大全 | 日本二区视频 | 久久人人爽爽爽人久久久 | 国产精品欧美久久久 | 日韩av在线免费 | 欧洲成人 | 久艹精品 | 在线免费观看色视频 | 国产精品久久综合 | 一二三四区视频在线观看 | 国产高清av在线播放 | 成人精品三级av在线看 | 亚洲精品一区二区三区蜜桃久 | 欧美一级免费高清 | 一区二区三区久久久久久 | 色99在线 | av网站观看| 国产黄色影视 | 求av网站 | 亚洲精选国产 | 黄色一级毛片网站 |