我正在尝试使用liquibase生成changeLog,从快照数据库的当前状态开始.
环境细节:
我从命令行运行以下命令:
liquibase --driver=com.mysql.jdbc.Driver --changeLogFile=./structure.xml --url="jdbc:mysql://mysql.mysite.com" --username=<myuser> --password=<mypass> generateChangeLog
Run Code Online (Sandbox Code Playgroud)
它运行正常,并生成输出文件.但输出文件只包含:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd"/>
Run Code Online (Sandbox Code Playgroud)
并且我的数据库上没有创建表(我期待用于跟踪的两个表).
我错过了什么?
EDITS
是的,我指的是liquibasechanlog和liquibasechangelock表.我知道它们应该自动出现在数据库中.我的问题是为什么他们不在那里.是的,提供的用户拥有执行此类任务的权限.
它不是一个空的数据库.它有近20个表,10个视图,数据......
可能重复:
类.重点是什么?
我已经阅读了大量的教程,写了许多课程,使用过它们,但我仍然无法弄清楚一些OOP点.
我的意思是,我认为我得到了理论.这是一种范式,一种思考和解决问题的不同方式.我知道所有的共同点:代码重用,封装,更好的错误处理,更容易的维护,继承,合同设计,更好的文档,聚合,组合,一些设计模式......
那就是说,让我们去做真正的交易吧.假设我有以下内容:
所有这一切都很棒,确实很有用但是...我不能停止思考最简单的情况:列出一些人.是的,因为输出表上的每一行都是在一个类实例上创建的.我无法停止思考在未使用的资源上使用了多少内存和CPU.
清单50人意味着创建50个实例,充满了诸如crud,过滤处理上传,验证规则等资源,当我需要的是运行查询并只用简单的循环输出结果时.
这让我很困惑.而且不仅仅是混淆,因为我已经看到了一些应用程序,当业务规则稍微复杂时,运行时会随着数据库的增加而逐渐增加.
我认为,是创建新类或普通脚本来处理输出和报告的情况?如果是,那么这意味着双重努力,使用OOP毫无意义,一旦我需要为同一个数据库实体创建许多不同的类.编码变得更难,维护变得不酷.
我错过了什么吗?或者这是OOP方法的缺点?
我们是否应该直接牺牲一点,更薄,更快的代码以便更快地开发和维护?
编辑
正如所料,我之前提出的一些观点对某些人来说是误导......
首先,我经历了真正非常大的项目(我曾在IBM为Sprint/Nextel USA和Directv North America工作,因此我习惯于看到每天处理一些太字节).
当我说从数据库中检索到50个人时,我并不是指50个人,我只想提出许多记录的想法.我知道50条记录对于今天的服务器来说并不算什么.5000万是.如果合适,想象一下这最后一个数字.
我在这里贴了一个幽灵,这让我感到沮丧多年.这是一个关于如何构建正确的模型,正确的对象的问题.
让我解释.假设我有一篇文章.文章有标题,评级,正文和评论.
Comment类包含作者,时间戳,文本.
文章可以有0个或更多评论.到现在为止还挺好.这个概念没问题.但...
这是我感到困惑的地方,因为我不需要加载评论信息,当我有大量文章和大量评论时,这会产生显着的性能差异.
我应该建两个型号吗?一个用于Article,一个用于ArticlesInList?我应该将评论的负载委托给延迟模式(这是可能的),只在必要时检索它们吗?
面对和解决这个问题的正确方法是什么?
谢谢.
我正在用巴西葡萄牙语开发一个简单的文章网站.搜索功能基于全文搜索,但未返回预期结果.
我在postgresql上做了这个.这是简化表:
Artigos
-id
-title -- article title
-intro -- article introduction
-content -- article body
-publishdate -- date of launch
-artigosts -- this will work as our fts index.
Run Code Online (Sandbox Code Playgroud)
创建表后,我跑了:
UPDATE artigos SET artigosts =
setweight(to_tsvector('pg_catalog.portuguese', coalesce(title,'')), 'A') ||
setweight(to_tsvector('pg_catalog.portuguese', coalesce(intro,'')), 'B') ||
setweight(to_tsvector('pg_catalog.portuguese', coalesce(content,'')), 'C');
CREATE INDEX artigosts_idx ON artigos USING gist (artigosts);
CREATE TRIGGER artigosts_tg
BEFORE INSERT OR UPDATE ON artigos
FOR EACH ROW EXECUTE PROCEDURE
tsvector_update_trigger('artigosts', 'pg_catalog.portuguese', 'title', 'intro', 'content');
Run Code Online (Sandbox Code Playgroud)
是的,我打算在搜索中使用简单的加权.做了一个索引加速,一个触发器,所以我可以插入和更新,而无需担心重制索引等.
嗯,根据我的理解,一切都很好.但结果不是.一个简单的例子.
假设我有"...... banco de …
postgresql full-text-search internationalization full-text-indexing
--- TL; DR
此时我建议大家将他们的持续集成服务器/服务绑定到https://ghostinspector.com/
老问题
经过三天的谷歌搜索和测试,我放弃了,我需要帮助.
我的目标是允许我的同事用Selenium IDE记录一个或多个测试.导出它们,将它们上传到服务器,然后使用带有htmlunit的webdriver让这台服务器运行这些测试.在我们构建或修复应用程序时,我们将上传测试以制作测试库.
用Selenium IDE记录测试是可以的.但让它运行就是问题所在.我们打算让测试的机器是linux亚马逊服务器.没有前端的东西,没有kde,gtk,所以没有firefox,chrome等...这就是为什么我已经指定了htmlunit驱动程序.
到目前为止,我无法将此任务运行到我的机器上 - Ubuntu 12.04 x86_64.
我下载了selenium-server tarball,并尝试运行:
java -jar selenium-server.jar -htmlSuite "*webdriver" "our.site.org" "/path/to/testsuite1.html" "/path/to/report1.html"
Run Code Online (Sandbox Code Playgroud)
没有成功.甚至更改"*webdriver"(使用其他弹出浏览器屏幕).
我试过运行服务器和独立服务器并通过浏览器连接.
我试过facebook的PHP绑定.
我已经尝试过PHPUnit和测试Selenium类 - 以及他们各自从Selenium Formatters导出的脚本.
我真的不知道我在哪里滑倒.任何人都可以给我一个安全的方向,教程等跟随?
--- 编辑
好的,我的问题可能会恢复为:
使用HtmlUnit驱动程序,允许我使用selenium-server运行selenese脚本的命令行是什么?
continuous-integration selenium ui-testing htmlunit selenium-webdriver
我们正在将Solr作为我们网站的新内部搜索引擎.
大多数功能运行良好,其他功能处于调整和校准阶段.
但有一个功能,我没有在网上找到任何好的文档.所以这里:
我已经能够创建一个索引,使用官方的词干分词器 http://docs.lucidworks.com/display/solr/Language+Analysis#LanguageAnalysis-BrazilianPortuguese
但是这场比赛使用适合于将所有内容理解为英语的解析器.这就是问题所在.
欢迎使用教程,文档,如何或回复.
我是java的新手,并使用netbeans设计UI.
我想做的是......
在形式.有一个jComboBox和一个JTextField,用户可以输入他选择的服务和观察.到现在为止还挺好.JComboBox是从数据库条目填充的.
问题是,用户可以一次输入N个不同的服务(有太多的复选框).我正在考虑添加一个"[+]"按钮(以及"[ - ]"以便删除).因此,用户点击[+],另一个带有jcombobox + jtextfield的新行出现在前面的那一行的正下方.
我被困在这一点上.在[+]按钮上ActionPerformed我无法克隆并添加以前的节点.关于如何继续的任何想法.
我的背景是webdev.使用javascript执行此操作非常快.好吧,我想你已经知道我要做什么了.等待一些光.谢谢.
一些问题解决后,我得到了一些棘手的东西.我正在使用一个名为prettyPhoto的JQuery叠加插件.
Just wanna make an overlay with a form. The form is hidden with CSS, and when a link is clicked, the overlay shows it in a nice fashion.
So far so good, everything working as expected, except only one thing: this form has a date field, in which I use datepicker UI.
It (the datepicker) does no shows up at all. At first, I tryed googling and making some CSS adjustments... nothing works. z-index on CSS, z-index dynamically...
Then …
oop ×2
php ×2
datepicker ×1
dynamic ×1
field ×1
htmlunit ×1
java ×1
jquery ×1
lightbox ×1
liquibase ×1
localization ×1
mysql ×1
overlay ×1
postgresql ×1
runtime ×1
selenium ×1
solr ×1
swing ×1
theory ×1
ui-testing ×1