Приложение на java Spring, отображение на html+jQuery. Есть сущность для хранения в базе mySql
@Entity
@Table
public class Message {
@Id
@GeneratedValue
@Column(name = "id")
private long idMessage;
@Temporal(value = TemporalType.TIMESTAMP)
private Date date = new Date();
private String text;
@Column(columnDefinition = "LONGBLOB")
@Lob
private byte[] img;
public Message() {
}
...
}
Метод контролёра достаёт из базы все message по дате и списком в формате json отправляет на страницу
@RequestMapping("/upload/messages")
public void uploadMessages(HttpServletResponse response) {
List<Message> messageList = serviceMessage.findAllMessage(date);
ObjectMapper mapper = new ObjectMapper();
String json = "";
try {
json = mapper.writeValueAsString(messageList);
response.getWriter().println(json);
} catch (IOException e) {
e.printStackTrace();
}
}
код страницы
<body>
...
<div>
<div id="messageList">
<%-- Message List... --%>
</div>
</div>
</body>
код jQuery, который принимает список объектов от контролёра в формате json
function UploadMessage() {
$.ajax({
type: "get",
url: "upload/messages",
dataType: "json",
cache: false,
beforeSend: function () {
...
},
success: SuccessUploadMessage
})
}
function SuccessUploadMessage(result) {
$.each(result, function (index, value) {
var txt = value.text;
var img = value.img;
if (txt != null || img != null || nameSong != null) {
$("#messageList").prepend("<div id='oneMessage'></div>");// предварительно создаём отдельный блок для каждого сообщения
if (txt != null) {// вставляем текст сообщения
$("#oneMessage").prepend("<li id='myText' style='display: none'>" + value.text + "</li>");
$("#myText").fadeIn(1500);
}
if (img != null) {// вставка изображения
$("#oneMessage").prepend("<img id='myImg' src='' style='width: 140px; height: 100px; display: none'>");
$("#myImg").attr("src", "find/img/?idMessage=" + value.idMessage);
$("#myImg").show(800)
}
$("#messageList").prepend("<br>")
}
});
}
в коде jQuery я прохожу по списку и обращаюсь к полю text
объектов, чтобы получить значение этого поля, а для того, чтобы получить изображение я в тэг src
вставляю путь к методу контролёра, тем самым делаю дополнительный запрос в бд и отправляю на страницу ResponseEntity<byte[]>
. Вопрос: как открыть изображение обратившись напрямую к полю объекта?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Добрый день, сделал простенькую пагинацию для своего проекта, хотел сделать чтобы выводилось хотя бы по 5 страниц (сделал это с помощью цыкла...
в БД PostgreSQL есть таблица Provider со строками id и nameТакже есть таблица Currencies с полями id и currency, и Countries с полями id и country
В базе PosgreSQL есть колонка с jsonb, я хочу получить содержимое этой колонки не как строку, а как объект(преобразовать json в объект на лету, чтобы...