小编Lit*_*cas的帖子

Spring Boot - 加载初始数据

我想知道在应用程序启动之前加载初始数据库数据的最佳方法是什么?我正在寻找的东西将使我的H2数据库充满数据.

例如,我有一个域模型"用户"我可以通过转到/ users来访问用户,但最初在数据库中不会有任何用户,所以我必须创建它们.反正有没有自动填充数据库?

目前我有一个容器实例化的Bean,并为我创建用户.

例:

@Component
public class DataLoader {

    private UserRepository userRepository;

    @Autowired
    public DataLoader(UserRepository userRepository) {
        this.userRepository = userRepository;
        LoadUsers();
    }

    private void LoadUsers() {
        userRepository.save(new User("lala", "lala", "lala"));
    }
}
Run Code Online (Sandbox Code Playgroud)

但我非常怀疑这是最好的方法.或者是吗?

spring spring-data spring-boot

143
推荐指数
11
解决办法
17万
查看次数

启用安全性的Spring Boot 1.4测试?

我想知道如何为我的测试验证用户身份?现在,我将编写的所有测试都将失败,因为端点需要授权.

测试代码:

@RunWith(SpringRunner.class)
@WebMvcTest(value = PostController.class)
public class PostControllerTest {

    @Autowired
    private MockMvc mvc;

    @MockBean
    private PostService postService;

    @Test
    public void testHome() throws Exception {
        this.mvc.perform(get("/")).andExpect(status().isOk()).andExpect(view().name("posts"));
    }


}
Run Code Online (Sandbox Code Playgroud)

我找到的一个解决方案是通过在@WebMvcTest中将secure设置为false来禁用它.但这不是我想要做的.

有任何想法吗?

spring spring-mvc spring-security spring-test-mvc spring-boot

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

CMake 错误“需要一个命令名称”

我正在做一个涉及 CMake 的学校作业。

我正在尝试在 CLion 中导入 CMake 项目,但出现以下错误:

CMakeLists.txt:35 处的 CMake 错误:解析错误。需要一个命令名称,得到带有文本“add_subdirectory​”的不带引号的参数。

指定的行如下:

#? ?Add? ?terminal? ?sub? ?directory
add_subdirectory?(?terminal)

target_link_libraries(${Screen}? ?Terminal)
Run Code Online (Sandbox Code Playgroud)

整个 CMake 文件:

# Projektets namn
project(Screen)

# Minsta tillåtna cmake version
cmake_minimum_required(VERSION 3.2)

# Kompilera med c++ 11 stöd
set (CMAKE_CXX_STANDARD 11)

# Lägg till katalogen med våra bibliotek till INCLUDE path
# (i dessa kataloger kommer kompilatorn att leta efter de
# header filer som inkluderas i koden)
INCLUDE_DIRECTORIES($ENV{TOOLS_INCLUDE})

# Ta med alla källkodsfiler i den aktuella …
Run Code Online (Sandbox Code Playgroud)

c++ cmake clion

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

JavaFX:更改文本区域的文本颜色

好吧,所以我根本无法让它工作。我检查了场景生成器中的 CSS 分析器,得出的结论是,更改文本区域中文本颜色的方法与此类似:`

.text-area .text {
    -fx-fill: #1e88e5;
    -fx-font-size: 32px;
}`
Run Code Online (Sandbox Code Playgroud)

问题是颜色没有改变,字体大小也没有改变。我这里哪里出错了?

css javafx

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

矩阵,指数超出范围

我用以下代码声明了一个矩阵:

matrix = [[' ' for x in range(x1)] for x in range(y1)]
Run Code Online (Sandbox Code Playgroud)

但是当我尝试找到一个随机元素并使用以下代码更改它的值时:

randomX = random.randint(0, x)
randomY = random.randint(0, y)
if matrix[randomX][randomY] == ' ':
    try:
        matrix[randomX][randomY] = 'G'
        scr.addstr(randomX, randomY, matrix[randomX][randomY])
        scr.refresh()
    except IndexError:
        return
Run Code Online (Sandbox Code Playgroud)

我得到一个IndexError.我试着写一些垃圾代码来退出函数,如果它运行到IndexError.它工作一次,然后它仍然会抛出错误.

注意,x1与函数中的x相同.y1和y也是如此.

我有什么问题吗?

python

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

@RequestBody,在 POST 请求中发送 List<String>

我有一个基本的 POJO,其字段如下所示:

@NotEmpty
@ElementCollection
@Column(name = "TAGS")
private List<String> tags;
Run Code Online (Sandbox Code Playgroud)

我正在尝试向以下控制器发送 JSON 格式的 POST 请求:

@RequestMapping(value = "/post", method = RequestMethod.POST)
public void createPost(@RequestBody BlogPost blogPost) {
    blogPostService.addPost(blogPost);
}
Run Code Online (Sandbox Code Playgroud)

