- Java开发或调用WebService的几种方式
小袁搬码
WebServicejava开发语言
Java开发或调用WebService的几种方式一.JDK自带的JAX-WS方式开发WebService服务1.服务端开发与发布编写接口@WebServicepublicinterfaceJaxWsDemo{StringhelloJaxWS(StringuserName);}编写接口的实现类@WebServicepublicclassJaxWsDemoImplimplementsJaxWsDemo
- 「Java开发指南」MyEclipse如何支持Spring Scaffolding?(一)
界面开发小八哥
javamyeclipsespringide开发工具
MyEclipsev2023.1.2离线版下载1.使用Spring的Scaffolding应用程序支持Spring的MyEclipse目标之一是帮助开发人员从零开始编写更少的代码,并更广泛地使用代码生成,MyEclipse提供了丰富的代码生成选项集。MyEclipse可以为SpringMVC、SpringWebFlow、SpringSecurity、REST、JAX-WS、AdobeFlex、Go
- @WebParam(name = “param“) 这个注解的作用
舒一笑
I6000系统成长记SpringBootJava注解的作用
@WebParam是JAX-WS(JavaAPIforXMLWebServices)中的一个注解,用于定义Web服务操作中参数的详细信息。这个注解主要用于Web服务方法的参数上,以提供有关如何映射和处理这些参数的额外信息。主要用途指定参数名称:在SOAP请求/响应中,@WebParam的name属性可以用来定义XML消息中参数的标签名。这在生成的WSDL(WebServicesDescriptio
- JRT实现原生Webservice发布
小乌鱼
java
之前准备试试Java发布Webservice,开始以为很简单,因为C#发布很简单。后面发现太费劲了,依赖一堆包,下面几种都试了一下:JAX-WS(JavaAPIforXMLWebServices):这是JavaEE平台的标准,用于创建和发布Web服务。JAX-WS提供了一种简单的方法来发布和调用Web服务,它基于SOAP协议。ApacheCXF:这是一个开源框架,用于构建和开发Web服务和REST
- dom4j xml转java对象_JAXB:xml与java对象互转
水禽系统开发
dom4jxml转java对象
JaxbContext生成xml文件或java类对象转化注解JAXB提供了一个快速便捷的方式将Java对象与XML进行转换。在JAX-WS(Java的WebService规范之一)中,JDK1.6自带的版本JAX-WS2.1,其底层支持就是JAXB。JAXB可以实现Java对象与XML的相互转换,在JAXB中,将一个Java对象转换为XML的过程称之为Marshal,将XML转换为Java对象的过
- Camel组件-Apache CXF
jackliu99999
ApacheCXF是一个开源的、全功能的WebService框架,它提供了一套工具和API来帮助开发和构建WebService,像JAX-WS和JAX-RS。它也支持许多WebService标准,例如:SOAPWS-AddressingWS-PolicyWS-ReliableMessagingWS-SecureConversationWS-SecurityWS-SecurityPolicy更多资料
- java jaxb 注解_JAXB注解
weixin_36438989
javajaxb注解
JAXB(JavaAPIforXMLBinding),它提供了一个便捷的方式高速Java对象XML转变。于JAX-WS(Java的WebService规范之中的一个)中,JDK1.6自带的版本号JAX-WS2.1。其底层支持就是JAXB。JAXB能够实现Java对象与XML的相互转换。在JAXB中,将一个Java对象转换为XML的过程称之为Marshal。将XML转换为Java对象的过程称之为Un
- xml java jaxb_【Java】JAXB操作XML用法详解
郭逗
xmljavajaxb
什么是JAXB?JAXB(JavaArchitectureforXMLBinding)是一个业界的标准,是一项可以根据XMLSchema产生Java类的技术。在JAX-WS(Java的WebService规范之一)中,JAXB可以实现对象和XML之间相互转换。Unmarshaller类管理将XML数据反序列化为新创建的Java内容树的进程,并可在解组时有选择的验证XML数据。Marshaller类
- 代码示例:基于JAX-WS和JAXB,其中http请求和响应的报文体都是xml数据
听海边涛声
httpxmlJAX-WSJAXB
说明基于JAX-WS编写了RESTful的web服务端点。http请求和响应的报文体都是xml数据,服务端分别对应了用JAXB注解的请求和响应类。只实现了服务端的代码示例客户端使用了Postman示例要实现的目标:http请求和响应报文体的xml数据http请求报文体的xml数据:01test0858032316http响应报文体的xml数据:151代码实现maven工程增加依赖maven工程的p
- JAXB的XmlElement注解
听海边涛声
java
依赖如果基于JAX-WS开发,可以在maven工程的pom.xml文件中增加如下依赖,会将依赖的JAXB库也下载下来:jakarta.xml.wsjakarta.xml.ws-api4.0.0com.sun.xml.wsjaxws-rt4.0.0如果只想使用JAXB库,可以在maven工程的pom.xml文件中增加如下依赖:jakarta.xml.bindjakarta.xml.bind-api4
- 「Java开发指南」如何在Spring中使用JAX-WS注释器?
界面开发小八哥
javaspring开发语言ide
本文将指导您如何使用JAX-WS注释器从Spring服务生成JAX-WSWeb服务,在本教程中,您将学习如何:为Spring服务启用JAX-WS部署应用程序并测试服务所有与Springscaffolding相关的任务都需要MyEclipseSpring或Bling授权。MyEclipsev2023.1.2离线版下载(Q技术交流:742336981)一、为Spring服务启用JAX-WSJAX-WS
- text/xml和application/xml
听海边涛声
xmlhttp媒体类型
困惑在http消息中,同样是传送xml信息,有的时候看到Content-Type的值是text/xml,有的时候值是application/xml,感到困惑。例如,用Postman发送http消息给Tomcat中的基于JAX-WS的web服务:请求中传送了xml内容,Content-Type是application/xml:响应中返回了xml内容,Content-Type是text/xml:解答今
- 基于JAX-WS的RESTful web服务返回通过JAXB注解生成的xml文档
听海边涛声
xmlJAX-WSRESTfulJAXB
基于JAX-WS编写的RESTfulweb服务,返回xml文档。这个xml文档可以基于JAXB注解的形式来生成,简化xml的生成。例如,下面RegisterResponse这个类使用了JAXB的注解:packagecom.thb.server.register;importjakarta.xml.bind.annotation.XmlElement;importjakarta.xml.bind.a
- 基于JAX-WS实现RESTful形式的web服务端点(endpoint)
听海边涛声
JAX-WSweb服务RESTful
RESTful形式的web服务使用XML/HTTP绑定,实现jakarta.xml.ws.Provider。服务端的实现类用jakarta.xml.ws.WebServiceProvider和BindingType(value=HTTPBinding.HTTP_BINDING)注释。其中HTTPBinding.HTTP_BINDING表示使用XML/HTTP绑定。例如:@WebServicePro
- webService之 jaxws
不准备改行
webServicewebService
简介:JAX-WS的全称为JavaAPIforXML-BasedWebservices,早期的基于SOAP的JAVA的Web服务规范JAX-RPC(JavaAPIForXML-RemoteProcedureCall)目前已经被JAX-WS规范取代。从java5开始支持JAX-WS2.0版本,Jdk1.6.0_13以后的版本支持2.1版本,jdk1.7支持2.2版本。需求:跟上一篇的一样,查询天气的
- 基于XML的Web服务Java接口(JAX-WS)、Jakarta XML Web Services Eclipse 实现
听海边涛声
java
简介JAX-WS(JavaAPIforXML-BasedWebServices),是创建web服务的Java编程接口,特别是SOAP服务。是JavaXML编程接口之一,是JavaSE和JavaEE平台的一部分。JAX-WS2.0规范是代替JAX-RPC1.0的下一代Web服务API。JAX-RPC(TheJavaAPIforXMLBasedRPC)是基于XML的RPC(远程过程调用)的JavaAP
- JaxWsProxyFactoryBean
郭优秀的笔记
1024程序员节
JaxWsProxyFactoryBean是ApacheCXF框架中的一个类,用于创建和配置JAX-WS客户端代理。它提供了一种简单的方式来创建和配置JAX-WS客户端,以便与远程的Web服务进行通信。使用JaxWsProxyFactoryBean,您可以通过以下步骤创建和配置JAX-WS客户端:1.创建JaxWsProxyFactoryBean对象。2.设置Web服务的地址(EndpointAd
- webservice简单例子(服务端和生成客户端)JAX-WS
曹恭铖
javawebservicewebservice简单例子JAX-WS
一、服务端1.新建一个WebServiceProject,新建一个HelloService类importjavax.jws.WebService;importjavax.xml.ws.Endpoint;@WebServicepublicclassHelloService{publicStringtestService(Stringparams){return"hello"+params;}publ
- java webservice服务端和客户端创建(JAX-WS)
No_Bug_
Javajavawebservice
idea:2020jdk:1.8目录1.搭建webservice服务端1.1新建一个java空项目1.2项目建好后,右键项目,选择“AddFrameworkSupport...”1.3生成wsdl,右键类的时候可能没有WebServices这个选项了,可以在Tools中找到这个功能1.4启动服务,右键HelloWorld启动项目1.5访问web服务1.6增加一个方法看看效果2.搭建webservi
- jax-ws实现Webservice入门教程 (客户端调用服务端实现)
Mrs陶
webservice
术语SEI:ServiceEndpointInterfaceJAX:JavaAPIforXMLWebServcieJAX-WSRI:JAX-WSReferenceImplementation创建WebService方式JAX-WS2.0有两种创建WebService的开发过程:自顶向下和自底向上。自顶向下方式指通过一个WSDL文件来创建WebService;自底向上是从Java类出发创建WebSe
- 【webservice】Java JAX-WS和JAX-RS webservice
May的博客
通信协议webserviceJAX-WSJAX-RSRESTsoap
一、webservice请求的工作原理:客户端——>阅读WSDL文档(根据文档生成SOAP请求)——>发送到Web服务器——>交给WebService请求处理器——>处理SOAP请求——>调用WebService——>生成SOAP应答——>Web服务器通过http的方式交给客户端详细描述如下:无论使用什么工具/语言编写的webservice服务端,都可以使用soap协议,通过HTTP来调用,调用原
- JAX-WS webservice服务与客户端
JuneHwa
JAX-WSWebservice
packagecom.example.webservice;importjavax.jws.WebMethod;importjavax.jws.WebService;@WebServicepublicinterfaceIGreetingService{@WebMethodStringsendGreetings(Stringname);@WebMethodStringgetGreeting();}p
- 【WebService学习】-----SpringBoot整合JAX-WS构建WebService
DreamTech1113
WebServiceJAX-WSWebService
文章目录1.简介2.Spring整合JAX-WS2.1介绍2.2Common2.3WebServiceServer(服务端)2.4WebServiceConsumer(客户端)3.测试4.参考1.简介Spring框架整合RMI和Hessian,以及Spring框架中的HttpInvoker来构建远程服务时,可以发现Spring框架都会提供了一个对应导出器RMIServiceExporter、Hes
- 基于JAX-WS和Tomcat的Web Service服务端/客户端
chenghuang2019
javaweb.xmlruntime
JDK中已经内置了Webservice发布,不过要用Tomcat等Web服务器发布WebService,还需要用第三方Webservice框架。Axis2和CXF是目前最流行的Webservice框架,这两个框架各有优点,不过都属于重量级框架。JAX-WSRI是JAXWebService参考实现。相对于Axis2和CXF,JAX-WSRI是一个轻量级的框架。虽然是个轻量级框架,JAX-WSRI也提
- jax-ws webservice编程
liangjw1018
webservice编程java
1.理解JAX-WS1.1JAX-WS概述JAX-WS2.0的全称为JavaAPIforXML-BasedWebservices(JAX-WS)2.0。JAX-WS2.0是对JAX-RPC1.0规范的扩展,是JAX-RPC1.1的后续版本,JAX-RPC2.0标准发布不久后便被重新命名为JAX-WS2.0。JAX-WS2.0是面向Java5的开发Webservices的最新编程标准,它提供了新的编
- 基于JAX-WS的Web Service服务端/客户端 ;JAX-WS + Spring 开发webservice
anyao4367
一、基于JAX-WS的WebService服务端/客户端下面描述的是在main函数中使用JAX-WS的WebService的方法,不是在web工程里访问,在web工程里访问,参加第二节。JAX-WS简介:JAX_RPC(JavaAPIforXML-BasedRPC)允许Java应用程序可以通过已知的描述信息调用一个基于Java的Web服务,描述信息与Web服务的WSDL描述相一致JAX-RPC2.
- java jax-ws webservice编程,入门教程,包含服务端与客户端,编码
北凉军
java开发语言
javajax-wswebservice就是服务端程序提供接口,客户端,通过服务端提供的jar包(或者打包的类文件),通过jax-ws直接调用服务端暴露的接口来进行操作.服务端共三个文件接口packagecom.jaxwsdemo.serveice;importjavax.jws.WebMethod;importjavax.jws.WebParam;importjavax.jws.WebServi
- 每天一个注解之@WebService
羱滒
java网络协议
@WebService@WebService是JavaAPIforXMLWebServices(JAX-WS)中的注解,用于标识一个类或接口作为一个可通过网络访问的Web服务。通过使用@WebService注解,你可以将普通的Java类转换成可发布为Web服务的类。以下是@WebService注解的一些常见用法和示例:基本用法:@WebService注解通常用于标识一个类或接口,该类或接口包含了要
- java web通过cxf发布webservices,Tomcat上通过CXF实现不用注解发布WebService
王羽翊
java
Tomcat下通过CXF实现不用注解发布WebService最近开始学习CXF框架下部署WebServices,起初都是用注释类或使用JAX-WS的方式如@WebService等方式来进行和Spring结合发布的WebService但是后来突然发现这样无形中和Java代码的耦合程度更大了,于是便需找累死xfie的aegis方式进行部署,貌似这类的文章很难找,虽然找了大概三四天吧不过很幸运,感谢博主
- SoapUI调用webservice接口,http+post方式模仿soapui调用webservice接口
影子2401
javahttppostmanjavasoapui
`SoapUI调用webservice接口,http+post方式模仿soapui调用webservice接口项目上调用一个第三方公司提的的webservice短信接口,使用了以下几种接口调用技术都不行使用PB自带的WebServiceProxyWizard输入wsdl地址后加载不出方法名使用javaxfire客户端调用报错使用javajax-ws生成客户端报错(jax-ws虽然需要生成很多调用客
- 矩阵求逆(JAVA)初等行变换
qiuwanchi
矩阵求逆(JAVA)
package gaodai.matrix;
import gaodai.determinant.DeterminantCalculation;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 矩阵求逆(初等行变换)
* @author 邱万迟
*
- JDK timer
antlove
javajdkschedulecodetimer
1.java.util.Timer.schedule(TimerTask task, long delay):多长时间(毫秒)后执行任务
2.java.util.Timer.schedule(TimerTask task, Date time):设定某个时间执行任务
3.java.util.Timer.schedule(TimerTask task, long delay,longperiod
- JVM调优总结 -Xms -Xmx -Xmn -Xss
coder_xpf
jvm应用服务器
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。
典型设置:
java -Xmx
- JDBC连接数据库
Array_06
jdbc
package Util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCUtil {
//完
- Unsupported major.minor version 51.0(jdk版本错误)
oloz
java
java.lang.UnsupportedClassVersionError: cn/support/cache/CacheType : Unsupported major.minor version 51.0 (unable to load class cn.support.cache.CacheType)
at org.apache.catalina.loader.WebappClassL
- 用多个线程处理1个List集合
362217990
多线程threadlist集合
昨天发了一个提问,启动5个线程将一个List中的内容,然后将5个线程的内容拼接起来,由于时间比较急迫,自己就写了一个Demo,希望对菜鸟有参考意义。。
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CountDownLatch;
public c
- JSP简单访问数据库
香水浓
sqlmysqljsp
学习使用javaBean,代码很烂,仅为留个脚印
public class DBHelper {
private String driverName;
private String url;
private String user;
private String password;
private Connection connection;
privat
- Flex4中使用组件添加柱状图、饼状图等图表
AdyZhang
Flex
1.添加一个最简单的柱状图
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
<?xml version=
"1.0"&n
- Android 5.0 - ProgressBar 进度条无法展示到按钮的前面
aijuans
android
在低于SDK < 21 的版本中,ProgressBar 可以展示到按钮前面,并且为之在按钮的中间,但是切换到android 5.0后进度条ProgressBar 展示顺序变化了,按钮再前面,ProgressBar 在后面了我的xml配置文件如下:
[html]
view plain
copy
<RelativeLa
- 查询汇总的sql
baalwolf
sql
select list.listname, list.createtime,listcount from dream_list as list , (select listid,count(listid) as listcount from dream_list_user group by listid order by count(
- Linux du命令和df命令区别
BigBird2012
linux
1,两者区别
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
- AngularJS中的$apply,用还是不用?
bijian1013
JavaScriptAngularJS$apply
在AngularJS开发中,何时应该调用$scope.$apply(),何时不应该调用。下面我们透彻地解释这个问题。
但是首先,让我们把$apply转换成一种简化的形式。
scope.$apply就像一个懒惰的工人。它需要按照命
- [Zookeeper学习笔记十]Zookeeper源代码分析之ClientCnxn数据序列化和反序列化
bit1129
zookeeper
ClientCnxn是Zookeeper客户端和Zookeeper服务器端进行通信和事件通知处理的主要类,它内部包含两个类,1. SendThread 2. EventThread, SendThread负责客户端和服务器端的数据通信,也包括事件信息的传输,EventThread主要在客户端回调注册的Watchers进行通知处理
ClientCnxn构造方法
&
- 【Java命令一】jmap
bit1129
Java命令
jmap命令的用法:
[hadoop@hadoop sbin]$ jmap
Usage:
jmap [option] <pid>
(to connect to running process)
jmap [option] <executable <core>
(to connect to a
- Apache 服务器安全防护及实战
ronin47
此文转自IBM.
Apache 服务简介
Web 服务器也称为 WWW 服务器或 HTTP 服务器 (HTTP Server),它是 Internet 上最常见也是使用最频繁的服务器之一,Web 服务器能够为用户提供网页浏览、论坛访问等等服务。
由于用户在通过 Web 浏览器访问信息资源的过程中,无须再关心一些技术性的细节,而且界面非常友好,因而 Web 在 Internet 上一推出就得到
- unity 3d实例化位置出现布置?
brotherlamp
unity教程unityunity资料unity视频unity自学
问:unity 3d实例化位置出现布置?
答:实例化的同时就可以指定被实例化的物体的位置,即 position
Instantiate (original : Object, position : Vector3, rotation : Quaternion) : Object
这样你不需要再用Transform.Position了,
如果你省略了第二个参数(
- 《重构,改善现有代码的设计》第八章 Duplicate Observed Data
bylijinnan
java重构
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusE
- struts2更改struts.xml配置目录
chiangfai
struts.xml
struts2默认是读取classes目录下的配置文件,要更改配置文件目录,比如放在WEB-INF下,路径应该写成../struts.xml(非/WEB-INF/struts.xml)
web.xml文件修改如下:
<filter>
<filter-name>struts2</filter-name>
<filter-class&g
- redis做缓存时的一点优化
chenchao051
redishadooppipeline
最近集群上有个job,其中需要短时间内频繁访问缓存,大概7亿多次。我这边的缓存是使用redis来做的,问题就来了。
首先,redis中存的是普通kv,没有考虑使用hash等解结构,那么以为着这个job需要访问7亿多次redis,导致效率低,且出现很多redi
- mysql导出数据不输出标题行
daizj
mysql数据导出去掉第一行去掉标题
当想使用数据库中的某些数据,想将其导入到文件中,而想去掉第一行的标题是可以加上-N参数
如通过下面命令导出数据:
mysql -uuserName -ppasswd -hhost -Pport -Ddatabase -e " select * from tableName" > exportResult.txt
结果为:
studentid
- phpexcel导出excel表简单入门示例
dcj3sjt126com
PHPExcelphpexcel
先下载PHPEXCEL类文件,放在class目录下面,然后新建一个index.php文件,内容如下
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
if (PHP_SAPI == 'cli')
die('
- 爱情格言
dcj3sjt126com
格言
1) I love you not because of who you are, but because of who I am when I am with you. 我爱你,不是因为你是一个怎样的人,而是因为我喜欢与你在一起时的感觉。 2) No man or woman is worth your tears, and the one who is, won‘t
- 转 Activity 详解——Activity文档翻译
e200702084
androidUIsqlite配置管理网络应用
activity 展现在用户面前的经常是全屏窗口,你也可以将 activity 作为浮动窗口来使用(使用设置了 windowIsFloating 的主题),或者嵌入到其他的 activity (使用 ActivityGroup )中。 当用户离开 activity 时你可以在 onPause() 进行相应的操作 。更重要的是,用户做的任何改变都应该在该点上提交 ( 经常提交到 ContentPro
- win7安装MongoDB服务
geeksun
mongodb
1. 下载MongoDB的windows版本:mongodb-win32-x86_64-2008plus-ssl-3.0.4.zip,Linux版本也在这里下载,下载地址: http://www.mongodb.org/downloads
2. 解压MongoDB在D:\server\mongodb, 在D:\server\mongodb下创建d
- Javascript魔法方法:__defineGetter__,__defineSetter__
hongtoushizi
js
转载自: http://www.blackglory.me/javascript-magic-method-definegetter-definesetter/
在javascript的类中,可以用defineGetter和defineSetter_控制成员变量的Get和Set行为
例如,在一个图书类中,我们自动为Book加上书名符号:
function Book(name){
- 错误的日期格式可能导致走nginx proxy cache时不能进行304响应
jinnianshilongnian
cache
昨天在整合某些系统的nginx配置时,出现了当使用nginx cache时无法返回304响应的情况,出问题的响应头: Content-Type:text/html; charset=gb2312 Date:Mon, 05 Jan 2015 01:58:05 GMT Expires:Mon , 05 Jan 15 02:03:00 GMT Last-Modified:Mon, 05
- 数据源架构模式之行数据入口
home198979
PHP架构行数据入口
注:看不懂的请勿踩,此文章非针对java,java爱好者可直接略过。
一、概念
行数据入口(Row Data Gateway):充当数据源中单条记录入口的对象,每行一个实例。
二、简单实现行数据入口
为了方便理解,还是先简单实现:
<?php
/**
* 行数据入口类
*/
class OrderGateway {
/*定义元数
- Linux各个目录的作用及内容
pda158
linux脚本
1)根目录“/” 根目录位于目录结构的最顶层,用斜线(/)表示,类似于
Windows
操作系统的“C:\“,包含Fedora操作系统中所有的目录和文件。 2)/bin /bin 目录又称为二进制目录,包含了那些供系统管理员和普通用户使用的重要
linux命令的二进制映像。该目录存放的内容包括各种可执行文件,还有某些可执行文件的符号连接。常用的命令有:cp、d
- ubuntu12.04上编译openjdk7
ol_beta
HotSpotjvmjdkOpenJDK
获取源码
从openjdk代码仓库获取(比较慢)
安装mercurial Mercurial是一个版本管理工具。 sudo apt-get install mercurial
将以下内容添加到$HOME/.hgrc文件中,如果没有则自己创建一个: [extensions] forest=/home/lichengwu/hgforest-crew/forest.py fe
- 将数据库字段转换成设计文档所需的字段
vipbooks
设计模式工作正则表达式
哈哈,出差这么久终于回来了,回家的感觉真好!
PowerDesigner的物理数据库一出来,设计文档中要改的字段就多得不计其数,如果要把PowerDesigner中的字段一个个Copy到设计文档中,那将会是一件非常痛苦的事情。