访问远程MySQL数据库的最佳和最安全的方法是什么? [关闭]

i am going to develop cloud based application in java, i have Linux web server with mysql installed

so i come up with 2 different ways to query database, both solutions are communicate trough http requests and both methods have their own advantages and disadvantages

i am using below example for demonstrate solutions

database on the server

-- fruit--
name    price
Apple     10
Banana     5
Mango      4

lets say i want to get all the fruit items from database

Solution 1 : write database access class using PHP in Server side and let java application send query via http requst
ex:- java application will send query SELECT * FROM fruit then server side PHP will return query result as `JSON' format

-this is super reusable and can use for any future cloud database access and it is clean code because all the implementations are don in JAVA side except database access

Solution 2 : Write both Fruit class and database classes in server side and let JAVA application to call server side functions via http requests
its like getAllFruits()

-in this way i have to implement all the DAO classes in server side and it is more coding,less re usability in another project also since DAO is implemented in PHP side maintenance effort is higher than solution 1

i think Solution 1 is the best because of re usability and simplicity, i am afraid that database query will be sent via http request which is not feel good for me, so i really appreciate your ideas and comments since i am new to this kind of applications, if you have any other solutions or Advantages and disadvantages i am also open for those

also i was wondering about how other companies implement it