有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

mysql如何在java中为web服务创建函数以获取我的sql值

public ArrayList<FeedObjects> GetFeeds(Connection connection) throws Exception
    {
        ArrayList<FeedObjects> feedData = new ArrayList<FeedObjects>();
        try
        {
            //String uname = request.getParameter("uname");
            PreparedStatement ps = connection.prepareStatement("SELECT id,title,description,url FROM website ORDER BY id DESC");
            //ps.setString(1,uname);
            ResultSet rs = ps.executeQuery();
            while(rs.next())
            {
                FeedObjects feedObject = new FeedObjects();
                feedObject.SetId(rs.getInt("id"));
                feedObject.setTitle(rs.getString("title"));
                feedObject.setDescription(rs.getString("description"));
                feedObject.setUrl(rs.getString("url"));
                feedData.add(feedObject);
            }
            return feedData;
        }
        catch(Exception e)
        {
            throw e;
        }
    }

这个类可以为web服务获取所有数据库值:

@Path("/WebService")
public class FeedService {

    @GET
    @Path("/GetFeeds")
    @Produces("application/json")
    public String feed()
    {
        String feeds  = null;
        try 
        {
            ArrayList<FeedObjects> feedData = null;
            ProjectManager projectManager= new ProjectManager();
            feedData = projectManager.GetFeeds();
            //StringBuffer sb = new StringBuffer();
            Gson gson = new Gson();


        //  System.out.println(gson.toJson(feedData));
            feeds = gson.toJson(feedData);

        } catch (Exception e)
        {
            System.out.println("error");
        }
        return feeds;
    }

这是我的代码,我可以从中显示employee表中的所有数据,我想要写函数,这样,如果我传递id,那么我将获得相应的列值

http://localhost:8080/RESTfulProject/REST/WebService/GetFeeds

使用这个函数,我可以得到数据库的所有值

例如,如果我们输入id=1,那么它应该只显示一个emp_名称的id

请帮助我修改给定的函数,以便我可以实现它


共 (1) 个答案

  1. # 1 楼答案

    我不知道您使用的是什么REST库,但您应该搜索@PathParam annotation。它允许您直接在代码中插入id:

    @GET
    @Path("/GetFeeds/{id}")
    @Produces("application/json")
    public String feedOne(@PathParam int id) {
    ...
    

    并根据请求调用该方法

    http://localhost:8080/RESTfulProject/REST/WebService/GetFeeds/102