开一家网站建设公司有前景吗找项目网站

web/2025/10/5 11:10:35/文章来源:
开一家网站建设公司有前景吗,找项目网站,没有下载功能的视频怎么下载,太仓智能网站开发今天#xff0c;我不得不准备一些示例来说明Web服务是可互操作的。 因此#xff0c;我已经使用Metro使用Java创建了一个简单的Web服务#xff0c;并在Tomcat上启动了它。 然后尝试使用Python和Ruby消耗它们。 这是全部完成的过程… Java中的Web服务 我从Java中的简单Web服… 今天我不得不准备一些示例来说明Web服务是可互操作的。 因此我已经使用Metro使用Java创建了一个简单的Web服务并在Tomcat上启动了它。 然后尝试使用Python和Ruby消耗它们。 这是全部完成的过程… Java中的Web服务 我从Java中的简单Web服务开始 package com.wordpress.jdevel.ws;import java.io.File; import java.io.FileFilter; import java.io.FilenameFilter; import java.util.ArrayList; import java.util.List; import javax.jws.WebService; import javax.jws.WebMethod; import javax.jws.WebParam;WebService(serviceName Music) public class Music {private static final File FOLDER new File(D:/TEMP/SONGS);WebMethod(operationName listSongs)public Song[] listSongs(WebParam(name artist) String artist) {ListSong songs new ArrayListSong();System.out.println(ARTIST: artist);if (artist ! null) {File folder new File(FOLDER, artist);if (folder.exists() folder.isDirectory()) {File[] listFiles folder.listFiles(new FilenameFilter() {public boolean accept(File dir, String name) {return name.toUpperCase().endsWith(.MP3);}});for (File file : listFiles) {String fileName file.getName();String author file.getParentFile().getName();int size (int) (file.length() / 1048576); //MegabytesSong song new Song(fileName, author, size);songs.add(song);}}}return songs.toArray(new Song[songs.size()]);}WebMethod(operationName listArtists)public String[] listArtists() {File[] folders getFolders(FOLDER);ListString artists new ArrayListString(folders.length);for (File folder : folders) {artists.add(folder.getName());}return artists.toArray(new String[artists.size()]);}private File[] getFolders(File parent) {FileFilter filter new FileFilter() {public boolean accept(File pathname) {return pathname.isDirectory();}};File[] folders parent.listFiles(filter);return folders;}public static void main(String[] args) {Music listFiles new Music();String[] artists listFiles.listArtists();System.out.println(Artists: artists);for (String artist : artists) {Song[] listSongs listFiles.listSongs(artist);for (Song song : listSongs) {System.out.println(song.getArtist() : song.getFileName() : song.getSize() MB);}}} } 还需要一个简单的bean来获取一些更复杂的类型 package com.wordpress.jdevel.ws;import java.io.Serializable;public class Song implements Serializable {String fileName;String artist;int size;public Song() {}public Song(String fileName, String artist, int size) {this.fileName fileName;this.artist artist;this.size size;}public String getArtist() {return artist;}public void setArtist(String artist) {this.artist artist;}public String getFileName() {return fileName;}public void setFileName(String fileName) {this.fileName fileName;}public int getSize() {return size;}public void setSize(int size) {this.size size;} } 它只是在硬编码的FOLDER目录中列出所有子目录并将其视为音乐收藏中的艺术家列表。 然后您可以执行listSongs方法并在artist子文件夹中获取mp3文件的列表。 要使其成为Web服务您要做的就是使用WebServiceserviceName “ Music”注释类并且要公开为Web服务操作的每个方法都必须使用WebMethodoperationName “ listArtists”进行标记。 如果您要在GlassFish上部署它那么应该就这些了但是我已经使用了Tomcat因此还需要3个步骤 1.将Metro 2.0罐子添加到WEB-INF / lib 2.将Metro Servlet和侦听器添加到web.xml listenerlistener-classcom.sun.xml.ws.transport.http.servlet.WSServletContextListener/listener-class /listener servletservlet-nameMusic/servlet-nameservlet-classcom.sun.xml.ws.transport.http.servlet.WSServlet/servlet-classload-on-startup1/load-on-startup /servlet servlet-mappingservlet-nameMusic/servlet-nameurl-pattern/Music/url-pattern /servlet-mapping 您可能不应在此处进行任何更改。 只需将其粘贴到web-app节点中的web.xml中即可。 3.使用端点声明将sun-jaxws.xml文件添加到WEB-INF ?xml version1.0 encodingUTF-8? endpoints version2.0 xmlnshttp://java.sun.com/xml/ns/jax-ws/ri/runtimeendpoint implementationcom.wordpress.jdevel.ws.Music nameMusic url-pattern/Music/ /endpoints 实现必须匹配您的WebService类 名称必须与WebService批注中的serviceName匹配 url-pattern必须与您在servlet映射中声明的url-pattern匹配 如果在NetBeans中创建XML文件则也无需编辑这些XML文件。 现在启动Tomcat并部署您的应用程序。 您应该可以通过以下方式访问服务 http// localhost8080 / WSServer /音乐 看到这样的事情 可以通过以下方式访问WSDL http// localhost8080 / WSServer / Musicwsdl 复杂类型的架构 http// localhost8080 / WSServer / Musicxsd 1 如果您能正常工作则可以从以下客户端开始。 Python客户端 我已经开始搜寻一些不错的python网络服务库并找到了Suds。 我还没有真正使用过这样的东西。 实施WS客户大约花了15分钟。 支持复杂类型的课程而上一次我使用Python编写大于5行的代码大约是3年前了。 您真的必须尝试一下。 所以这是代码 import sudsclass Client:def __init__(self):self.client suds.client.Client(http://localhost:8080/WSServer/Music?wsdl)def get_artists(self):return self.client.service.listArtists()def get_songs(self, artist):return self.client.service.listSongs(artist)if(__name__ __main__):client Client()artists client.get_artists()for artist in artists:print artistsongs client.get_songs(artist)for song in songs:print \t%s : %s : %d%s % (song.fileName, song.artist, song.size, MB) 而已。 简单明了。 解析WSDL后动态生成复杂类型。 美丽的东西。 对于我来说要实现这样的事情有点困难。 Ruby客户端 使用SOAP4R库。 只需执行 宝石安装soap4r 要获得它真的很喜欢这个工具。首先让我们从代码开始 require soap/rpc/driver require soap/wsdlDriverclass Clientdef initializefactory SOAP::WSDLDriverFactory.new(http://localhost:8080/WSServer/Music?wsdl)driver factory.create_rpc_driverenddef get_songs(artist)songs driver.listSongs(:artist artist)return songsenddef get_artistsartists driver.listArtists(nil)return artistsend enddef print_songs(songs)if songsend endclient Client.new artists client.get_artists artists[return].each{|artist|puts artistsongs client.get_songs(artist)[return];songs.each {|song| puts \t%s : %s : %d%s % [song.fileName, song.artist, song.size, MB]} } 它的功能完全相同。 调用Web服务以获取艺术家列表然后为每个艺术家调用mp3文件。 然后只需将所有内容打印到控制台即可。 我花了相当长的时间才能开始工作。 首先–很难找到任何文档。 其次– SOAP4R在没有一点黑客的情况下不能与ruby 1.9一起工作 http://railsforum.com/viewtopic.php?id41231 下一步–当您不使用WSDL创建驱动程序对象时结果会稍微好一些但是随后您必须确切地知道要拥有哪些服务并想要执行。 在这个简单的示例中这不是问题但是如果您需要使其更通用一些就会遇到麻烦。 我说“好一点”是什么意思 一代码 driver SOAP::RPC::Driver.new(http://localhost:8080/WSServer/Music, http://ws.jdevel.wordpress.com/); driver.add_method(ARTISTS_METHOD) driver.add_method(SONGS_METHOD, artist) 这样我负责为要使用的服务声明端点和名称空间。 我还需要声明我将要使用的所有操作以及参数“作者”。 有什么不同 当我不使用WSDL时SOAP4R库会从调用服务中提供更好的返回类型。 我可以简单地省略[“ return”]并得到类似使用Python的信息。 我需要在Ruby中知道的是每种复杂类型的外观如何从而使我的实现对Web服务更改更加敏感。 如何知道应该使用哪个键来获取复杂类型的数据 检查WSDL并查找您要调用的操作 operation namelistArtistsinput wsam:Actionhttp://ws.jdevel.wordpress.com/Music/listArtistsRequest messagetns:listArtists/output wsam:Actionhttp://ws.jdevel.wordpress.com/Music/listArtistsResponse messagetns:listArtistsResponse/ /operation 接下来在xsd中找到输出复杂类型 xs:complexType namelistArtistsResponsexs:sequencexs:element namereturn typexs:string nillabletrue minOccurs0 maxOccursunbounded//xs:sequence /xs:complexType 您需要的是name属性的值。 无论如何这两种实现看起来都非常不错而且更重要的是它们可以正常工作。 Ruby和Python都有不错的Web服务库可以处理复杂类型和WSDL解析。 参考我们的JCG合作伙伴在“ Development world story”博客上 提供了RubyPython和Java的Web服务 。 相关文章 带有Spring和Maven教程的JAX–WS 用Jackson进行Java JSON处理 Spring3 RESTful Web服务 jqGridRESTAJAX和Spring MVC集成 翻译自: https://www.javacodegeeks.com/2011/08/web-services-ruby-python-java.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/87329.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wordpress 基础seo建站东莞在哪里学网站建设

