Tag: spring mvc

这些实体的equals和hashCode(Spring MVC + Hibernate)

有人可以建议我如何做这些实体的equals和hashCode方法? 这是Gara(竞赛)和Agenzia(代理商)之间的多对多关系:一个竞赛有很多代理商,一个代理商可以参加更多竞赛。 我尝试了一些实现但是我得到Stackoverflow错误,或者,当我更新Gara(竞赛)时,我无法更新Agenzie(代理商)的集合,因为我收到此错误: org.springframework.dao.DuplicateKeyException:具有相同标识符值的另一个对象已与会话关联:[com.myApp.model.GaraAgenzia#com.mmyApp.model.GaraAgenziaId@49f]; 嵌套exception是org.hibernate.NonUniqueObjectException:具有相同标识符值的另一个对象已与会话关联:[com.myApp.model.GaraAgenzia#com.myApp.model.GaraAgenziaId@49f] 当我尝试做更新。 谢谢 Gare.java: @Entity @Table(name = “gare”) public class Gara extends BaseEntity implements Serializable { private static final long serialVersionUID = 6395640401966812691L; /* * inizializzo logger */ static Logger logger = LoggerFactory.getLogger(Gara.class); /* * molti a molti gara-agenzia * * EAGER altrimenti da errore: could not initialize proxy – no […]

Spring 4 + Hibernate 5 = org.springframework.orm.jpa.EntityManagerHolder无法强制转换为org.springframework.orm.hibernate5.SessionHolder

好吧,在开始一个新的java项目并集成spring / hibernate等工具时,我是一个完全的初学者。事实上,这是我第一次这样做。 所以我相信这些错误对你们来说是显而易见的。 Guessings: 我期待的会议工厂不是spring注入的工厂。 错误的依赖关系。 错误 [2016-07-28 01:29:14.869] boot – 22234 ERROR [http-nio-8080-exec-1] — [dispatcherServlet]: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.ClassCastException: org.springframework.orm.jpa.EntityManagerHolder cannot be cast to org.springframework.orm.hibernate5.SessionHolder] with root cause java.lang.ClassCastException: org.springframework.orm.jpa.EntityManagerHolder cannot be cast to org.springframework.orm.hibernate5.SessionHolder at org.springframework.orm.hibernate5.HibernateTransactionManager.doGetTransaction(HibernateTransactionManager.java:376) 的pom.xml 4.0.0 […]

使用profile进行Spring集成测试

在我们的Spring Web应用程序中,我们使用Spring bean配置文件来区分三种场景:开发,集成和生产。 我们使用它们连接到不同的数据库或设置其他常量。 使用Spring bean配置文件非常适合更改Web应用程序环境。 我们遇到的问题是我们的集成测试代码需要针对环境进行更改。 在这些情况下,集成测试会加载Web应用程序的应用程序上下文。 这样我们就不必重新定义数据库连接,常量等(应用DRY原则)。 我们设置了如下的集成测试。 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = [“classpath:applicationContext.xml”]) public class MyTestIT { @Autowired @Qualifier(“myRemoteURL”) // a value from the web-app’s applicationContext.xml private String remoteURL; … } 我可以使用@ActiveProfiles使其在本地运行,但这是硬编码的,导致我们的测试在构建服务器上失败。 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = [“classpath:applicationContext.xml”]) @ActiveProfiles(“development”) public class MyTestIT { … } 我也尝试使用@WebAppConfiguration希望它可能以某种方式从Maven导入spring.profiles.active属性,但这不起作用。 另外需要注意的是,我们还需要配置代码,以便开发人员可以运行Web应用程序,然后使用IntelliJ的测试运行器(或其他IDE)运行测试。 这对于调试集成测试来说要容易得多。

使用Spring Hibernate的Google Appengine Cloud SQL问题

我在Amazon EC2上使用MySQL运行Spring Hibernate Application。 我正在考虑将我的应用程序移植到Google App Engine,因为Google现在支持使用Google Can SQL的MySQL。 因此,将我现有的应用程序配置为Google App Engine Web应用程序,然后编译代码而不会出现任何错误。 我没有更改任何内容到我现有的应用程序,它编译并创建了所需的表,服务器已成功启动。 但是,当运行通过hibernate访问数据库的应用程序时,我收到以下错误。 org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:596) at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371) at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:335) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) at $Proxy30.findById(Unknown Source) at com.openentry.catgen.services.impl.WebsiteServiceImpl.getMasterDomain(WebsiteServiceImpl.java:99) 我正在为我的实体类使用注释。 有什么我需要改变的吗? 下面是我的applicationContext.xml ${hibernate.dialect} ${hibernate.show_sql} ${hibernate.format_sql} ${hibernate.generate_statistics} ${hibernate.connection.useUnicode} […]

