Java - 使用用户表单输入将图像上传到网站,将它们保存在 MySQL 数据库中,并在网站上显示图像
Posted
技术标签:
【中文标题】Java - 使用用户表单输入将图像上传到网站,将它们保存在 MySQL 数据库中,并在网站上显示图像【英文标题】:Java - Upload images to website with user form input, save them in MySQL databse, and display image on website 【发布时间】:2021-07-30 17:06:18 【问题描述】:对不起,如果我在这里说了什么或问了什么愚蠢的事情。我对编程还是很陌生。
我正在创建一个网站,用户可以在其中创建活动并添加基本信息,例如标题、描述、联系电子邮件和活动的日期/时间。
除了所有这些信息之外,我还想添加一个上传照片功能,这样用户就可以上传一张图片来配合它。当用户使用网站时,他们可以通过所有信息和图像查看其他用户创建的其他事件。我会说它与 Facebook 事件非常相似。
但是,我一直在试图弄清楚如何将其合并到我的代码中,或者从哪里开始。我已经观看并阅读了许多有关图像上传的视频和文章,其中很多都使用 php 和 PHPMyAdmin。我以前从未使用过 Php,我一直在用 Java 编写程序。我对 html 部分的外观有一个小小的想法,但我不知道如何从我目前拥有的代码开始,我不明白如何将它保存在我的 mysql 数据库中。
这是我的 Events.java 类:
@Entity
public class Events extends AbstractEntity
@NotBlank(message = "Name field cannot be left blank.")
@Size(min = 2, max = 50, message = "Name must be between 2 and 50 characters")
private String eventName;
@OneToOne(cascade = CascadeType.ALL)
@Valid
@NotNull
private EventDetails eventDetails;
public Event(@NotBlank(message = "Name field cannot be left blank.") @Size(min = 2, max = 50, message = "Name must be between 2 and 50 characters") String eventName)
this.eventName = eventName;
public Event()
public String getEventName()
return eventName;
public void setEventName(String eventName)
this.eventName = eventName;
public EventDetails getEventDetails()
return eventDetails;
public void setEventDetails(EventDetails eventDetails)
this.eventDetails = eventDetails;
@Override
public String toString()
return eventName;
这是我的 create.html:
<!DOCTYPE html>
<html lang="en" xmlns:th="https://www.thymeleaf.org/">
<head th:replace="fragments :: head"></head>
<head>
<link th:href="@/css/events.css" rel="stylesheet" />
</head>
<body class="create-events-body">
<header th:replace="fragments :: header"></header>
<div class="navbar">
<div class="container">
<nav>
<ul class="event-nav">
<li><a href="/events" class="all-cta">All Events</a>
<a href="/events/create" class="primary-cta">Create an Event</a>
<a href="/evetns/delete" class="secondary-cta">Delete an Event</a></li>
</ul>
</nav>
</div>
</div>
<section class="create-events-section">
<form method="post">
<div class="form-group">
<div class="form-wrapper">
<div>
<label class="form-name">Event Name:
<input th:field="$event.eventName" class="form-control">
</label>
<p class="error" th:errors="$event.eventName"></p>
<label class="form-email">Contact Email:
<input th:field="$event.eventDetails.eventContactEmail" class="form-control">
</label>
<p class="error" th:errors="$event.eventDetails.eventContactEmail"></p>
<label class="form-description">Description:
<textarea th:field="$event.eventDetails.eventDescription" class="form-control"></textarea>
</label>
<p class="error" th:errors="$event.eventDetails.eventDescription"></p>
</div>
</div>
<input type="submit" value="Create Event">
</div>
</form>
</section>
</body>
</html>
【问题讨论】:
【参考方案1】:尝试使用 XAMPP 在您自己的计算机上通过 PHPMyAdmin 测试您自己的 MySQL 数据库。 使用 XAMPP 的安全密码。 使用 MySQL 库进行 Java 编码(例如,如果您在 NetBeans 中编码)。 搜索命令行如何通过 java 代码使用 MySQL。 学习 PHP 的语法。 搜索一些好的PHP免费编辑软件,根据需要编辑代码。
【讨论】:
以上是关于Java - 使用用户表单输入将图像上传到网站,将它们保存在 MySQL 数据库中,并在网站上显示图像的主要内容,如果未能解决你的问题,请参考以下文章
如何使用上传的图像 url 注入输入字段以及如何将带有表单的 url 提交到 mongodb?