小编Ann*_*zer的帖子

如何使用liquibase为postgreSQL数据库创建触发器?

我正在使用dropwizrd-migrations模块进行liquibase db重构.请参阅此处的指南:http://dropwizard.codahale.com/manual/migrations/

当我运行java -jar my_project.jar db migrate my_project.yml时

我收到以下错误:

错误[2013-09-11 20:53:43,089] liquibase:更改设置migrations.xml :: 11 ::我失败了.错误:执行SQL CREATE或REPLACE TRIGGER时出错add_current_date_to_my_table更新在my_table之前为每个行执行过程更改_update_time();:错误:语法错误在"TRIGGER"处或附近位置:19

以下是我的migrations.xml文件中的一些相关变更集:

<changeSet id="1" author="me">
    <createProcedure>
        CREATE OR REPLACE FUNCTION change_update_time() RETURNS trigger
        LANGUAGE plpgsql
        AS $$
        BEGIN
        NEW.updated_at := CURRENT_TIMESTAMP;
        RETURN NEW;
        END;
        $$;
    </createProcedure>
    <rollback>
        DROP FUNCTION change_update_time();
    </rollback>
</changeSet>        

<changeSet id="2" author="me">
    <preConditions>
        <not>
            <tableExists tableName="my_table"/>
        </not>
    </preConditions>

    <createTable tableName="my_table">
        <column name="_id" type="integer" defaultValue="0">
            <constraints nullable="false"/>
        </column>
        <column name="updated_at" type="timestamp without time zone" defaultValue="now()">
            <constraints nullable="false"/>
        </column>
    </createTable> …
Run Code Online (Sandbox Code Playgroud)

postgresql liquibase dropwizard

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

现代for循环的原始数组

原始数组上的for循环之间是否存在性能差异?

假设:

double[] doubleArray = new double[300000];


for (double var: doubleArray) 
   someComplexCalculation(var);
Run Code Online (Sandbox Code Playgroud)

要么 :

for ( int i = 0, y = doubleArray.length; i < y; i++)
   someComplexCalculation(doubleArray[i]);
Run Code Online (Sandbox Code Playgroud)

测试结果

我实际上描述了它:

Total timeused for modern loop= 13269ms
Total timeused for old loop   = 15370ms
Run Code Online (Sandbox Code Playgroud)

所以现代循环实际上运行得更快,至少在我的Mac OSX JVM 1.5上.

java arrays iteration performance

13
推荐指数
2
解决办法
7206
查看次数

Golang函数返回一个接口

下面的代码实际上是不言自明的.

为什么我可以说CreateLion()的结果,一个实现Cat接口的结构的指针,是Cat接口的一个实例,但我不能说CreateLion()的类型为"返回Cat的函数"接口."

实现这种行为的标准Golang方法是什么?

package main

import "fmt"

func main() {
    var lion Cat := CreateLion()
    lion.Meow()

    // this line breaks. Why?
    var cf CatFactory = CreateLion
}

type Cat interface {
    Meow()
}

type Lion struct {}
func (l Lion) Meow() {
    fmt.Println("Roar")
}

// define a functor that returns a Cat interface
type CatFactory func() Cat

// define a function that returns a pointer to a Lion struct
func CreateLion() *Lion {
    return &Lion{}
}
Run Code Online (Sandbox Code Playgroud)

go

10
推荐指数
3
解决办法
2万
查看次数

如何使"%n"等于"\n"

如果在Windows上运行此代码,为什么不b等于true

System.setProperty("line.separator", "\n");
String s=String.format("%n");
boolean b="\n".equals(s);
Run Code Online (Sandbox Code Playgroud)

我想s"\n""\r\n",甚至在Windows上.

java string

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

我如何使用Vue Async组件?

我正在使用laravel 5.4和vue 2,我想使用按钮将组件加载为异步.我的Vue js组件是独立的:example.vue和test.vue,我将它们加载为html标记.

这是我的app.js:

import './bootstrap';
import example from './components/Example.vue';

Vue.component('example', example);

const app = new Vue({
el: '#app'
});
Run Code Online (Sandbox Code Playgroud)

这是展示组件的地方

    <How can i use Async components?div id="app">
         <example2></example2> 
    </div>
Run Code Online (Sandbox Code Playgroud)

我如何使用Async组件?


不,我想你不理解我.这是我的组件注册

import './bootstrap';
import example from './components/Example.vue';

Vue.component('example', example);

Vue.component('example2', function (resolve) {

require(['./components/Example2.vue'],resolve)

})


const app = new Vue({
el: '#app'
});
Run Code Online (Sandbox Code Playgroud)

并且在require中,它默认已解析(如显示)我不知道在调用组件时如何在我的页面中传递解析并拒绝此方法的键.

vue.js async-components vuejs2

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

在PostgreSQL中获取今天生日的所有条目

我有以下查询,我需要实现一个Mailer,需要发送给今天生日的所有客户.这种情况每天发生.现在我需要实现的只是选择使用Postgres SQL查询的Birthday客户端,而不是在PHP中过滤它们.

存储在数据库中的日期格式是YYYY-MM-DD,例如.1984年3月13日

我所拥有的是以下查询

SELECT cd.firstname,
       cd.surname, 
       SUBSTRING(cd.birthdate,6),
       cd.email 
