I am recently starting to use SharePoint, and one question is how can other web applications retrieve data from SharePoint 2010.
Which web services can I use from either a .NET application or a Java based application?
There are a number of SOAP web services provided by SharePoint that can be used in Java and ASP.NET. For Java, David Dudok de Wit has a good blog post about using the web services: http://davidsit.wordpress.com/2010/02/10/reading-a-sharepoint-list-with-java-tutorial/.
For ASP.NET, you also have the option of using the SharePoint Client-Side Object Model. This lets you interact with SharePoint using an object model provided by the Microsoft.SharePoint.Client and Microsoft.SharePoint.Client.Runtime assemblies. CSOM is a bit easier to work with than the web services directly.
More info on SharePoint web services: http://msdn.microsoft.com/en-us/library/office/ee705814(v=office.14).aspx
There are many options to retrieve data from sharepoint.
http://msdn.microsoft.com/en-us/library/office/jj193058(v=office.15).aspx
2 Sharepoint client side object model.
http://msdn.microsoft.com/en-us/library/office/jj163201(v=office.15).aspx#BasicOps_FileTasks
3 Sharepoint web services and rest APIs.
http://msdn.microsoft.com/en-us/library/office/fp142380(v=office.15).aspx
The REST API is very versatile and easy to learn. Reading and writing with this interface is well documented here:
http://msdn.microsoft.com/en-us/library/office/jj860569(v=office.15).aspx
http://msdn.microsoft.com/en-us/library/office/jj164022(v=office.15).aspx
There are a variety of web services available in SharePoint 2010 that you can use to consume data from a SharePoint site. A quick Google search of "SharePoint 2010 Web Services" returns the following list of all available web services in SharePoint 2010:
Which web service you use depends entirely upon the task that you are trying to accomplish.
Some of the most common web services used are:
JShare - Java and Android API for SharePoint
Share .NET - .NET Framework and Mono API for SharePoint