Spring MVC Mapping问题

我有我认为是一个简单的Spring MVC应用程序。 但是,我似乎可以正确设置requestMappings。 奇怪的是,日志显示url被映射到适当的控制器,但Dispatcher似乎无法在运行时找到它。 我们欢迎所有的建议: 日志 INFO: Mapped URL path [/app/index] onto handler [com.noisyair.whatisayis.web.MainController@420a52f] Jan 11, 2010 2:14:21 PM org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler INFO: Mapped URL path [/app/index.*] onto handler [com.noisyair.whatisayis.web.MainController@420a52f] Jan 11, 2010 2:14:21 PM org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler INFO: Mapped URL path [/app/index/] onto handler [com.noisyair.whatisayis.web.MainController@420a52f] Jan 11, 2010 2:14:21 PM org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler INFO: Mapped URL path […]

在spring用AOP记录?

我是新来的,在我的办公室里。 所以我没有指导。 我需要使用log4j使用AOP实现日志记录。 我在基本的spring MVC示例中实现了没有AOP的日志记录? 在没有记录的aspectJ下使用aspectJ在AOP做了小样本(刚刚制作了Sysout )? 我不知道如何整合它? 任何人都可以给我一个启动想法吗? 肯定赞赏好的答案……

无法在ClassReader中加载由ArrayIndexOutOfBoundsException引起的ApplicationContext

当我运行junit测试类时,出现以下exception? 我怎么解决这个问题? Failed to load ApplicationContext java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:157) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:109) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:321) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:211) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:288) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:290) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174) Caused by: java.lang.ArrayIndexOutOfBoundsException: 8 at org.springframework.asm.ClassReader.readUnsignedShort(Unknown Source) at org.springframework.asm.ClassReader.(Unknown Source) at org.springframework.asm.ClassReader.(Unknown Source) at org.springframework.asm.ClassReader.(Unknown Source) at org.springframework.core.type.classreading.SimpleMetadataReader.(SimpleMetadataReader.java:48) at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:80) at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:101) […]

Spring MVC:不反序列化JSON请求体

我正在开发一个Spring MVC项目,我需要完成的任务之一要求我在POST请求中通过用户发送一串JSON数据。 我知道Spring会使用Jackson将JSON反序列化为对象,但如果我尝试类似以下内容: @RequestMapping(value = “/test”, method = RequestMethod.POST) public void doSomething(@RequestBody String json) { // do something } 我只是回到了HTTP 400 Bad Request(“客户端发送的请求在语法上是不正确的。”)。 如何将客户端发送的原始JSON作为字符串?

Spring RequestMapping用于生成和使用JSON的控制器

使用多个Spring控制器来使用和生成application/json ,我的代码充满了长注释,如: @RequestMapping(value = “/foo”, method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE) 有没有办法生成一个“复合/inheritance/聚合”注释与consumes和produces 默认值,这样我可以改为写下这样的东西: @JSONRequestMapping(value = “/foo”, method = RequestMethod.POST) 我们如何定义上面的@JSONRequestMapping ? 注意传入的value和method就像在@RequestMapping中一样,如果默认值不合适,也可以传入consumes或produces 。 我需要控制我要回来的东西。 我想要produces /使用注释方法,以便获得适当的Content-Type标头。

如何实现@RequestMapping自定义属性

例如 ,进行子域映射 。 本文: 在Google App Engine上为同一应用程序管理多个域和子域建议解析Filter上的子域并将变量分配给ServletRequest头。 然后映射将如下所示: @RequestMapping(value = “/path”, headers=”subdomain=www”) public String subsiteIndexPage(Model model,HttpServletRequest request) { … } 如果我们想创建自定义@RequestMapping属性,例如子域,例如。 创建这样的映射: @RequestMapping(value = “/some/action”, subdomain = “www”) public String handlerFunction(){ … } 我们应该覆盖@RequestMapping @interface定义并覆盖RequestMappingHandlerMapping受保护的方法,我们自己的实现 (如JIRA所述:“ 允许自定义请求映射条件SPR-7812 ”)。 这样对吗? 任何人都可以提供一个提示,如何实现这一function? 想法1 : 正如原始jira线程所建议的那样,就是创建自己的RequestCondition实现 有一个项目在github上使用这个解决方案: https : //github.com/rstoyanchev/spring-mvc-31-demo/ 和相关的问题: 在Spring mvc 3.1中添加自定义RequestCondition 也许类型和方法的@Subdomain(“www”)映射是可能的解决方案吗? 链接到forum.springsource.com上的相同问题