Questions tagged «java»

Java是一种流行的高级编程语言。如果您在使用或理解语言本身时遇到问题,请使用此标签。这个标签很少单独使用,最常与[spring],[spring-boot],[jakarta-ee],[android],[javafx],[gradle]和[maven]结合使用。

30
org.hibernate.HibernateException:如果未设置“ hibernate.dialect”,则对DialectResolutionInfo的访问不能为null
我正在尝试运行一个通过spring-jpa使用休眠模式的spring-boot应用程序,但出现此错误: Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:104) at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:71) at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:205) at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111) at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234) at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206) at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1885) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1843) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843) at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:398) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842) at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:152) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:336) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:318) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1613) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1550) ... 21 …

21
如果私有帮助器方法可以是静态的,则它们应该是静态的
假设我有一个要实例化的类。我在类中有几个私有的“帮助器”方法,它们不需要访问任何类成员,而仅对它们的参数进行操作,并返回结果。 public class Example { private Something member; public double compute() { double total = 0; total += computeOne(member); total += computeMore(member); return total; } private double computeOne(Something arg) { ... } private double computeMore(Something arg) {... } } 有没有指定任何特别的原因computeOne,并computeMore为静态方法-或任何特别的理由不? 将它们设置为非静态无疑是最容易的,即使它们可以肯定是静态的而不会引起任何问题。

4
Mockito验证方法调用的顺序/顺序
有没有一种方法可以验证在Mockito中是否曾经methodOne调用过methodTwoa? public class ServiceClassA { public void methodOne(){} } public class ServiceClassB { public void methodTwo(){} } public class TestClass { public void method(){ ServiceClassA serviceA = new ServiceClassA(); ServiceClassB serviceB = new ServiceClassB(); serviceA.methodOne(); serviceB.methodTwo(); } }

