“如何使用冬眠和春季修复''保存XML

时间:2019-01-02 18:46:16

标签: java xml spring postgresql hibernate

有一类Hibernate XML Type,我需要借助hibernate @type custom来保存在postgresql中。班级为https://wiki.postgresql.org/wiki/Hibernate_XML_Type 但是在保存时,似乎我还没有分配值。

我认为这是因为我的配置类没有将@type的属性添加到我的配置“ Any Idea”中     @盖特     @Setter     @实体     @Table(name =“ doc_sri”)     公共类条例草案{

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "cod_doc")
private int idBill;

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

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

@Type(type = "com.rolandopalermo.facturacion.ec.entity.SQLXMLType")
@Column(name = "xml_doc" )
private String xmlBill;

@Column(name = "status_doc")
private int statusBill;

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

public Bill( String keyBill, String dateIssueBill, String xmlBill, int statusBill, String typeBill) {
    super();

    this.keyBill = keyBill;
    this.dateIssueBill = dateIssueBill;
    this.xmlBill = xmlBill;
    this.statusBill = statusBill;
    this.typeBill = typeBill;
}

}

下一堂课是

@Configuration
@ComponentScan({ "com.rolandopalermo.facturacion.ec" })
@PropertySource("classpath:application.properties")
public class WebAppConfig {

private static final String PROPERTY_NAME_DATABASE_DRIVER = "org.postgresql.Driver";
private static final String PROPERTY_NAME_DATABASE_PASSWORD = "admin";
private static final String PROPERTY_NAME_DATABASE_URL = "jdbc:postgresql://localhost:5433/sri_data_base";
private static final String PROPERTY_NAME_DATABASE_USERNAME = "postgres";

private static final String PROPERTY_NAME_HIBERNATE_DIALECT = "org.hibernate.dialect.PostgreSQLDialect";
private static final String PROPERTY_NAME_HIBERNATE_SHOW_SQL = "true";
private static final String PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN = "com.rolandopalermo.facturacion.ec.entity";
private static final String PROPERTY_NAME_ENTITYMANAGER_PACKAGES_MAPPING = "com.rolandopalermo.facturacion.ec.entity.SQLXMLType";

@Bean
public DataSource dataSource() {
    DriverManagerDataSource dataSource = null;
    try {
        dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName(PROPERTY_NAME_DATABASE_DRIVER);
        dataSource.setUrl(PROPERTY_NAME_DATABASE_URL);
        dataSource.setUsername(PROPERTY_NAME_DATABASE_USERNAME);
        dataSource.setPassword(PROPERTY_NAME_DATABASE_PASSWORD);

    } catch (Exception e) {
        // TODO: handle exception
    }
    return dataSource;

}

@Bean
public LocalSessionFactoryBean sessionFactory() {
    LocalSessionFactoryBean sessionFactoryBean = null;
    try {
        sessionFactoryBean = new LocalSessionFactoryBean();
        sessionFactoryBean.setDataSource(dataSource());
        sessionFactoryBean.setPackagesToScan(PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN);

        sessionFactoryBean.setHibernateProperties(hibProperties());
    } catch (Exception e) {
        // TODO: handle exception
    }

    return sessionFactoryBean;
}

private Properties hibProperties() {
    Properties properties = null;
    try {
        properties = new Properties();
        properties.put(PROPERTY_NAME_HIBERNATE_DIALECT, PROPERTY_NAME_HIBERNATE_DIALECT);
        properties.put(PROPERTY_NAME_HIBERNATE_SHOW_SQL, PROPERTY_NAME_HIBERNATE_SHOW_SQL);
        properties.put("xml", PROPERTY_NAME_ENTITYMANAGER_PACKAGES_MAPPING);
    } catch (Exception e) {
        // TODO: handle exception
    }

    return properties;
}

@Bean
public HibernateTransactionManager transactionManager() {
    HibernateTransactionManager transactionManager = new HibernateTransactionManager();
    transactionManager.setSessionFactory(sessionFactory().getObject());
    return transactionManager;
}

@Bean
public UrlBasedViewResolver setupViewResolver() {
    UrlBasedViewResolver resolver = new UrlBasedViewResolver();
    resolver.setPrefix("/WEB-INF/pages/");
    resolver.setSuffix(".jsp");
    resolver.setViewClass(JstlView.class);
    return resolver;
}

}

但是当我尝试保存时,它会执行以下错误

 org.postgresql.util.PSQLException: No se ha especificado un valor para el parámetro 5.

0 个答案:

没有答案
相关问题