Tag: 映射

获取org.hibernate.MappingException:没有JDBC类型的Dialect映射:-4exception?

我在query.list()行得到以下exception: org.hibernate.MappingException: No Dialect mapping for JDBC type: -4 at org.hibernate.dialect.TypeNames.get(TypeNames.java:56) at org.hibernate.dialect.TypeNames.get(TypeNames.java:81) at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:369) at org.hibernate.loader.custom.CustomLoader$Metadata.getHibernateType(CustomLoader.java:559) at org.hibernate.loader.custom.CustomLoader$ScalarResultColumnProcessor.performDiscovery(CustomLoader.java:485) at org.hibernate.loader.custom.CustomLoader.autoDiscoverTypes(CustomLoader.java:501) at org.hibernate.loader.Loader.getResultSet(Loader.java:1787) at org.hibernate.loader.Loader.doQuery(Loader.java:662) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) at org.hibernate.loader.Loader.doList(Loader.java:2211) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2095) at org.hibernate.loader.Loader.list(Loader.java:2090) at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289) at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1695) at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142) at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:152) 以下是我的配置文件: com.mysql.jdbc.Driver mysql jdbc:mysql://localhost:3306/mydatabase root mydatabase org.hibernate.dialect.MySQL5InnoDBDialect 当我尝试将应用程序运行到Eclipse IDE中时,此exception不会出现,但是当我创建jar应用程序并运行时,我只是得到它。 提前致谢…

Map 在Java中意味着什么?

Map在Java中意味着什么? 我看过网上但似乎找不到任何文章。 编辑:我在MP3 Duration Java上发现了这个

内存有效的多值映射

嗨,我有以下问题:我在MultiValueMap存储字符串和相应的整数值列表MultiValueMap我存储大约13000亿字符串,一个字符串最多可以有500或更多值。 对于每个值,我将在地图上随机访问。 所以最糟糕的情况是13 000 000 * 500点拨电话。 现在地图的速度很快但内存开销却很高。 MultiValueMap就是HashMap/TreeMap<String, <ArrayList> 。 HashMap和TreeMap都有很多内存开销。 一旦完成,我就不会修改地图,但我需要它在程序中随机访问的速度要快且尽可能小。 (我将它存储在磁盘上并在启动时加载它,序列化的映射文件占用大约600mb但在内存中大约需要3gb?) 最有效的内存是将String存储在已排序的字符串数组中,并为值提供相应的二维int数组。 因此访问将是字符串数组上的二进制搜索并获取相应的值。 现在我有三种方法可以实现目标: 我使用一个排序的MultivalueMap(TreeMap)来创建所有的东西。在我完成获取所有值之后,我通过调用map.keyset().toArray(new String[0]);获取字符串数组map.keyset().toArray(new String[0]); 创建一个二维int数组并从多值映射中获取所有值。 Pro:它易于实现,在创建过程中仍然很快。 Con:从Map到Arrays的复制过程中占用的内存更多。 我从一开始就使用Arrays或者ArrayLists,并将所有内容存储在Pro:最少的内存开销。 Con:这将非常慢,因为每次添加一个新Key时我都必须对Array进行排序/复制。另外,我需要实现自己的(可能更慢)排序,以保持相应的int数组的顺序相同字符串。 难以实施 我使用Arrays和MultivalueMap作为缓冲区。 程序完成创建阶段的10%或20%后,我会将值添加到数组并保持顺序,然后启动一个新的Map。 Pro:足够的速度和足够的内存效率。 骗局:难以实施。 这些解决方案都不适合我。 您是否知道此问题的任何其他解决方案,可能是内存高效(MultiValue)Map实现? 我知道我可以使用数据库,所以不要把它作为答案发布。 我想知道如何在不使用数据库的情况下做到这一点。

使用java api配置elasticsearch映射

