求解:我想知道spring boot的controller类是怎么指定https://www.198bona.com跳转到HTML页面的?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求解:我想知道spring boot的controller类是怎么指定https://www.198bona.com跳转到HTML页面的?相关的知识,希望对你有一定的参考价值。
spring boot的controller类是怎么指定https://www.198bona.com跳转到html页面的?
html静态文件放在static下,用@Controller注解,以下第一种方式成功,第二种方式失败。一、
@Controller
@RequestMapping("/")
public class IndexController
public ModelAndView index()
return new ModelAndView("index");
二、
@Controller
public class IndexController
@RequestMapping("/")
public ModelAndView index()
return new ModelAndView("index");
参考技术A 域名直接跳到项目里??
Spring Boot + Hibernate JPA 配置使用 EntityManager
【中文标题】Spring Boot + Hibernate JPA 配置使用 EntityManager【英文标题】:Spring Boot + Hibernate JPA configuration to use EntityManager 【发布时间】:2020-03-16 16:37:21 【问题描述】:首先我想写: 我知道为 Spring Boot 配置 Hibernate JPA 并不是一个好主意,也知道如何说“它很愚蠢”,因为 Spring Boot 为您提供了自动配置等。 好的,我知道,但我正在自学 Spring 和 Hibernate,我想逐步配置 Hibernate 并注入 Spring Context。 所以,我的问题是,我配置 Hibernate 并将类写入配置,它使用“persitence.xml”。 @PersistenceContext 的配置正常,EntityManager 工作正常。但是如果 @Entity 不包含在“persistence.xml”文件中,则不会将其添加到 Hibernate 上下文中。
build.gradle 是用于 jar 文件的,这就是问题所在?
plugins
id 'org.springframework.boot' version '2.1.9.RELEASE'
id 'io.spring.dependency-management' version '1.0.8.RELEASE'
id 'java'
group = 'com.kamil'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '8'
repositories
mavenCentral()
dependencies
implementation 'org.springframework.boot:spring-boot-starter'
compile("org.springframework.boot:spring-boot-starter-web")
testImplementation 'org.springframework.boot:spring-boot-starter-test'
compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.2.0.RELEASE'
/* compile group: 'org.hibernate', name: 'hibernate-core', version: '5.4.6.Final'
compile group: 'org.hibernate', name: 'hibernate-entitymanager', version: '5.4.8.Final'*/
compile("com.h2database:h2")
compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.18'
JPA 的配置类:
@Configuration
@EnableJpaRepositories
@EnableTransactionManagement
public class HibernateConfiguration
@Bean(name = "entityManagerFactory")
public LocalEntityManagerFactoryBean entityManagerFactoryBean()
LocalEntityManagerFactoryBean factoryBean = new LocalEntityManagerFactoryBean();
factoryBean.setPersistenceUnitName("MySQL");
return factoryBean;
@Bean(name = "transactionManager")
public JpaTransactionManager JpaTransactionManagerBean()
JpaTransactionManager transactionManager = new JpaTransactionManager();
transactionManager.setEntityManagerFactory(entityManagerFactoryBean().getObject());
System.out.println("EMF "+entityManagerFactoryBean().getObject().toString());
return transactionManager;
当我在“persistence.xml”文件中时,实体就可以了。但如果没有“未知实体”正在抛出。 是否可以避免在“persistence.xml”中使用该应用程序配置中的实体注释?这意味着 Spring Boot jar + Hibernate JPA ?
我知道那是 Spring Boot 中的 Spring Data JPA,但如果我以这种形式进行配置,我会看到 JPA 的更多详细信息。我使用 SpringBoot、Spring Framework 和 Hibernate 文档。
感谢您的回复。如果我理解错了,请纠正我。
【问题讨论】:
您的意思是要扫描包含实体的包吗?LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean(); factoryBean.setPackagesToScan("com.abc.data");
?
但我使用的是 LocalEntityManagerFactoryBean。而且那个对象没有它的方法。我应该将配置更改为您描述的那个吗?
是的,如果你想使用扫描。在LocalContainerEntityManagerFactoryBean 文档中阅读更多内容。
好的。所以我在这种情况下 jar Spring Boot 是不是避免在 persistence.xml 中类的任何选项?
你可以试试这个:<property name="hibernate.archive.autodetection" value="class"/>
输入你的persistence.xml
,见***.com/questions/1780341/…
【参考方案1】:
添加我的 cmets 作为答案,如果有帮助,请告诉我:
来自 LocalContainerEntityManagerFactoryBean 文档:
与 LocalEntityManagerFactoryBean 一样,配置设置是 通常从 META-INF/persistence.xml 配置文件中读取,驻留在 在类路径中,按照一般的JPA配置 合同。但是,这个 FactoryBean 更灵活,您可以 覆盖 persistence.xml 文件的位置,指定 JDBC 要链接到的数据源等。
不使用 LocalEntityManagerFactoryBean ,您可以这样做:
LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean();
factoryBean.setPackagesToScan("pkg.containing.entities");
如果你想继续使用persistence.xml
和LocalEntityManagerFactoryBean
,你可以通过在你的persistence.xml 文件中添加以下内容来尝试Hibernate 自动检测功能
<property name="hibernate.archive.autodetection" value="class"/>
请参阅this 了解更多关于如何为这种情况设置persistence.xml
的信息。
【讨论】:
感谢您的回答。 Previosu 我在*** 上找到了以下信息:以上是关于求解:我想知道spring boot的controller类是怎么指定https://www.198bona.com跳转到HTML页面的?的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot 和 Html:请求的资源上不存在“Access-Control-Allow-Origin”标头
Spring security3.1.x session问题,求解
spring boot + gradle + mybatis
Spring Boot 默认异常映射到标准 HTTP 状态码