java 前端页面调用数据库_java如何生成json被前端调用
小妹前端一枚,CSDN新人,分不多,請(qǐng)見(jiàn)諒。
現(xiàn)在在自學(xué)前后臺(tái)交互。
現(xiàn)在采用的是ajax調(diào)用的方法,json文件是自己寫(xiě)的假數(shù)據(jù)。
$.ajax({
url:”json/mood.json”,
dataType:”json”,
type:”get”?,
success:function?(data){
。
但是我想自己嘗試下搭個(gè)數(shù)據(jù)庫(kù),自己調(diào)用數(shù)據(jù),數(shù)據(jù)已經(jīng)寫(xiě)好,并且用java完成了生成json字符串。
package?jdbcTest;
import?java.sql.*;
import?org.json.JSONArray;
import?org.json.JSONObject;
public?class?JDBCtest?{
public?static?void?main(String[]?args){
//?驅(qū)動(dòng)程序名
String?driver?=?“com.mysql.jdbc.Driver”;
//?URL指向要訪問(wèn)的數(shù)據(jù)庫(kù)名scutcs
String?url?=?“jdbc:mysql://127.0.0.1:3306/mysql”;
//?MySQL配置時(shí)的用戶名
String?user?=?“root”;
//?MySQL配置時(shí)的密碼
String?password?=?“989531”;
JSONObject?jsonObj?=?new?JSONObject();//創(chuàng)建json格式的數(shù)據(jù)
JSONArray?jsonArr?=?new?JSONArray();//json格式的數(shù)組
JSONObject?jsonObjArr?=?new?JSONObject();
try?{
//?加載驅(qū)動(dòng)程序
Class.forName(driver);
//?連續(xù)數(shù)據(jù)庫(kù)
Connection?conn?=?DriverManager.getConnection(url,?user,?password);
//?statement用來(lái)執(zhí)行SQL語(yǔ)句
Statement?statement?=?conn.createStatement();
//?要執(zhí)行的SQL語(yǔ)句
String?sql?=?“select?*?from?tb2”;
//?結(jié)果集
ResultSet?rs?=?statement.executeQuery(sql);
String?name?=?null;
while(rs.next())?{
//?選擇sname這列數(shù)據(jù)
name?=?rs.getString(“age”);
//?首先使用ISO-8859-1字符集將name解碼為字節(jié)序列并將結(jié)果存儲(chǔ)新的字節(jié)數(shù)組中。
//?然后使用GB2312字符集解碼指定的字節(jié)數(shù)組
name?=?new?String(name.getBytes(“ISO-8859-1″),”GB2312”);
jsonObjArr.put(“name”,rs.getString(“username”));
jsonObjArr.put(“age”,name);
jsonArr.put(jsonObjArr);//將json格式的數(shù)據(jù)放到j(luò)son格式的數(shù)組里
jsonObj.put(“data”,?jsonArr);//再將這個(gè)json格式的的數(shù)組放到最終的json對(duì)象中。
}
System.out.println(jsonObj.toString());
rs.close();
conn.close();
}?catch(ClassNotFoundException?e)?{
System.out.println(“Sorry,can`t?find?the?Driver!”);
e.printStackTrace();
}?catch(SQLException?e)?{
e.printStackTrace();
}?catch(Exception?e)?{
e.printStackTrace();
}
}
}
打印出來(lái)是
{“data”:[{“age”:”21″,”name”:”kitty”},{“age”:”21″,”name”:”kitty”},{“age”:”21″,”name”:”kitty”}]}
,但是下一步我就不會(huì)做了,這個(gè)java類包我要怎么用呢?怎么生成前端解析的json呢?網(wǎng)上查了很多資料,有說(shuō)用map的,有說(shuō)直接就可以get解析的。但是查了很多我很迷糊呀,因?yàn)閖ava我只會(huì)一點(diǎn)點(diǎn),另外我看用ajax的時(shí)候,路徑都寫(xiě)成相對(duì)的,但是現(xiàn)在我的html文件包是放在d://web文件夾里的,而我的這個(gè)java程序是放在d://eclipse里面的,要怎么調(diào)用呢?網(wǎng)上還有人說(shuō)后臺(tái)通過(guò)servlet把數(shù)據(jù)拋到服務(wù)器,然后前端來(lái)獲取。是這樣嗎?急求高手解答!感激不盡~
總結(jié)
以上是生活随笔為你收集整理的java 前端页面调用数据库_java如何生成json被前端调用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: sqlbulkcopy mysql_Sq
- 下一篇: html图片查看器工作原理,五分钟了解浏