Dwr3.0纯注解(纯Java Code配置)配置与应用浅析二之前端调用后端
首先当我们将Dwr3配置好以后,我们可以在浏览器中测试一下,查看一下我们配置的Dwr有没有生效,方法是
http://localhost:[你的服务器端口号,默认不写为80]/[ Web 名称 ]/dwr/,回车后就会出现你之前定义的Dwr的script的名称了,如下所显示这样:
当你点击第一个remote的时候会出现如下所示页面:
出现这样的页面就说明你的Dwr基本配置成功了,为什么说基本成功,因为这里面显示了你这个Service组件所有的方法,但是有一点就是,只有你注解了@RemoteMethod的方法你才有权限可以直接在页面上面访问,否则就会报错;
那么下来我们就可以真正使用页面去访问后台方法了,在此之前你必须在你的*.js文件所被包含的*.html文件中引入以下三个文件,如下所示:
<script type='text/javascript' src='Web Path/dwr/engine.js'> </script><script type='text/javascript' src='Web Path/dwr/util.js'> </script>
这以上是Dwr默认必须引用的,原理不做解释,下面要引用的一个就是你要调用的这个Service组件(Java中的类),相当于Js文件,也就是说Dwr将后端的这个Service类相当于直接转化为前端的js文件了,里面的方法就是相当于这个js文件里面的方法,只要引用进来就可以直接调用了,如下所示:
<script type='text/javascript' src='Web Path/dwr/interface/remote.js'> </script>
那么下来就可以在我们的js里面直接调用这个remote类里面的方法了,如下所示:
(function($){ remote.setEnableDwrUpdate();};
remote里面的setEnableDwrUpdate()就是上一篇的那个SessionExpiredParam类中setEnableDwrUpdate()方法;
至此前端调用后端的就OK了,下一篇是后端怎么反向调用前端,提前给大家剧透一下^_^;
相关推荐
-
Dwr3.0纯注解(纯Java Code配置)配置与应用浅析一之零配置文件化
//Annotation configuration dwr servletprivate void initializeDwrServlet(ServletContext container) {DwrServlet dwrServlet = new DwrServlet(); ServletRegistration.Dynamic dynamic = container.addServlet("dwr-invoker", dwrServlet ); dynamic.setLoadO
-
DWR中各种java方法的调用
DWR是一个框架,简单的说就是能够在javascript直接调用java方法,而不必去写一大堆的javascript代码.它的实现是基于ajax的,可以实现无刷新效果. 网上有不少DWR的例子,但大都只是某种方法的调用,本文只在使用层面上介绍DWR,并不涉更多的技术与设计,其目的是让初学者能够很快的学会各种java方法在javascript中是如何调用的. 一.dwr配置篇之web.xml 1.最小配 <servlet> <servlet-name>dwr-invoker</
-
在DWR中实现直接获取一个JAVA类的返回值的两种方法
第一种实现(来源网上转贴): js 代码 function Test() { var _data = ""; this.getString = function() { //设置成同步 DWREngine.setAsync(false); //调用Java类Test的getString方法,callBackFun为回调函数 JTest.getString(function(data){_data = data;} //重新设置为异步方式 DWREngine.setAsync(true)
-
Java多线程编程之读写锁ReadWriteLock用法实例
读写锁:分为读锁和写锁,多个读锁不互斥,读锁与写锁互斥,这是由jvm自己控制的,你只要上好相应的锁即可.如果你的代码只读数据,可以很多人同时读,但不能同时写,那就上读锁:如果你的代码修改数据,只能有一个人在写,且不能同时读取,那就上写锁.总之,读的时候上读锁,写的时候上写锁! 三个线程读数据,三个线程写数据示例: 可以同时读,读的时候不能写,不能同时写,写的时候不能读. 读的时候上读锁,读完解锁:写的时候上写锁,写完解锁. 注意finally解锁. package com.ljq.test.th
-
Java中BufferedReader与BufferedWriter类的使用示例
BufferedReader BufferedReader 是缓冲字符输入流.它继承于Reader. BufferedReader 的作用是为其他字符输入流添加一些缓冲功能. 创建BufferReader时,我们会通过它的构造函数指定某个Reader为参数.BufferReader会将该Reader中的数据分批读取,每次读取一部分到缓冲中:操作完缓冲中的这部分数据之后,再从Reader中读取下一部分的数据. 为什么需要缓冲呢?原因很简单,效率问题!缓冲中的数据实际上是保存在内存中,而原始数据可能
-
Java BufferedWriter BufferedReader 源码分析
一:BufferedWriter 1.类功能简介: BufferedWriter.缓存字符输出流.他的功能是为传入的底层字符输出流提供缓存功能.同样当使用底层字符输出流向目的地中写入字符或者字符数组时.每写入一次就要打开一次到目的地的连接.这样频繁的访问不断效率底下.也有可能会对存储介质造成一定的破坏.比如当我们向磁盘中不断的写入字节时.夸张一点.将一个非常大单位是G的字节数据写入到磁盘的指定文件中的.没写入一个字节就要打开一次到这个磁盘的通道.这个结果无疑是恐怖的.而当我们使用Buffered
-
Java并发编程之显示锁ReentrantLock和ReadWriteLock读写锁
在Java5.0之前,只有synchronized(内置锁)和volatile. Java5.0后引入了显示锁ReentrantLock. ReentrantLock概况 ReentrantLock是可重入的锁,它不同于内置锁, 它在每次使用都需要显示的加锁和解锁, 而且提供了更高级的特性:公平锁, 定时锁, 有条件锁, 可轮询锁, 可中断锁. 可以有效避免死锁的活跃性问题.ReentrantLock实现了 Lock接口: 复制代码 代码如下: public interface Lock {
-
Dwr3.0纯注解(纯Java Code配置)配置与应用浅析三之后端反向调用前端
在前两篇中我们已经介绍了Dwr零配置文化化和前端调用后端的方法,想必大家应该已经会熟练掌握了,下来我们主要探讨一下后端怎么反向调用前端的js方法: 就如前两篇说到了用Dwr注册了两个Service组件,一个是remote,另外一个是页面使用到的controller,这个remote是在页面一加载进来就会被调用的,这样就使得会话和页面ScriptSession建立了绑定的关系,方便我们后面使用它的scriptSessionId进行页面定向推送: 下面是建立会话和页面ScriptSession的方法
-
Dwr3.0纯注解(纯Java Code配置)配置与应用浅析二之前端调用后端
首先当我们将Dwr3配置好以后,我们可以在浏览器中测试一下,查看一下我们配置的Dwr有没有生效,方法是 http://localhost:[你的服务器端口号,默认不写为80]/[ Web 名称 ]/dwr/,回车后就会出现你之前定义的Dwr的script的名称了,如下所显示这样: 当你点击第一个remote的时候会出现如下所示页面: 出现这样的页面就说明你的Dwr基本配置成功了,为什么说基本成功,因为这里面显示了你这个Service组件所有的方法,但是有一点就是,只有你注解了@RemoteMet
-
详解Spring MVC4 纯注解配置教程
阅读本文需要又一定的sping基础,最起码要成功的运行过一个SpringMvc项目. 在传统的Spring项目中,我们要写一堆的XML文件.而这些XML文件格式要求又很严格,很不便于开发.而网上所谓的0配置,并不是纯粹的0配置,还是要写一些xml配置,只是用了几个@Service,@Controller注解而已. 在这里,我讲介绍一种新的配置方式,一行XML代码都不需要,什么web.xml,Application-context.xml,Beans.xml,统统去死吧! 首先建立一个Maven项
-
使用纯java config来配置spring mvc方式
目录 1.使用mavan新建一个webmvc项目 2.新建好了项目后 3.编辑pom.xml使用maven来引入项目依赖包 4.先来看看基本项目完成后的web.xml是什么样子的 5.先在src/java/main下新建一个config包 6.先编写第一个java cofing的配置类AppInitializer 7.AppInitializer类需要实现三个方法 8.RootConfig.class的内容如下 9.WebConfig的内容如下 10.WebConfig类需要继承WebMvcCo
-
纯注解版spring与mybatis的整合过程
今天给大家分享纯注解版spring与mybatis的整合 mybatis包下:有这几个,上面图片没有展开 配置Bean:MyBatisAutoConfiguration User UserDAO MybatisProperties MyBatisAutoConfiguration: package com.baizhiedu.mybatis; import com.alibaba.druid.pool.DruidDataSource; import org.mybatis.spring.SqlS
-
Spring纯注解开发模式让开发简化更简化
目录 一.注解开发 二.注解定义Bean 三.衍生注解 四.纯注解开发模式 五.注解实现注入 1.自动装配 2.按名称注入 3.简单数据注入 4.读取properties配置文件 六.Spring整合MyBatis 一.注解开发 以前跟老韩学习SE时他就说: 注解本质是一个继承了Annotation 的特殊接口,其具体实现类是Java 运行时生成的动态代理类. 而我们通过反射获取注解时,返回的是Java 运行时生成的动态代理对象$Proxy1.通过代理对象调用自定义注解(接口)的方法,会最终调用
-
Java Code Cache满导致应用性能降低问题解决
目录 0 问题描述 1 排查问题 2 解决问题 3 背景知识 3.1 JIT即时编译 3.2 Code Cache 3.3 分层编译 3.4 Code Cache 满了怎么办 3.5 Code Cache 调优 3.6 问题解决 3.7 运行时查看Code Cache 0 问题描述 一个应用在运行一段时间后,随着访问量不断增加,突然处理能力下降.但是从流量,jstack,gc上看基本正常.感觉好像突然从 "健康状态" 进入了 "虚弱状态". 1 排查问题 在JVM日
-
Spring学习笔记1之IOC详解尽量使用注解以及java代码
在实战中学习Spring,本系列的最终目的是完成一个实现用户注册登录功能的项目. 预想的基本流程如下: 1.用户网站注册,填写用户名.密码.email.手机号信息,后台存入数据库后返回ok.(学习IOC,mybatis,SpringMVC的基础知识,表单数据验证,文件上传等) 2.服务器异步发送邮件给注册用户.(学习消息队列) 3.用户登录.(学习缓存.Spring Security) 4.其他. 边学习边总结,不定时更新.项目环境为Intellij + Spring4. 一.准备工作. 1.m
-
Java Spring-Cache key配置注意事项介绍
为了提升项目的并发性能,考虑引入本地内存Cache,对:外部数据源访问.Restful API调用.可重用的复杂计算 等3种类型的函数处理结果进行缓存.目前采用的是spring Cache的@Cacheable注解方式,缓存具体实现选取的是Guava Cache. 具体缓存的配置此处不再介绍,重点对于key的配置进行说明: 1.基本形式 @Cacheable(value="cacheName", key"#id") public ResultDTO method(i
随机推荐
- 基于jquery的二级联动菜单实现代码
- java中对Redis的缓存进行操作的示例代码
- 微信公众帐号开发-自定义菜单的创建及菜单事件响应的实例
- JS 屏蔽键盘不可用与鼠标右键不可用的方法
- JS实现的N多简单无缝滚动代码(包含图文效果)
- 用SQL批量插入数据的存储过程
- asp获取远程网页的指定内容的实现代码
- Asp.net 在三层架构中事务的使用实例代码
- JavaScript 基础知识 被自己遗忘的
- 利用RJB在Ruby on Rails中使用Java代码的教程
- js 图片缩放(按比例)控制代码
- jQuery中的AjaxSubmit使用讲解
- js实现一个简单的数字时钟效果
- 收藏一些不常用,但是有用的代码
- js checkbox全选并将获取值放到input里边
- Bootstrap基本组件学习笔记之分页(12)
- Android中WebChromeClient和WebViewClient的区别浅析
- 浅谈Java模板引擎性能对比
- Asp.Net Mvc2 OA 工作流设计思路[图]
- C#开发微信门户及应用(4) 关注用户列表及详细信息管理