我有个朋友之前在唯品会开的店,现在想转战其他平台,想要店铺信息商品信息全部迁移过去,如果想要人工手动操作就有点麻烦了,然后有天找到我 ,让我看看能不能通过技术手段实现商品信息迁移。嫌来无事,写了下面…

四川微信网站建设推品牌建设归哪个部门管

文章目录 [toc]1. GW1NSR-4C串口外设简介2. FPGA配置3. 常用函数4. 轮询方式接收数据5. 中断方式接收数据 本文是高云FPGA系列教程的第8篇文章。 本篇文章介绍片上ARM Cortex-M3硬核处理器串口外设的使用,演示轮询方式和中断方式接收串口数据,并进行回环…

网站安全设计网站开发前端需要学什么

时代漫画07.PDF: https://url03.ctfile.com/f/1779803-1247458105-0a2c41?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了,截止1937年6月战争来临被迫停刊共发行了39期。 ps:资源来源网络!

搭建三合一网站手机网站的内容模块

点击蓝字关注我们C11 中增加了许多的新特性。在本文中,我们来聊一下 lambda 表达式,闭包,std::function以及std::bind。lambda 表达式C11 中新增了 lambda 表达式这一语言特性。lambda 表达式可以让我们快速和便捷的创建一个 “函数”。下面是…

