接上一篇html
補充:事實上java的類須要在src文件夾裏寫,classes文件夾只是會同步src文件夾裏的類。若是在classes文件夾裏操做java類,是會提示文件只讀的。src文件夾中進行代碼編寫java
五、數據庫鏈接代碼git
到第三篇終於到了寫代碼的時間了嗚嗚...我選擇寫調試數據庫的代碼,直接寫sevlert的話debug比較麻煩,先寫數據庫部分就能有效避免數據庫出錯了。下面是代碼,註釋很詳細了github
// // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; public class jdbc{ public jdbc () { } public static void main(String[] args) { String dbURL = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=S-T";//JDBC的本機地址,DatabaseName注意改爲對應數據庫的名字 String userName = "sa"; String userPwd = "111";//SQD sever驗證的用戶名和密碼 Connection dbConn = null;//鏈接的實體 String sql = "select * from Student"; try { dbConn = DriverManager.getConnection(dbURL, userName, userPwd); Statement statement = dbConn.createStatement(); ResultSet resultSet = statement.executeQuery(sql);//執行SQL語句,用於產生單個結果集 System.out.println(resultSet);//返回值不爲-11或空就證實SQL語句執行成功 } catch (SQLException var18) { var18.printStackTrace(); } finally { try { if (dbConn != null) {//結束時關閉鏈接 dbConn.close(); dbConn = null; } } catch (Exception var17) { } } } }
六、使用fastjson將查詢出的結果生成json數據算法
在日誌解析,先後端數據傳輸交互中,常常會遇到字符串(String)與json
,XML
等格式相互轉換與解析,其中json
以跨語言,跨先後端的優勢在開發中被頻繁使用,基本上能夠說是標準的數據交換格式。fastjson是一個java語言編寫的高性能且功能完善的JSON庫,它採用一種「假定有序快速匹配」的算法,把JSON Parse
的性能提高到了極致。它的接口簡單易用,已經被普遍使用在緩存序列化,協議交互,Web輸出等各類應用場景中。sql
若是簡介看不懂也不要緊,咱們只需知道,fastjson使用前須要有一個類說明它要轉化的對象的樣式。這個類須要有空構造函數、通常構造函數,每個屬性都須要有對應的get、set方法。下面是一個學生類數據庫
public class student { String name; String id; String sex; String age; public student(){ } public student(String name,String id,String sex,String age){ this.age=age; this.name=name; this.id=id; this.age=age; } public void setName(String name){ this.name=name; } public void setId(String id){ this.id=id; } public void setSex(String sex){ this.sex=sex; } public void setAge(String age){ this.age=age; } public String getName(){ return name; } public String getId(){ return id; } public String getSex(){ return sex; } public String getAge(){ return age; } }
import com.alibaba.fastjson.JSONObject; import java.sql.*; import java.util.ArrayList; import java.util.List; //這是查詢後顯示的代碼,詳情看註釋 public class connect { public static void main(String[] args) { String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=S-T"; String userName="sa"; String userPwd="111"; Connection dbConn = null; String sql="select * from Student";//同鏈接數庫的含義 List<student> students=new ArrayList<>();//開一個list來保存學生信息 try { //response.setContentType("text/html"); dbConn= DriverManager.getConnection(dbURL,userName,userPwd); Statement statement=dbConn.createStatement(); ResultSet resultSet=statement.executeQuery(sql); while (resultSet.next()){//每查詢到一條記錄 student st=new student();//存儲一個新對象 st.setName(resultSet.getString("Sname"));//注意觀察,set方法是針對student類的,getString裏對應的是數據庫中的列明 st.setId(resultSet.getString("Sno")); st.setSex(resultSet.getString("Ssex")); st.setAge(resultSet.getString("Sage")); students.add(st);//加入list } System.out.println(JSONObject.toJSONString(students));//轉變爲json對象 } catch (SQLException e) { e.printStackTrace(); } finally { try {//關閉鏈接 if(dbConn!=null) { dbConn.close(); dbConn=null; } } catch(Exception ex) { } } } }
查詢結果,能夠看出是json格式json