>用ajax的方法
首先将要调用的类名和方法名作为参数传给某个servlet这一步的方法有许多种,用框架,或者直接用xml>原理很简单,但实现很复杂。
如果是代码补全的,一般是通过反射去获取类的一些信息,然后反馈给用户,用于自动填充。
如果是数据库中有的,有3种解决方案,对应2个不同的场景。
第一个场景:访问人数不多,项目不大,服务器资源空闲程度高。对应的方案,直接针对数据库进行关键字模糊搜索。简单粗暴,实现技术要求很低。优点开发难度低,架构简单,缺点匹配程度可能不满足当前需求
第二个场景:访问人数多,服务器资源利用率要求高。对应的方案,建立目录缓存(也可能是NOSQL数据库),对关键字在缓存(NOSQL数据库)进行模糊查找并建立更新机制,但不能全完做到实时同步。优点开发难度相对较高,架构难度一般,缺点用户体验可能不好。
最后一种解决方案,建立大数据平台,使用搜索引擎进行搜索,搭配机器学习提高准确率。优点就是相对其他的基本没有缺点。
一般的浏览器中是无法通过js调用本地java程序的,但是可以调用嵌入到网页的applet的方法。交互方式如下:
<applet codebase = "" width = "400" height = "400"name= "MyApplet" code = "testappletsMyApplet1class">
<script>
// js访问applet属性:documentappletNameappletField (属性必须是public的)
// js访问Applet方法:documentappletNameappletMethod (方法必须是public的)
function showLable{
// 调用testappletsMyApplet1类的invokeByJS方法
documentapplets["MyApplet"]invokeByJS('myvalue');
}
</script>你好,javascript中还真可以插入java代码,有两种情况
1、在写jsp代码里,可以直接在写javascript中插入jsp代码,这个很好理解
2、另一种情况是,客户端的javascript想调用java代码,你知道html里可以嵌套java的applet吧,这样你就明白了,javascript可以调用applet里的java方法
有问题留下QQ,我可以把代码发给你
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)