2017-02-19 19 views
0

Может ли кто-нибудь дать мне пример страницы JSP, которая будет содержать переменную массива с некоторыми данными и каждый раз, когда будет загружена страница JSP, эти данные в массиве будут записаны в json-файле в определенном каталоге. Затем я обработаю данные в файле json с помощью другой html-страницы.Как загрузить страницу JSP и записать данные в файл json одновременно?

Позже я установил бы соединение с моей БД на страницу JSP. Но, во-первых, я должен обрабатывать его без какой-либо базы данных. Итак, идея заключается в том, когда моя БД будет обновлена; На странице JSP будет автоматически обновлен json-файл (согласно моему ожидаемому сценарию), и при каждом загрузке страницы JSP (или нажатии кнопки) я мог бы обрабатывать различные данные каждый раз.

Я немного смущен, хотя .. такой сценарий возможен или нет?

И я также попробовал некоторые коды, как: -

<%-- Set the content type header with the JSP directive --%> 
<%@ page contentType="application/json" %> 

<%-- Set the content disposition header --%> 
<% 
// Returns all employees (active and terminated) as json. 
response.setContentType("application/json"); 
response.setHeader("Content-Disposition", "inline"); 
%> 

<%@ page language="java"%> 
<%@ page import="java.sql.*"%> 
<%@ page import="java.util.*"%> 
<%@ page import="java.text.*"%> 
<%@ page import="javax.servlet.http.*"%> 


[ 
{"label":"item 1", "value":"item 1", "id": 1}, 
{"label":"item 2", "value":"item 2", "id": 2}, 
{"label":"item 3", "value":"item 1", "id": 3} 
] 

Но я не мог в состоянии записывать данные в файл JSON через любой из этих кодов, а это показывает данные на этой странице.

Может ли кто-нибудь дать мне представление, как я могу реализовать сценарий?

ответ

1

Я решил проблему.

Предположим, вы хотите написать некоторые значения столбцов на странице jsp. Просто используйте ... json.dumps() и функцию json.load.

Вот exapmple

import json 
 

 
data = { 
 
    'name' : 'ACME', 
 
    'shares' : 100, 
 
    'price' : 542.23 
 
} 
 

 
json_str = json.dumps(data) 
 

 
data = json.loads(json_str) 
 

 
# Writing JSON data 
 
with open('data.json', 'w') as f: 
 
    json.dump(data, f) 
 

 
# Reading data back 
 
with open('data.json', 'r') as f: 
 
    data = json.load(f)