在索引之前,我有一些我不想分析的弹性搜索字段。 我已经读过,正确的方法是改变索引映射。 现在我的映射看起来像这样: { “test” : { “general” : { “properties” : { “message” : { “type” : “string” }, “source” : { “type” : “string” } } } } } 我希望它看起来像这样: { “test” : { “general” : { “properties” : { “message” : { “type” : “string”, “index” : “not_analyzed” }, “source” : { […]

jackson杰森类型映射内部类

我正在尝试为作为JSON传入的对象创建内部类类型,但是虽然我已经阅读了这里以及Jackson的网站,但我似乎无法获得正确的组合,所以如果其他人有任何指针他们会非常感激。 我在下面发布了一些片段并删除了所有的getter和setter,我没想到他们需要发帖。 我正在使用Jackson 2.2。 我试图反序列化的类: public class Settings { private int offset; private int limit; private String type; private Map criteria; public class Criteria { private String restriction; private Object value; } } 我用来反序列化的代码: ObjectMapper om = new ObjectMapper(); TypeFactory tf = om.getTypeFactory(); JavaType map = tf.constructMapLikeType( Map.class, String.class, Criteria.class ); JavaType type = typeFactory.constructType( […]

属性文件,其中列表作为单个键的值

对于我的程序,我想从属性文件和键的相关值列表中读取一个键。 最近我这样做了 public static Map<String,List>categoryMap = new Hashtable<String, List>(); Properties prop = new Properties(); try { prop2.load(new FileInputStream(/displayCategerization.properties)); Set keys = prop.keySet(); List categoryList = new ArrayList(); for (Object key : keys) { categoryList.add((String)prop2.get(key)); LogDisplayService.categoryMap.put((String)key,categoryList); } System.out.println(categoryList); System.out.println(“Category Map :”+LogDisplayService.categoryMap); keys = null; prop = null; } catch (Throwable e) { e.printStackTrace(); } 和我的属性文件如下 – […]

如果Set包含带有一些字符串值的对象,如何检入java?

我有一组对象。 每个对象都有String值。 我需要选择具有this值等于“direction”的所有对象。 没有迭代集合是否可能? 谢谢。

Hibernate单向父/子关系 – delete()对子表而不是删除执行更新

如果我从父表中删除记录,我希望删除子表中的相应记录。 如何从Child表中删除Hibernate,而不是尝试使用null更新? 我正在使用Hibernate 3,但目前无法使用注释。 我在下面附上了HBM,DAO等的副本。 – 先感谢您 尝试从父/子关系中的表中删除数据时,我收到以下错误: Testcase: testDelete(com.dressbarn.imbo.model.data.hibernate.dao.CharityTransferDAOTest): Caused an ERROR Hibernate flushing: Could not execute JDBC batch update; uncategorized SQLException for SQL [update RMS12.DRS_CHARITY_TRANSFER_ITEM set TSF_NO=null, TSF_SEQ_NO=null where TSF_NO=?]; SQL state [72000]; error code [1407]; ORA-01407: cannot update (“RMS12″.”DRS_CHARITY_TRANSFER_ITEM”.”TSF_NO”) to NULL ; nested exception is java.sql.BatchUpdateException: ORA-01407: cannot update (“RMS12″.”DRS_CHARITY_TRANSFER_ITEM”.”TSF_NO”) to NULL […]

如何在Dozer中映射集合

我想做的事情如下: ArrayList objects = new ArrayList(); … DozerBeanMapper MAPPER = new DozerBeanMapper(); … ArrayList newObjects = MAPPER.map(objects, …); 假设: com.me.CustomObject com.me.NewObject id id2 我试过了 : ArrayList holder = new ArrayList(); MAPPER.map(objects, holder); 但是持有者对象是空的。 我还玩了改变第二个参数没有任何运气…

使用两个(或更多)对象作为HashMap键

我想将某些对象存储在HashMap中。 问题是,通常只使用一个对象作为密钥。 (例如,您可以使用String。)我想要使用多个对象。 例如,Class和String。 有没有一种简单而干净的方法来实现它?