中国国家城乡建设部网站直接用源码做网站盗版吗

写程序员简历时,可以从以下几个方面入手: 1. 个人信息:在简历的开头,包含个人基本信息如姓名、联系方式、地址等。 2. 求职目标/职业目标:明确自己希望得到的职位或行业,并简要描述为什么适合该职位。 3…

济宁梵盛科技网站建设西安做网站的公司

目录 构建生态系统 将Arm架构小芯片带给大众 关于Arm Total Design的结语 我们最近报道了Arm的Neoverse CSS Genesis N2平台的发布,这是一个近乎现成的计算子系统设计,旨在加快尖端基础设施中定制加速器的上市时间。我们当时评论说,我们可…

房产网站关键词优化实验建设网站 南京林业大学

论文基于training-aware NAS和模型缩放得到EfficientNetV2系列,性能远优于目前的模型。另外,为了进一步提升训练速度,论文提出progressive learning训练方法,在训练过程中同时增加输入图片尺寸和正则化强度。从实验结果来看&#…

昆明网站制作服务商wordpress如何设置外网访问

这周没有上课,阅读了《代码大全》第六章模块化设计 内聚性和耦合性 模块化设计的目标是使每个子程序都成为一个“黑盒子”,你知道进入盒子和从盒子里出来 的是什么,却不知道里边发生什么。它的接口非常简单,功能明确,对…