FROM client_contacts AS cd 
   JOIN clients AS c ON c.id = cd.client_id 
WHERE SUBSTRING(birthdate,6) = '07-20';
Run Code Online (Sandbox Code Playgroud)

有没有比我上面做的更好的方法来进行此查询?

php postgresql

7
推荐指数
2
解决办法
4612
查看次数

如何在一页中使用 vuetify.css 和 bootstrap?

我想同时使用vuetify.min.css文件夹和bootstratp.min.css文件夹。Bootstrap 在布局页面上定义,我需要在另一个页面上使用 vuetify.min.css。有什么办法可以同时使用它们吗?

vue.js bootstrap-4 vuetify.js

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

如何编写具有中立检查运行状态的 GitHub 操作

我正在编写一个 GitHub 操作并希望指示成功、警告(中性)和失败。它看起来像这样:

name: status

on: 
  push:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: run checks
      continue-on-error: true
      run: ./check.sh
Run Code Online (Sandbox Code Playgroud)

我通过一些旧文档发现退出代码 78 给出了该步骤的中立状态。但是我如何让整个工作处于中立状态?

更新:经过测试,我发现退出代码 78 不影响步骤的状态。

github github-actions

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

在IntelliJ IDEA中构建scala时出现"not found:value classOf"错误,但在maven中正确构建

我已经编写了一小段测试代码,并使用IntelliJ IDEA 12 CE进行编译

import com.twitter.common.zookeeper.ZooKeeperClient
import org.mockito.Mockito

    class MyResourceSpec { 
      val zkClient = mock(classOf[ZooKeeperClient])
      ...
    }
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

not found: value classOf
  val zkClient = mock(classOf[ZooKeeperClient])
                 ^
Run Code Online (Sandbox Code Playgroud)

但是我能够使用mvn compile成功构建项目.另外,我在同一目录"MyOtherResourceSpec.scala"中有另一个测试文件,其中包含完全相同的代码行.

有关为什么在IDEA中无法正确构建的任何想法?

我试过的事情:

  • 同事建议IDEA可能不会将其识别为scala文件,我尝试点击顶级项目然后单击Maven> reimport.

  • 重新启动IntelliJ

  • 如果缺少某些内容,则从"MyOtherResourceSpec.scala"复制所有导入

  • 使用Mockito.mock(classOf [ZooKeeperClient])

scala intellij-idea mockito maven

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

Liquibase前提条件不起作用

我正在尝试使用liquibase使用dropwizard-migrations跟踪对postgresql数据库的更改。我希望能够在现有的生产数据库上运行迁移,而不是从头开始重建。目前,我正在分阶段进行测试。我已经创建了一个带有前提条件的变更集。

<changeSet id="3" author="me">
    <preConditions onFail="CONTINUE">
        <not>
            <sequenceExists sequenceName="emails_id_seq"/>
        </not>
    </preConditions>
    <createSequence sequenceName="emails_id_seq" startValue="1" incrementBy="1" />
</changeSet>
Run Code Online (Sandbox Code Playgroud)

我的目标是如果序列已经存在,则跳过应用变更集。看起来很简单,但是没有用。

ERROR [2013-09-13 22:19:22,564] liquibase: Change Set migrations.xml::3::me failed.  Error: Error executing SQL CREATE SEQUENCE emails_id_seq START WITH 1 INCREMENT BY 1: ERROR: relation "emails_id_seq" already exists
! liquibase.exception.DatabaseException: Error executing SQL CREATE SEQUENCE emails_id_seq START WITH 1 INCREMENT BY 1: ERROR: relation "emails_id_seq" already exists
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用MARK_RAN而不是CONTINUE。没有运气。

postgresql liquibase

5
推荐指数
2
解决办法
7234
查看次数

vuetify组件v-select的文本如何居中对齐

我正在使用Vuetify 选择组件。如何在 vuetify 上将文本与下拉菜单居中对齐?

尝试使用 text-md-center 但这不起作用

<v-select
   :items="['Lagna Kundali']"
   label="Rasi" solo
   v-model="firstKundali"
   class="text-md-center"
>
Run Code Online (Sandbox Code Playgroud)

vuejs2 vuetify.js

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

如何在 kubernetes 中获取 Pod 的数量(可用或终止)?

我需要找到当前未终止的 pod 数量(可以是可用的、正在终止等),以防止在仍有一些 pod 未终止的情况下开始部署。

更新:如果没有可用的豆荚,我应该得到“0”。是否可以 ?

kubernetes

5
推荐指数
3
解决办法
8016
查看次数

Vue.js 显示用户刷新页面时应通过 v-if 标记隐藏的内容

我有一个 Vue.js 应用程序,可以在方法中加载内容created()。我使用v-if标签隐藏所有 UI,直到内容加载完毕并准备就绪。它在初始加载时工作正常,但如果用户在 Chrome 中点击刷新,则应用程序会显示(短暂闪烁)否则不会显示的内容(基于创建时加载的数据)。

据我了解v-if,使用标签以及我的 vuex 存储中的一个标志来指示加载何时完成,是隐藏内容直到我准备好显示它的正确方法。

如何避免刷新时内容闪烁?

vue.js

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