Java 如何在web上显示json

Java 如何在web上显示json,java,spring-boot,web,Java,Spring Boot,Web,我使用的是JavaSpringBoot,我可以在终端上打印json结果,但我想在web上显示,那么我如何才能将此代码更改为在web上显示 package com.tutorial.springboot; import com.google.gson.Gson; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.datasource.SimpleDriverDataSource;

我使用的是JavaSpringBoot,我可以在终端上打印json结果,但我想在web上显示,那么我如何才能将此代码更改为在web上显示

package com.tutorial.springboot;

import com.google.gson.Gson;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.SimpleDriverDataSource;
import lombok.var;
import java.io.FileInputStream;
import java.io.IOException;

import java.util.List;
import java.util.Map;
import java.util.Properties;


import java.sql.Driver;



public class Application {
    public static void main(String[] args) throws IOException, ClassNotFoundException{

        var prop = new Properties();
        prop.load(new FileInputStream("src/main/resources/Application.properties"));
        var ds = new SimpleDriverDataSource();

        ds.setDriverClass(((Class<Driver>) Class.forName(prop.getProperty("jdbc.driver"))));
        ds.setUrl(prop.getProperty("jdbc.url"));
        ds.setUsername(prop.getProperty("jdbc.username"));
        ds.setPassword(prop.getProperty("jdbc.password"));

        var sql = "SELECT * FROM ked_evaluation_data";

        var jtm = new JdbcTemplate(ds);
        List<Map<String, Object>> rows = (List<Map<String, Object>>) jtm.queryForList(sql);

        Gson gson = new Gson();
        String jcart=gson.toJson(rows);
        System.out.println(jcart);
        //rows.forEach(System.out::println);
    }
}
package com.tutorial.springboot;
导入com.google.gson.gson;
导入org.springframework.jdbc.core.jdbc模板;
导入org.springframework.jdbc.datasource.SimpleDriverDataSource;
进口lombok.var;
导入java.io.FileInputStream;
导入java.io.IOException;
导入java.util.List;
导入java.util.Map;
导入java.util.Properties;
导入java.sql.Driver;
公共类应用程序{
公共静态void main(字符串[]args)引发IOException,ClassNotFoundException{
var prop=新属性();
加载(新文件输入流(“src/main/resources/Application.properties”);
var ds=新的SimpleDriverDataSource();
setDriverClass(((Class)Class.forName(prop.getProperty(“jdbc.driver”)));
setUrl(prop.getProperty(“jdbc.url”);
setUsername(prop.getProperty(“jdbc.username”);
setPassword(prop.getProperty(“jdbc.password”);
var sql=“从ked\U评估数据中选择*”;
var jtm=新的jdbc模板(ds);
列表行=(列表)jtm.queryForList(sql);
Gson Gson=新的Gson();
字符串jcart=gson.toJson(行);
System.out.println(jcart);
//rows.forEach(System.out::println);
}
}
总之,我想知道如何更改代码以在web上显示结果
如果有人知道,请教我!!谢谢大家!

您需要在这里使用Spring boot rest控制器,如下所示

@RestController
public class HelloController {

    @RequestMapping("/json")
    public String index() {
         var prop = new Properties();
        prop.load(new FileInputStream("src/main/resources/Application.properties"));
        var ds = new SimpleDriverDataSource();

        ds.setDriverClass(((Class<Driver>) Class.forName(prop.getProperty("jdbc.driver"))));
        ds.setUrl(prop.getProperty("jdbc.url"));
        ds.setUsername(prop.getProperty("jdbc.username"));
        ds.setPassword(prop.getProperty("jdbc.password"));

        var sql = "SELECT * FROM ked_evaluation_data";

        var jtm = new JdbcTemplate(ds);
        List<Map<String, Object>> rows = (List<Map<String, Object>>) jtm.queryForList(sql);

        Gson gson = new Gson();
        String jcart=gson.toJson(rows);
       return jcart;
    }

}
使用类似url的url从web调用它

(更换主机和端口,也要使用rest控制器,如果尚未存在,则可能需要添加依赖项)


希望这有帮助

您可能应该看看Spring Boot教程,或者只是一个快速入门,类似这样的内容:。YOUR任务最重要的部分是一个“控制器”,我添加了控制器,但如何更改Application.java??通常我写的代码是应用程序代码,我在上面的注释中也添加了Application.java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}