做婚介打么网站好佛山商城网站制作

声明:文章仅用于交流学习,不用于商业项目实施,图片来源于网络,如有侵犯权利,请联系作者及时删除。 本方案旨在对电力电容(PEC和PQM型号)制造工艺深度分析,结合管理要求设计MOM相关功…

娄底北京网站建设建网站引流做淘宝

采集卡默认加载“1 X Full Camera Link”固件,Base模式首先要将固件更新为“2 X Base Camera Link”。 右键SCI图标,选择“打开文件所在的位置”,找到并打开SciDalsaConfig的Demo,如上图所示: 左键单击“获取相机”&a…

电子商务运营网站网店美工的定义

当谈到 Java 网络编程时,经常会听到两个重要的概念:BIO(Blocking I/O,阻塞 I/O)和 NIO(Non-blocking I/O,非阻塞 I/O)。它们都是 Java 中用于处理 I/O 操作的不同编程模型。 一、介…

公司网站建设服务机构广州教育网站建设

const uint8_t usFlashInitVal[] __attribute__((at(0x08002800))) {0x55,0x55,0x55,0x55,0x55};//定位在flash中,0x00030000开始的6个字节信息固定 注意7801的地址在8000000之后 如地址选0x00000800烧录时候报错 不知道是不是atclinktool的bug,使用_…

网站建设设计基础温州营销推广公司

不要做一个清醒的堕落者文章目录 可变参数模板的简介什么是可变参数 模板参数包参数包数据的获取(函数递归获取)参数包的获取(逗号表达式获取) 可变参数的应用emplace 可变参数模板的简介 c11添加的新特性能够让你创建可以接受改变的函数模板和类模板,C98/03&#…

建设网站市场细分修复wordpress

基于浣熊优化的BP神经网络(分类应用) - 附代码 文章目录 基于浣熊优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.浣熊优化BP神经网络3.1 BP神经网络参数设置3.2 浣熊算法应用 4.测试结果:5.M…

商丘专业做网站西安微信公众号制作

前端的问题不是难,而是它面对最终用户。只要用户的喜好和口味发生变化,前端就必须跟上。 这导致前端不得不快速变化,因为用户的口味正在越来越快地改变。 后端不需要面对最终用户,需要解决的都是一些经典的计算机科学问题&#…

个人建站什么网站好廊坊建站服务

系列文章目录 前言 我们介绍了 Crocoddyl(Contact RObot COntrol by Differential DYnamic Library),这是一个专为高效多触点优化控制(multi-contact optimal control)而定制的开源框架。Crocoddyl 可高效计算给定预定…

外贸营销网站怎么建设什么是网站和网页

CHM Viewer Star 是一款适用于 Mac 平台的 CHM 文件阅读器软件,支持本地和远程 CHM 文件的打开和查看。它提供了直观易用的界面设计,支持多种浏览模式,如书籍模式、缩略图模式和文本模式等,并提供了丰富的功能和工具,如…

深圳网站设计开发网站页面设计如何收费

当然可以,以下是一份较为详细的NLP学习路线指南,帮助你逐步掌握自然语言处理的核心技术和应用。 一、基础知识与技能 语言学基础: 语言学基本概念:语音、语法、语义等。语言的层次与分类:语音学、音系学、句法学、语…

2017网站开发工程师成都装修设计公司首选

阿波罗应该是近几年比较火的一个分布式配置中心了,说说我个人的理解,希望对一些人有用吧。 首先从使用者的角度想 我们怎么用配置中心的? 1.得有个页面,能有权限管理,能有创建配置key-value。 在阿波罗中&#xff…

产品展示网站源码php分享wordpress小程序源码

前言Windows搭建PHP开发环境很熟练了,要在自己的Mac搭建PHP开发环境还是第一次,因此分享给大家。Mac自带Apache、php,需要自己安装MySql。1.启动Apache// 启动Apache服务sudo apachectl start// 重启Apache服务sudo apachectl restart// 停止Apache服务s…