知识大全 AJAX的拼音首字母查找对应中文的portlet

Posted 拼音

篇首语:路漫漫其修远兮,吾将上下而求索。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 AJAX的拼音首字母查找对应中文的portlet相关的知识,希望对你有一定的参考价值。

AJAX的拼音首字母查找对应中文的portlet  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    在现实生活中 我们需要一些系统提供输入拼音首字母 返回与其对应中文的功能 这样可以提高人机交互性以及提高系统的友好性     结合之前所做的portlet技术 还有AJAX 让我们在web应用这块来说说这个不是太复杂的应用吧     对于我们的汉字与拼音对应词库生成需要如下资源     首先要一个该系统所属的中文词库    一份汉字与拼音的对照表    接下来我们会用这个中文词库去匹配汉字与拼音对照表之中的数据 找出与各个词语对应的拼音来 然后在这个文件中文词语后面生成其对应的汉语拼音声母首字母序列     首先我们需要用汉字拼音对照表生成体统中文词库对应的 拼音列表 之后我们需要将这个拼音系统词库列表存储到内存之中 考虑到效率等综合因素 我们选取了TreeMap这个类 它以其优秀的内部结构使得containsKey() get() put() 和 remove()等操作能够保持其时间复杂度在对数级上 即logN 为了能够保持拼音对应汉字的能够随着字母的增减而对应显示 我们选用了TreeMap中的SubMap()方法 其返回值是一个SortedMap对象 这下面的代码使我从之前的OOo应用中取出的 大家改改就可以用了

  

   // XActionListener                    public void textChanged(TextEvent rEvent)                            Object searchTextBox = xControlContainer                                          getControl(searchText);                                XTextComponent yText = (XTextComponent) UnoRuntime queryInterface(                                       XTextComponent class  searchTextBox);                         searchString = yText getText();                         searchString = searchString toLowerCase();                         logger debug( searchString is   + searchString);                         Object resultComboBoxModel = xControlContainer                                        getControl(resultComboBox);                              XComboBox xComboBox = (XComboBox) UnoRuntime queryInterface(                                       XComboBox class  resultComboBoxModel);                              Object label = xControlContainer getControl( Label );                         XFixedText xLabel = (XFixedText) UnoRuntime queryInterface(                                       XFixedText class  label);                         char shiftChar = searchString charAt(searchString length()    );                         shiftChar++;                         String tempString = searchString substring(                                       searchString length()    );                         tempString = tempString + shiftChar;                         if (searchString length() ==  )                                tempString =   + shiftChar;                         logger debug( tempString is   + tempString);                         SortedMap showMap = (SortedMap) chineseMedicalTermWithPropertyHash                                        subMap(searchString  tempString);                              // xLabel setText(chineseMedicalTermWithPropertyHash size()+                         // check );                              xComboBox removeItems((short)   (short)  );                         short j =  ;                         Iterator it = showMap entrySet(erator();                         while (it hasNext())                                 Map Entry me = (Map Entry) it next();                                Object ov = me getValue();                                xComboBox addItem(ov toString()  j);                                j++;                                             

  最重要的在这里

  SortedMap showMap = (SortedMap) chineseMedicalTermWithPropertyHash

   subMap(searchString tempString);

  是从TreeMap实例中取出在length 到length的所有关键字组成的一个SortedMap实例 它的特性是

  A map that further guarantees that it will be in ascending key order sorted according to the natural ordering of its keys (see the Comparable interface) or by a parator provided at sorted map creation time This order is reflected when iterating over the sorted map s collection views (returned by the entrySetkeySet and values methods) Several additional operations are provided to take advantage of the ordering (This interface is the map analogue of the SortedSet interface )

  而对于AJAX部分来讲更是简单 我们知道AJAX与一般的web应用区别就是在它使用了Javascript的一个对象XMLHttpResponse/XMLHttpRequest 从而达到了异步的传输效果 提高了人机交互性 在本例中 我们没有使用什么AJAX的框架 而是直接使用了在标签中最基本的javascript函数的方式来实现 从而达到了异步响应的功能 其中解决了一个问题 现在说说 那就是如果单单要实现AJAX传输数据 不能够使用session来传输 这样的效果总是会慢一拍 为什么会这样呢?请大家想想 过段时间答复 )

  至于portlet 只要满足JSR 的就行了 难度不是太大 只要把doView()方法覆蓋了 就没有大问题了的 大家可以试试

  本文依据《创作共用约定》之 署名 禁止派生 非商业用途 方式发布 即你可以免费拷贝 分发 呈现和表演当前作品 但是必须基于以下条款

  署名 你必须明确标明作者的名字

  非商业用途 你不可将当前作品用于商业目的

  禁止派生 你不可更改 转变或者基于此作品重新构造为新作品

  对于任何二次使用或分发 你必须让其他人明确当前作品的授权条款