25
如何在记录器中对消息执行JUnit断言
我有一些正在测试的代码,它们呼吁Java记录器报告其状态。在JUnit测试代码中,我想验证此记录器中是否输入了正确的日志条目。遵循以下内容: methodUnderTest(bool x){ if(x) logger.info("x happened") } @Test tester(){ // perhaps setup a logger first. methodUnderTest(true); assertXXXXXX(loggedLevel(),Level.INFO); } 我想可以使用专门改编的记录器(或处理程序或格式化程序)来完成此操作,但我希望重用已存在的解决方案。(而且,老实说,我不清楚如何从记录器中获取logRecord,但是假设这是可能的。)
205 java  logging  junit  assert 

11
无法找到到请求目标的有效证书路径-即使导入证书后也会出错
我有一个Java客户端尝试使用自签名证书访问服务器。 当我尝试发布到服务器时,出现以下错误: 无法找到到请求目标的有效认证路径 在对该问题进行了一些研究之后,我进行了以下工作。 将我的服务器域名保存为root.cer文件。 在我的Glassfish服务器的JRE中,运行了此命令: keytool -import -alias example -keystore cacerts -file root.cer 要检查证书是否成功添加到我的cacert中,我这样做: keytool -list -v -keystore cacerts 我可以看到该证书存在。 然后,我重新启动了Glassfish,并退出了“职位”。 我仍然收到相同的错误。 我有一种感觉,这是因为我的Glassfish实际上并未读取我修改过的cacert文件,而是可能读取了其他文件。 你们中有人遇到过这个问题,可以将我推向正确的方向吗?
205 java  ssl  keytool 

5
如何将DecimalFormat的小数点分隔符从逗号更改为点/点?
我有一个疯狂的方法,可以将BigDecimal值转换为漂亮且可读的字符串。 private String formatBigDecimal(BigDecimal bd){ DecimalFormat df = new DecimalFormat(); df.setMinimumFractionDigits(3); df.setMaximumFractionDigits(3); df.setMinimumIntegerDigits(1); df.setMaximumIntegerDigits(3); df.setGroupingSize(20); return df.format(bd); } 但是,它还会产生一个所谓的分组分隔符",",该分隔符使我的所有值如下所示: xxx,xxx 我确实需要将分隔符设置为点或点而不是逗号。有人知道如何完成这个小壮举吗? 我已阅读本,尤其是这种死亡,但现在我无法找到一个方法来完成这件事。我是否以错误的方式处理?有更优雅的方法吗?甚至可能是一个解决方案,说明了不同的本地号码表示形式,因为按照欧洲标准,逗号将是完美的。


4
补水是什么意思?
当有人谈论给对象补水时,这是什么意思? 我在网上看到一个名为Hydrate的Java项目,该项目可以在不同表示形式(RDMS到OOPS到XML)之间转换数据。这是物体水化的一般含义吗?在表示之间转换数据?这是否意味着要从存储的表示形式重建对象层次结构?
204 java  oop 


12
如何在Spring中定义List bean?
我正在使用Spring定义应用程序中的阶段。已配置为将必要的类(此处称为Configurator)与阶段一起注入。 现在,我需要另一个名为的类中的阶段列表LoginBean。在Configurator不提供访问其阶段的名单。 我不能改变班级Configurator。 我的想法: 定义一个名为Stages的新bean,并将其注入到Configurator和中LoginBean。我的想法是,我不知道如何转换此属性: <property ...> <list> <bean ... >...</bean> <bean ... >...</bean> <bean ... >...</bean> </list> </property> 变成豆 这样的事情不起作用: <bean id="stages" class="java.util.ArrayList"> 有人可以帮我吗?
203 java  spring 

13
C#和Java…中的泛型与C ++中的模板之间有什么区别?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 6年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我主要使用Java,泛型相对较新。我一直在阅读Java做出了错误的决定,或者.NET具有更好的实现等。 那么,C ++,C#,Java在泛型之间的主要区别是什么?每个优点/缺点?
203 c#  java  c++  generics  templates 

25
您如何实施重试捕获?
Try-catch旨在帮助处理异常。这意味着它将以某种方式帮助我们的系统更强大:尝试从意外事件中恢复。 我们怀疑执行和指令(发送消息)时可能会发生某些事情,因此将其包含在try中。如果发生了几乎不可预料的事情,我们可以采取一些措施:编写渔获物。我不认为我们打电话来只是记录异常。我认为catch块旨在为我们提供从错误中恢复的机会。 现在,假设我们从错误中恢复了,因为我们可以修复错误所在。重试可能是非常好的: try{ some_instruction(); } catch (NearlyUnexpectedException e){ fix_the_problem(); retry; } 这将很快陷入永恒的循环,但是假设fix_the_problem返回true,然后我们重试。鉴于Java中没有这样的东西,您将如何解决此问题?解决该问题的最佳设计代码是什么? 鉴于我已经知道我所要的东西并没有被Java直接支持,所以这就像一个哲学问题。


8
如何使用JPA和Hibernate映射组合键?
在此代码中,如何为组合键生成Java类(如何在休眠状态下组合键): create table Time ( levelStation int(15) not null, src varchar(100) not null, dst varchar(100) not null, distance int(15) not null, price int(15) not null, confPathID int(15) not null, constraint ConfPath_fk foreign key(confPathID) references ConfPath(confPathID), primary key (levelStation, confPathID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

20
在遍历和删除ArrayList中的元素时如何避免java.util.ConcurrentModificationException
我有一个要迭代的ArrayList。在迭代它时,我必须同时删除元素。显然,这引发了java.util.ConcurrentModificationException。 解决此问题的最佳实践是什么?我应该先克隆列表吗? 我删除的不是循环本身的元素,而是代码的另一部分。 我的代码如下所示: public class Test() { private ArrayList<A> abc = new ArrayList<A>(); public void doStuff() { for (A a : abc) a.doSomething(); } public void removeA(A a) { abc.remove(a); } } a.doSomething可能打电话Test.removeA();
203 java  arraylist  foreach 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.