小编Vmx*_*xes的帖子

IntelliJ IDEA持久性支持Spring Boot项目

我尝试使用JPA创建一个Spring Boot 2项目,以使用Hibernate访问MySQL数据库.我已经在http://start.spring.io/上创建了一个Gradle项目,它具有JPA和MySQL依赖性并导入IntelliJ IDEA 2017.1 Ultimate

默认情况下,不存在持久性工具窗口.我已经搜索了解决方案并找到了许多不同的答案,并且知道我有点困惑如何配置我的项目.这样做的正确方法是什么?

  1. 我应该在项目中添加哪些框架支持?

    • Spring Data JPA
    • 过冬
    • JPA
  2. 我该如何添加它们?

    • 右键单击我的模块和"添加框架支持"(我可以在这里选择Spring Data JPA和Hibernate)
    • 项目结构 - > Facets - > Add(我可以在这里选择Hibernate和JPA)
  3. 如果我的项目名称是db并且我有db_main和db_test模块,那么我应该将Facet附加到哪个模块?

    • D b
    • db_main

目前我添加了JPA Facet和Hibernate提供程序,并添加了persistence.xml.所以我有Persistence窗口.

但是,如果我尝试生成实体,我选择数据源,表,包但没有任何反应.我的意思是没有错误消息只是窗口关闭就好像它会成功但是xml没有变化并且没有生成实体.

java spring hibernate jpa intellij-idea

9
推荐指数
1
解决办法
5747
查看次数

如何处理浏览器扩展引起的水合错误

作为一个NextJS新手,我想问一下如何处理浏览器扩展引起的水合错误。

如果我禁用所有浏览器扩展或使用隐身模式,我的应用程序工作正常 - 控制台上没有错误。然而,使用普通的 Chrome 浏览器窗口时,控制台充满了由 LastPass、Grammarly 和/或其他一些扩展程序引起的错误。

错误信息是:

Uncaught Error: Hydration failed because the initial UI does not match what was rendered on the server.

问题是,扩展在 HTML 代码中添加了一些额外的标签、属性,因此它确实不匹配。

在现实生活中,我不能要求用户禁用扩展或使用隐身模式。

那么我应该如何处理此类错误呢?

我使用 React 18.2 和 NextJS 13.2

reactjs next.js

9
推荐指数
0
解决办法
963
查看次数

Inno Setup:扩展 Windows 默认应用程序列表

如何将我的应用程序列在 Windows 默认应用程序列表中?

我有一个特殊的基于 Java 的视频播放器应用程序,其中包含一个由 Inno Setup 创建的安装程序。我希望我的应用程序列在 Windows 10 上的可选视频播放器列表中(我也不知道如何使用较旧的 Windows 版本执行此操作)。

java windows installation inno-setup

6
推荐指数
1
解决办法
865
查看次数

可执行的Spring Boot 2 jar

我尝试安装我的Spring Boot应用程序.作为第一步,我尝试创建一个可执行jar,如下所述:https: //docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

但是,如果我使用以下行扩展我的gradle脚本(我正在使用gradle 4.4):

springBoot {
    executable = true
}
Run Code Online (Sandbox Code Playgroud)

然后构建失败并出现错误:

FAILURE: Build failed with an exception.

* Where:
Build file 'D:\spring\app\build.gradle' line: 15

* What went wrong:
A problem occurred evaluating root project 'app'.
> Could not find method springBoot() for arguments [build_3mwux4us8m2jn9yfcogqkbm4y$_run_closure1@506b241f] on root project 'app' of type org.gradle.api.Project.
Run Code Online (Sandbox Code Playgroud)

我的构建脚本如下:

