Hibernate 5.2.2:没有EntityManager的持久性提供程序

Hibernate 5.1.1和5.2.2之间有什么变化? 如果我使用5.2.2,我将收到一条错误消息“没有为EntityManager命名为pu的持久性提供程序”。 完全相同的配置适用于5.1.1。 我应该如何更改代码以使5.2.2工作? 的pom.xml 4.0.0 jpatest jpatest 0.0.1-SNAPSHOT 5.2.2.Final junit junit 4.12 org.postgresql postgresql 9.4.1209.jre7 org.hibernate hibernate-core ${hibernate.version} org.hibernate hibernate-entitymanager ${hibernate.version} src / main / resources / META-INF中的persistence.xml org.hibernate.ejb.HibernatePersistence <!– –> 创建EntityManager factory = Persistence.createEntityManagerFactory(“pu”); em = factory.createEntityManager(); tx = em.getTransaction();

Gson使用多种对象类型反序列化JSON数组

我有一些奇怪的JSON像: [ { “type”:”0″, “value”:”my string” }, { “type”:”1″, “value”:42 }, { “type”:”2″, “value”: { } } ] 基于某些字段,数组中的对象是某种类型。 使用Gson,我的想法是有一个TypeAdapterFactory将那些特定类型的委托适配器发送到TypeAdapter,但我很想知道读取“type”字段的好方法,以了解要创建的类型。 在TypeAdapter中, Object read(JsonReader in) throws IOException { String type = in.nextString(); switch (type) { // delegate to creating certain types. } } 我会假设“类型”字段在我的JSON中排在第一位。 有没有一种可行的方法来消除这种假设?

我们可以在Web服务类中实现方法重载吗?

我想在Java Web服务类中实现方法重载,如下所示: public String myMethod(User user) { // My code } public String myMethod(User[] user) { for(int i=0; i<user.length; i++) { myMethod(user[i]); } } 如果我将单个User对象转发到myMethod() ,它应该触发第一个方法,如果我发送一个User数组,它应该触发第二个方法。 在WSDL文件中,它只显示一个方法。 但是,如果我尝试为两个调用调用@WebMethod(operationName=””) ,我将无法生成WSDL文件。

log4j和线程上下文类加载器

我是Java的新手,刚刚开始弄清楚类加载器的概念。 现在我对log4j有一些关于它使用线程上下文类加载器的问题。 我收到以下错误: A “org.apache.log4j.ConsoleAppender” object is not assignable to a “org.apache.log4j.Appender” variable. The class “org.apache.log4j.Appender” was loaded by [java.net.URLClassLoader@105691e] whereas object of type “org.apache.log4j.ConsoleAppender” was loaded by [sun.misc.Launcher$AppClassLoader@16930e2]. Could not instantiate appender named “CONSOLE”. A “org.apache.log4j.ConsoleAppender” object is not assignable to a “org.apache.log4j.Appender” variable. The class “org.apache.log4j.Appender” was loaded by [java.net.URLClassLoader@105691e] whereas object of […]

如何在java中设置八进制的值?

我正在尝试编写以下代码。但它给了我错误,请帮助我。 int six=06; int seven=07; int abc=018; int nine=011; System.out.println(“Octal 011 =”+nine); System.out.println(“octal O18 =” + abc); 为什么我不能给018和019变量。我可以给变量值020和021。 为什么会这样? 这背后的原因请告诉我。 我得到了以下错误 integer number too large: 018 int eight=018;

static关键字如何在Java中工作?

我正在从头开始阅读Java教程 ,我对字段或变量上的static关键字有疑问。 正如Java 在这里所说: Class Variables (Static Fields)类变量是使用static修饰符声明的任何字段; 这告诉编译器这个变量只有一个副本存在,无论该类被实例化多少次。 定义特定种类的自行车的齿轮数量的区域可以标记为静态,因为从概念上讲,相同数量的齿轮将适用于所有情况。 有了这个,我想如果你有一个对象(在这种情况下,是一个类Bicycle一个实例)和它内部的一个字段,那么它是static ,如果你正在为bicycle1或者bicycle2 ,它的静止字段将具有相同的价值。 我错了还是我理解得很好? 我的意思是,如果我有: Bicycle bicycle1 = new Bicycle(); Bicycle bicycle2 = new Bicycle(); 在class级Bicycle我有一个static字段,如: class Bicycle{ static int gears; //Methods to set and get gears } 在bicycle1我将齿轮的值设置为7: bicycle1.setGears(7); 那么如果我试着在bicycle2获得齿轮的值,我应该得到与我在bicycle1设置的相同的值,对吗? System.out.println(bicycle2.getGears()); //7 好吧,这就是我怀疑的地方,因为正如Java在上面提到的引用中所说: 这告诉编译器存在这个变量的正好一个副本 这个副本存放在哪里? 对象如何访问该副本? 什么时候创建这个副本?

java.lang.IllegalArgumentException:找不到片段FmMenu的id 0x7f090047(“项目名称”:id / content)的视图

只是想与我为客户做的项目分享一个问题。 每当我进入我的IntroActivity并按下按钮将我带到MenuActivity ,它就会崩溃。 这是错误日志: 02-16 18:49:49.393 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ No view found for id 0x7f090047 (com.wlodsgn.bunbunup:id/linear) for fragment FmMenu{b1e537f0 #0 id=0x7f090047} 02-16 18:49:49.393 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ Activity state: 02-16 18:49:49.423 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ Local FragmentActivity b1e1d1b8 State: 02-16 18:49:49.423 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ mCreated=falsemResumed=false mStopped=false mReallyStopped=false 02-16 18:49:49.423 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ mLoadersStarted=false 02-16 18:49:49.443 1208-1208/com.wlodsgn.bunbunup E/FragmentManager﹕ FragmentManager misc state: 02-16 18:49:49.443 […]

将Drawable转换为BLOB数据类型

public Drawable icon; \\ Some value in this field 我正在SQLite Manager中创建一个数据库。 我想将icon存储到数据库中。 另一个字段显示正确,但是当我使用数据类型为BLOB的icon字段时,它不会显示。 public void prettyPrint() { public String appname = “asd”; public String pname = “asd”; public String versionName = “asd”; public int versionCode = 0; public Drawable icon=”android.im….”; Insall_app_db i1 = new Insall_app_db(); i1.createDatabse(“appInfo3”, getBaseContext()); i1.createTable(“off_appinfo4”, getBaseContext()); i1.insertDataUser(“off_appinfo4”, appid ,appname,pname, versionName, versionCode, icon, […]

java中的超时方法

在java类中,我有一个有时需要很长时间才能执行的方法。 也许它挂在那个方法流程中。 我想要的是如果方法没有在特定时间内完成,程序应退出该方法并继续其余的流程。 请告诉我有没有办法处理这种情况。

将字节数组转换为Java中的映像 – 不知道类型

听起来很简单吧? 使用 ImageIO.read(new ByteArrayInputStream(bytes)); 这是皱纹。 由于某种原因,它将jpeg检测为bmp,这是我调用时返回的第一个ImageReader ImageInputStream iis = ImageIO.createImageInputStream(new ByteArrayInputStream(bytes)); Iterator readers=ImageIO.getImageReaders(iis); 这会导致图像损坏。 有没有办法告诉java没有直接查看标头的字节,并且失败,是否有人知道不同图像的字节标头的良好参考? 只是让你们知道我还在努力。 如果/我有答案,我会通知你。 到目前为止,我感谢你们所有人的回复。