Усечение данных: данные слишком длинные для столбца «содержимое» в строке 1 - PullRequest
0 голосов
/ 05 января 2019

* Причина: com.mysql.jdbc.MysqlDataTruncation: усечение данных: слишком длинные данные для столбца 'content' в строке 1

Я пытаюсь решить эту проблему много дней

Имя: Вивек Шривастава
Desc: Контактное лицо
Файл: Файл
ТипСодержимый: применение / PDF
услуги: управление, совместное размещение
Гибернация: вставка в документы (адрес, контакт, контент, мобильный номер, имя, имя пользователя, предоставленный сервис, статус, дата загрузки) значений (?,?,?,?,?,?,?,?,?) org.hibernate.exception.DataException: не удалось вставить: [com.ams.bean.Document]

package com.ams.bean;

import java.sql.Blob;
import java.sql.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.Table;

@Entity
@Table(name="documents")
public class Document {

    @Id
    @GeneratedValue
    @Column(name="id")
    private Integer id;

    @Column(name="name")
    private String name;

    @Column(name="poname")
    private String poname;

    @Column(name="mobileno")
    private String mobileno;

    @Column(name="contact")
    private String contact;

    @Column(name="content")
    @Lob
    private Blob content;

    @Column(name="serviceprovided")
    private String serviceprovided;

    @Column(name="status")
    private String status;

    @Column(name="uploaddate")
    private String uploaddate;

    @Column(name="address")
    private String address;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getMobileno() {
        return mobileno;
    }

    public void setMobileno(String mobileno) {
        this.mobileno = mobileno;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public Blob getContent() {
        return content;
    }

    public void setContent(Blob content) {
        this.content = content;
    }

    public String getServiceprovided() {
        return serviceprovided;
    }

    public void setServiceprovided(String serviceprovided) {
        this.serviceprovided = serviceprovided;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getUploaddate() {
        return uploaddate;
    }

    public void setUploaddate(String uploaddate) {
        this.uploaddate = uploaddate;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPoname() {
        return poname;
    }

    public void setPoname(String poname) {
        this.poname = poname;
    }enter code here


}

    @RequestMapping(value = "/save", method = RequestMethod.POST)
    public String save(
            @ModelAttribute("document") Document document,
            @RequestParam("file") MultipartFile file) {


        System.out.println("Name:" + document.getName());
        System.out.println("Desc:" + document.getContact());
        System.out.println("File:" + file.getName());
        System.out.println("ContentType:" + file.getContentType());
        System.out.println("service:"+document.getServiceprovided());

        try {
            Blob blob = Hibernate.createBlob(file.getInputStream());

            document.setServiceprovided(document.getServiceprovided());
            document.setContent(blob);
            document.setAddress(document.getAddress());
            document.setName(document.getName());
            document.setPoname(document.getPoname());
            document.setMobileno(document.getMobileno());
            document.setStatus(document.getStatus());
            document.setUploaddate(document.getUploaddate());
            document.setContact(document.getContact());



        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            VMDao.save(document);
        } catch(Exception e) {
            e.printStackTrace();
        }

        return "redirect:/customer_details.do";
    }

      @Transactional(propagation=Propagation.REQUIRED)
        public void save(Document document) {
            Session session = sessionFactory.getCurrentSession();
            session.save(document);
        }

1 Ответ

0 голосов
/ 05 января 2019

Исключение очевидно, слишком велико значение для идентификатора контента (более 64 КБ). Попробуйте назначить другое, например MEDIUMBLOB или LONGBLOB:

Типы BLOB Тип объекта Длина значения, которое может содержать объект TINYBLOB от 0 до 255 байт BLOB от 0 до 65535 байт MEDIUMBLOB от 0 до 16 777 215 байт LONGBLOB от 0 до 4 294 967 295 байт

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...