buildscript {
    ext {
        springBootVersion = '2.0.0.M6'
    }
    repositories {
        mavenCentral()
        maven { url "https://repo.spring.io/snapshot" }
        maven { url "https://repo.spring.io/milestone" }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") …
Run Code Online (Sandbox Code Playgroud)

gradle spring-boot

6
推荐指数
1
解决办法
4644
查看次数

PHP 7返回类型提示

根据PHP 7返回类型提示已经有很多问题,以及如果将类定义为返回类型,为什么不能返回null.像这样:处理PHP 7返回类型的正确方法.答案通常说这不是一个问题,好像一个函数应该返回一个类然后返回null可能是一个例外.也许我错过了什么,但我真的不明白为什么.例如,让我们看一个简单的用户类:

class User
{
    private $username;  // mandatory
    private $password;  // mandatory
    private $realName;  // optional
    private $address;   // optional

    public function getUsername() : string {
        return $this->username;
    }

    public function setUsername(string $username) {
        $this->username = $username;
    }

    public function getPassword() : string {
        return $this->password;
    }

    public function setPassword(string $password) {
        $this->password = $password;
    }

    public function getRealName() : string {
        return $this->realName;
    }

    public function setRealName(string $realName = null) {
        $this->realName = $realName;
    } …
Run Code Online (Sandbox Code Playgroud)

php oop php-7

5
推荐指数
1
解决办法
1454
查看次数

Spring Boot 2 - 未找到 EmbeddedServletContainerFactory

我的 Spring Boot 2 Web 应用程序运行良好,但现在我想将所有 http 请求重定向到 https。

但是 EmbeddedServletContainerFactory 和 TomcatEmbeddedServletContainerFactory 不能被导入。它说org.springframework.boot.context.embedded不存在。

我的代码如下:

@Bean
public EmbeddedServletContainerFactory servletContainer(){
    TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory(){
        @Override
        protected void postProcessContext(Context context) {
            SecurityConstraint securityConstraint = new SecurityConstraint();
            securityConstraint.setUserConstraint("CONFIDENTIAL");
            SecurityCollection collection = new SecurityCollection();
            collection.addPattern("/*");
            securityConstraint.addCollection(collection);
            context.addConstraint(securityConstraint);
        }
    };
    tomcat.addAdditionalTomcatConnectors(redirectConnector());
    return tomcat;
}
Run Code Online (Sandbox Code Playgroud)

我使用gradle,构建文件是:

buildscript {
    ext {
        springBootVersion = '2.0.0.M6'
    }
    repositories {
        mavenCentral()
        maven { url "https://repo.spring.io/snapshot" }
        maven { url "https://repo.spring.io/milestone" }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
} …
Run Code Online (Sandbox Code Playgroud)

java spring tomcat spring-boot spring-web

5
推荐指数
0
解决办法
1万
查看次数

在应用程序文件夹内的 NextJS 服务器组件中获取请求 URL

有没有办法使用 NextJS 13 和新的应用程序目录来获取请求对象(NextRequest)或至少是request URL服务器组件内部(页面和/或布局组件)?

我知道如何在客户端组件中执行此操作,但我想在服务器组件中获取它。

server-side-rendering next.js next.js13

5
推荐指数
1
解决办法
3153
查看次数

Chrome扩展程序 - 页面更新两次,然后在YouTube上删除

我想制作一个小扩展程序,将简单的html注入视频下方的YouTube页面.如果我简单地访问youtube网址,它工作正常.但是,如果我从youtube商品中选择一个视频,那么我的html代码会被注入两次但会被删除.我可以看到它出现然后几乎立即消失.

我的代码是:

background.js

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {

    if ( changeInfo.status == 'complete' && tab.status == 'complete' && tab.url != undefined ) {

        chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
            chrome.tabs.sendMessage(tabs[0].id, {method: "reDraw"}, function(response) {
                console.log("Injection ready!");
            });
        });

    }

});
Run Code Online (Sandbox Code Playgroud)

content.js

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        if (request.method == "reDraw") {
            $.get(chrome.extension.getURL('/mytest.html'), function(data) {
                $(data).insertAfter('#placeholder-player');
            });   
        } 
    }
);  
Run Code Online (Sandbox Code Playgroud)

html javascript youtube google-chrome-extension

2
推荐指数
1
解决办法
2919
查看次数

使用 Spring Boot 2 缓存和压缩静态资源

我有一个 Spring Boot 2 应用程序,其中静态资源是:

src 
|-  main
    |-resources 
        |-static
            |-js/myjs.js
            |-style
                |-css/mycss.css
Run Code Online (Sandbox Code Playgroud)

在我的模板文件中:

<link rel="stylesheet" type="text/css" href="/style/css/mycss.css">
<script src="/js/myjs.js"></script>
Run Code Online (Sandbox Code Playgroud)

这工作正常。

不过我想启用浏览器缓存和 gzip 传输。为此,我创建了以下 WebConfig:

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry
                .addResourceHandler("/static/**")
                .addResourceLocations("/static/")
                .setCachePeriod(3600)
                .resourceChain(true)
                .addResolver(new GzipResourceResolver())
                .addResolver(new PathResourceResolver());
    }
}
Run Code Online (Sandbox Code Playgroud)

该应用程序仍然可以运行,但不会缓存或压缩静态内容:

在此输入图像描述

知道我做错了什么吗?

spring caching spring-boot

1
推荐指数
1
解决办法
4082
查看次数