Actually in my blog there is a Json plugin but if you can share how to do without it, it would be good!
The Wordpress official API is called XML-RPC API. It's documentated farely well on the
wordpress developer site.
If you're not familiar with it, then XMLRPC is a somewhat outdated web service protocol. All the requests and responses are encoded as XML snippets.
The RPC in the name (RPC=Remote Procedure Call) hints at the contents of those XML requests and responses. Basically, the requests have a method name and a list of arguments.
The responses contain a return object or an exception object. Both requests and responses have to follow a particular XML schema mandated by the protocol.
IIRC, XMLRPC is enabled by default on all Wordpress sites above version 3, but used to be disabled by default in earlier versions. If it's disabled, enable it from your WP admin portal.
On the developer site, notice the 2 APIs "wp.newPost" and "wp.newComment" - those are the two you'd need to publish new posts or comments.
For forming schema compliant XMLs, download the
Apache XMLRPC library.
In your project, add xmlrpc-client.jar, xmlrpc-common.jar, ws-common-util.jar and commons-logging.jar to classpath.
The XMLRPC endpoint is typically "http://[your-blog-url]/xmlrpc.php". However, some people (me!) change this to avoid spam bots. So if you're writing a general purpose tool that can be used by anybody, then you might want to provide a way for user to enter the endpoint URL.
Code for publishing a new post goes like this:
Similar code for wp.newComment. Its arguments are documented
here.