前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java写数据接口

java写数据接口

作者头像
天天_哥
发布2018-09-29 14:50:57
1.7K0
发布2018-09-29 14:50:57
举报
文章被收录于专栏:天天天天
1.新建DynamicWeb项目

其中要用到的 gson此处用于将持久化对象解析为Json,或将Json序列化为对象。

==目录如下==

主要是使用到下边红框中的类

1.1 基础数据对象
代码语言:javascript
复制
package cn.hy.newsTest;

import java.util.Date;

public class News {
    private int nId; // 新闻ID
    private String title; // 新闻标题
    private String content; // 新闻内容
    private String date; // 新闻发布日期
    private String url; //新闻地址
    private Date nDate; // 新闻日期,Date类型
    
    
    public int getnId() {
        return nId;
    }

    public void setnId(int nId) {
        this.nId = nId;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public Date getnDate() {
        return nDate;
    }

    public void setnDate(Date nDate) {
        this.nDate = nDate;
    }

 
    public News(int nId, String title, String content, String date, String url) {
        this.nId = nId;
        this.title = title;
        this.content = content;
        this.date = date;
        this.url = url;
    }

}
1.2 对返回的接口数据封装类
代码语言:javascript
复制
package cn.hy.newsTest;

import java.util.List;

public class NewsList {
    private int total; //新闻数量
    private List<News> rows; //新闻列表
    
    
    public int getTotal() {
        return total;
    }
    public void setTotal(int total) {
        this.total = total;
    }
    public List<News> getRows() {
        return rows;
    }
    public void setRows(List<News> rows) {
        this.rows = rows;
    }
    public NewsList() {}
    public NewsList(int total, List<News> rows) {
        this.total = total;
        this.rows = rows;
    }
}
1.3数据库数据
1.4新建servlet类
代码语言:javascript
复制
package cn.hy.newsTest;

import java.io.IOException;

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

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;

import com.google.gson.Gson;

import java.io.PrintWriter;
import java.sql.*;
import java.util.List;
 
public class JsonServlet2 extends HttpServlet {
 
    private static final long serialVersionUID = 1L;

    @Override
         protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
             try {
                 QueryRunner runner = new QueryRunner(C3P0Utils.getDataSource());
                 String sql = "SELECT * FROM news";
                 List<News> newsList = runner.query(sql, new BeanListHandler<News>(News.class));
                
                // 将数据封装到新闻总计类
                NewsTotal nt = new NewsTotal(newsList.size(), newsList);
          
                // 调用GSON jar工具包封装好的toJson方法,可直接生成JSON字符串
                Gson gson = new Gson();
                String json = gson.toJson(nt);
          
                // 输出到界面
                System.out.println(json);
                resp.setContentType("text/plain");
                resp.setCharacterEncoding("gb2312");
                PrintWriter out = new PrintWriter(resp.getOutputStream());
                out.print(json);
                out.flush();
                // 更多Json转换使用请看JsonTest类
               } catch (SQLException e) {
                   e.printStackTrace();
               } 
               
           }
       
           @Override
           protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
               doGet(req, resp);
           }
 
}

发布项目,在tomcat访问JsonServlet,最后在浏览器就能拿到数据

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.09.01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.新建DynamicWeb项目
    • 1.1 基础数据对象
      • 1.2 对返回的接口数据封装类
        • 1.3数据库数据
          • 1.4新建servlet类
          相关产品与服务
          数据库
          云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档