cha138/Article/program/Web/201311/29851

相关参考

知识大全 以“f,c,w,l”四个拼音首字母开头组成的成语有哪些

以“f,c,w,l”四个拼音首字母开头组成的成语有哪些?(有没有?)飞刍挽粟【拼音】:fēichúwǎnsù【解释】:飞:形容极快;刍:饲料;挽:拉车或船;粟:小米,泛指粮食。指迅速运送粮草。【出处】

知识大全 一道英语首字母填空题,急

一道英语首字母填空题,急!dead急!求一篇新店开张演讲稿。。。。各位领导、同志们:大家好!今天,镇党委、政府在这里隆重举行××公司开业仪式,我们备受鼓舞。在此,我代表××县通达航运公司的全体工作人员

知识大全 福建各地区对应的车牌照字母

福建各地区对应的车牌照字母!闽A福州,闽B莆田,闽C泉州,闽D厦门,闽E漳州,闽F龙岩,闽G三明,闽H南平,闽J宁德,闽K省直机关闽O是省公安厅的车军警车辆是白牌武警开头是WJ13陆军的福建牌是南M开

知识大全 php批量获取首字母(汉字、数字、英文)

  php批量获取首字母(汉字数字英文)  $mysql_server_name=;//改成自己的mysql数据库服务器  $mysql_username=用户;//改成自己的mysql数据库用户名 

知识大全 谁帮我做这道首字母填空

谁帮我做这道首字母填空?急!最好再翻译一下!everywhere,nests,strong,make,fly求一个英文名!最好是动漫中美少女的~~~·急ShirleyFete夏莉·菲内特出自Lelou

知识大全 用java实现输入ASCII码,打印出对应的大写字母。

用java实现输入ASCII码,打印出对应的大写字母。  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 英语的一道首字母填空 请各位好心人尽快回答,在周日前哦。谢谢啦

英语的一道首字母填空请各位好心人尽快回答,在周日前哦。谢谢啦不用等到周日了,现在给你讲答案拉…drovespedhelpcrossingwords一道首字母填空。。快。。在线等谢谢啦。through通

知识大全 罗马音和汉语拼音区别要全的

罗马音和汉语拼音区别要全的罗马拼音是日语拼音日语的平假名和片假名的字元都有一个单独的罗马拼音发音不像汉语拼音是由几个发音的字母拼出来的不同汉字有可能有同样的汉语拼音每个罗马拼音对应一个平假名和一个片假

知识大全 怎样教拼音字母

怎样教拼音字母汉语拼音是一种抽象的表音符号,学生学起来会觉得枯燥无味,这对于刚入学的一年级学生来说,是比较难学的,因而,学生不喜欢上汉语拼音课。一年级的学生好说、好动、好玩,注意力易分散,而汉语拼音又

知识大全 ajax中如何解决中文乱码

  在action中加入responsesetContentType(text/;charset=GBK);来设置编码格式就可以了  因为  使用ajax在发出请求后xml组件在解析返回数据的编码时是