我的JSON:

{
    "stuff": "stuff",
    "stuff": "stuff",
    "tags": [{"Tag 1"}, {"Tag 2"}]
}
Run Code Online (Sandbox Code Playgroud)

基本上我的问题是我不知道如何将其转换为列表。我试过寻找答案,但我什么也没找到。这甚至可能吗?

我得到的错误是:

JSON 解析错误:无法从 START_OBJECT 令牌中反序列化 java.lang.String 的实例;

spring json spring-mvc spring-boot

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

C# - 从其他类中的其他类访问方法?

我最近开始学习C#,所以我绝不是专家.无论如何,我试图创建一个面向对象的计算器,但我遇到了一个问题,似乎我无法从某些类中的其他类访问方法.我没有得到错误代码但是当我放下断点并调试应用程序时,变量的值为0.

如果我从DisplayUserData中删除该方法并将代码粘贴到我的主程序文件中,它运行正常.看起来DisplayUserData类似乎无法传递变量或从其他类中检索变量,为什么会这样呢?

哦,原谅可怕的方法,类和变量名称.

这是我的主程序文件:

namespace Calculator
{
    class Program
    {
        static void Main(string[] args)
        {
            GetUserInput userInput = new GetUserInput();
            Calculator calculator = new Calculator();
            DisplayUserData displayUserCalculation = new DisplayUserData();


            userInput.MethodOfCalculation();
            userInput.UserNumberInput();
            displayUserCalculation.DisplayCalculatedUserData();

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

接下来是我的GetUserInput类:

namespace Calculator
{
    public class GetUserInput
    {
        public char Choice;
        public decimal ValueOne;
        public decimal ValueTwo;

        public void MethodOfCalculation()
        {
            Console.WriteLine("Welcome to Calculator v.1!");
            Console.WriteLine("Please choose a method of calculation below.");
            Console.WriteLine("1: Addition");
            Console.WriteLine("2: Subtraction");
            Console.Write("Your choice: ");
            Choice = Console.ReadKey().KeyChar;
        }

        public …
Run Code Online (Sandbox Code Playgroud)

c# class

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

C++使用iter_swap改变向量的顺序

我将带有20个项目的向量传递给下面的函数.我的目标是改变向量中项目的顺序.如果列表包含项目1 2 3 4,我希望最终结果为4 3 2 1.基本上将第一个项目切换为最后一项,将第二项目切换为倒数第二项目.

template<typename T>
void changePosition(std::vector<T>& list)
{
    std::cout << "Swapping \n";
    for (int i = 0; i < list.size(); i++)
    {
        std::iter_swap(list.begin() + i, list.end() - i);
    }

    std::cout << "Swapped \n";
}
Run Code Online (Sandbox Code Playgroud)

我最终得到错误:

c ++ vector iterator不可解除引用

有任何想法吗?我没有找到任何能够实现我想要实现的目标的样本.

确实可以使用std :: reverse,我正在进行的赋值要求我使用iter_swap.

c++ stl vector

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

Java递归打印目录子目录文件

我正在尝试遍历文件夹并列出特定文件结尾的所有文件.我试图用递归方法解决这个问题,但我没有得到任何地方.

private int counter = 0;
public void printAllJavaFiles(File directory) {
        printFile(directory);
        File[] subDirectories = directory.listFiles();

        for (File file : subDirectories) {
            printAllJavaFiles(file);
        }
}

private void printFile(File file) {
    // Get file extension
    String fileExtension = "";
    int i = file.getName().lastIndexOf('.');
    if (i >= 0) {
        fileExtension = file.getName().substring(i + 1);
    }

    if (fileExtension.equals("java")) {
        System.out.println("File: " + file.getName() + " Size: " + file.length());
    }
}
Run Code Online (Sandbox Code Playgroud)

有什么建议?我真的不知道如何在目录结构中上下移动.它只是进入第一个文件夹,一旦它完成列出它的文件,它会抛出一个nullpointerexception.

java recursion

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

PHP,检查字符串是否与另一个字符串相似

有没有办法检查两个字符串在PHP中是否相似?

假设我有“出租汽车”的文字,我希望“租车”被视为类似于“出租汽车”。

或另一个示例,“ DS Nintendo”应类似于“ blabla Nintendo DS 4051”。

类似的文本不适用于上面的示例。为了将其接受为相似的值,必须将%的阈值设置得非常低。可以轻松比较“ DS Nintendo”和“ Nintendo DS”,但是现在以它为例。“ DS Nintendo”,“ blabla 352532 1qwd0gs Nintendo 03532 DS”。该百分比将非常低。

php

-3
推荐指数
1
解决办法
182
查看次数