Если вы хотите сохранить ваши изображения в базе данных, а не просто путь для ссылки на изображение, столбец, в котором будет храниться ваше изображение, должен иметь тип BLOB.
CREATE TABLE upload (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
content LONGBLOB NOT NULL,
PRIMARY KEY(id)
);
Из вашей программы BlackBerry (предупреждение, не проверено):
//First param is a Bitmap, second is quality
JPEGEncodedImage encodedImage = JPEGEncodedImage.encode(image, 100);
byte imageBytes[]=encodedImage.getData();
//The HTTP connection stuff
HttpConnection conn = (HttpConnection) Connector.open(SERVER_URL, Connector.READ_WRITE);
conn.setRequestProperty(HttpProtocolConstants.HEADER_CONTENT_TYPE, HttpProtocolConstants.CONTENT_TYPE_MULTIPART_FORM_DATA);
conn.setRequestMethod(HttpConnection.POST);
conn.setRequestProperty(HttpProtocolConstants.HEADER_CONTENT_LENGTH, String.valueOf(imageBytes.length));
//Change this part to what your server side code expects
String contDisp="Content-Disposition:form-data; uploadedimage=YOUR_IMAGE_NAME;filename=\"Image.jpg\"";
String contEnc = "Content-Transfer-Encoding: binary";
String type="Content-Type:image/jpeg";
OutputStream out= conn.openOutputStream();
out.write(imageBytes);
out.flush();
out.close();
Таким образом, в основном вы используете HttpConnection , чтобы настроить заголовки для запроса POST, с данными составной формы в качестве типа содержимого. Существуют и другие заголовки, которые могут понадобиться, чтобы точно знать, что вам нужно (не относится к BlackBerry), проверьте спецификацию протокола HTTP / 1.1 .
Способ хранения изображения в базе данных будет зависеть от реализации на сервере. Это может быть что угодно из PHP, ASP, JSP или любой серверной технологии, которая позволяет вам общаться с вашим экземпляром MySQL.