Java实现将Oracle数据简单json封装

Test.java


package com.example.oracle;


import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.google.gson.Gson;

public class Test extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public Test() {
        super();
    }

    /**
     * Destruction of the servlet. <br>
     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to get.
     *
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
            this.doPost(request, response);

    }

    /**
     * The doPost method of the servlet. <br>
     *
     * This method is called when a form has its tag value method equals to post.
     *
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        //数据库连接
        String DriverName="oracle.jdbc.driver.OracleDriver";
        String URL="jdbc:oracle:thin:@localhost:1521:ORCL";
        String UserName="system";
        String PassWord="wzyzy";
        java.sql.Connection conn;
        try{
            Class.forName(DriverName);
            conn=DriverManager.getConnection(URL, UserName, PassWord);
            System.out.println("OK");
            Statement State=conn.createStatement();
            String sql="select *from HR.EMPLOYEES";
            ResultSet rs=State.executeQuery(sql);

            String name = null;
            int id = 0,sale = 0;
            
            while(rs.next()){
                sale=rs.getInt("SALARY");//获取Oracle中需要的数据
                id=rs.getInt("EMPLOYEE_ID");
                name=rs.getString("LAST_NAME");
                name=new String(name.getBytes("ISO-8859-1"),"GB2312");
                System.out.println(id+"\t"+name+"\t"+sale);
                
                response.setContentType("text/html;charset=utf-8");
                PrintWriter out=response.getWriter();
                Result result=new Result();
                //json数据构造
                result.setResult(1);
                List<Sqldata>list=new ArrayList<Sqldata>();
                result.setPersonsData(list);
                Sqldata person1=new Sqldata();
                person1.setiD(id);
                person1.setLastname(name);
                person1.setSale(sale);
                list.add(person1);
                
                Gson gson=new Gson();//使用Gson封装数据
                System.out.println(gson.toJson(result));
                out.println(gson.toJson(result));
            }
            rs.close();
            conn.close();
        }catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
        

    }

    /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}



Result.java


package com.example.oracle;

import java.util.List;

/**
 * Created by Administrator on 2018/5/27.
 */
//json构造
public class Result {
    private int result;

    public int getResult() {
        return result;
    }

    public void setResult(int result) {
        this.result = result;
    }

    public List<Sqldata> getPersonsData() {
        return personsData;
    }

    public void setPersonsData(List<Sqldata> personsData) {
        this.personsData = personsData;
    }

    private List<Sqldata>personsData;
}



Sqldata.java


package com.example.oracle;
//数据库所需数据
public class Sqldata {
    private String lastname;
    private int iD,sale;
    public int getSale() {
        return sale;
    }
    public void setSale(int sale) {
        this.sale = sale;
    }
    public int getiD() {
        return iD;
    }
    public void setiD(int iD) {
        this.iD = iD;
    }
    public String getLastname() {
        return lastname;
    }
    public void setLastname(String lastname) {
        this.lastname = lastname;
    }


}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值