JAVA写接口傻瓜($)教程(三)

  接上一篇

  补充:事实上java的类需要在src文件夹里写,classes文件夹只是会同步src文件夹里的类。如果在classes文件夹里操作java类,是会提示文件只读的。src文件夹中进行代码编写

  

  5、数据库连接代码

    到第三篇终于到了写代码的时间了呜呜...我选择写调试数据库的代码,直接写sevlert的话debug比较麻烦,先写数据库部分就能有效避免数据库出错了。下面是代码,注释很详细了

    

//
// 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) {
            }

        }

    }
}

   6、使用fastjson将查询出的结果生成json数据

    在日志解析,前后端数据传输交互中,经常会遇到字符串(String)与json,XML等格式相互转换与解析,其中json以跨语言,跨前后端的优点在开发中被频繁使用,基本上可以说是标准的数据交换格式。fastjson是一个java语言编写的高性能且功能完善的JSON库,它采用一种“假定有序快速匹配”的算法,把JSON Parse 的性能提升到了极致。它的接口简单易用,已经被广泛使用在缓存序列化,协议交互,Web输出等各种应用场景中。

    如果简介看不懂也没关系,我们只需知道,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格式

    

猜你喜欢

转载自www.cnblogs.com/wxy990118/p/10696414.html