小编kan*_*dan的帖子

Hibernate Criteria:不同的实体然后限制

我有一个标准,返回应用程序所需的所有数据,基本上:

Criteria criteria = session.createCriteria(Client.class);
criteria.createAlias("address", "address");
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
criteria.setFirstResult(init);
criteria.setMaxResults(max);
List<Client> clients = criteria.list();
Run Code Online (Sandbox Code Playgroud)

问题是关系客户端/地址是双向的:客户端上有一个地址,一个地址可能属于多个客户端.

我想基于他们的pk检索"单个"客户端对象,当然,它们会在表格中显示一些客户端.

因为首先执行setFirstResult/setMaxResults,所以我在已经应用的限制内获得了重复的客户端.之后(使用的应用程序级别不是group by)hibernate获取重复客户端的rids,因此我最终得到了setMaxResults中指定的最大值的客户端.

无法按(投影组)分组,因为它不会返回客户端/地址中所需的所有列,只会返回查询所分组的组.

(总而言之,我的表每页有100个结果,但在丢弃重复项后我有98个结果而不是100个...)这是因为限制:LIMIT 0,100应用于休眠组之前应该执行的AFTER)

java hibernate group-by criteria

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

使用普通javascript在中心周围缩放SVG

我有一个问题可能很好理解坐标如何工作SVG.我有一个javascript函数,可以缩放svg图形,例如:

var g = document.getElementById("graph");
var nm = g.getCTM().multiply(k); //k is the scale factor
g.setAttribute("transform", "matrix(" + nm.a + "," + nm.b + "," + nm.c + "," + nm.d + "," + nm.e + "," + nm.f + ")");
Run Code Online (Sandbox Code Playgroud)

关键是缩放后中心略微翻译,因此图形丢失是"地理"中心.如何确定我需要哪个翻译来"围绕"其中心缩放图形?

谢谢.

javascript scaling svg

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

Angular2 rc6表达在检查后发生了变化

我已经按照http://almerosteyn.com/2016/04/linkup-custom-control-to-ngcontrol-ngmodel上的教程来创建自定义元素.

有一个包含两个字段的表单:一个自定义组件和另一个通过ngmodel链接到同一字段的组件(输入字段).

当我编辑自定义组件中的值时,它会抛出异常"ORIGINAL EXCEPTION:表达式在检查后已更改.".但是,正常字段中的更改会触发正确更改自定义元素.

这是代码:

<custom-component [control]="surname1" [(ngModel)]="person.surname1" [name]="'surname1'" formControlName="surname1">Add surname:</custom-component>

<input type="text" name="surname2" id="surname2" formControlName="surname1" [(ngModel)]="person.surname1" />
Run Code Online (Sandbox Code Playgroud)

和自定义元素:

const noop = () => {};

export const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR: any = {
    provide: NG_VALUE_ACCESSOR,
    useExisting: forwardRef(() => MyInputComponent2),
    multi: true
};

@Component({
    selector: 'custom-component',
    template: `<label><ng-content></ng-content></label>
                    <input type="text"  name="{{name}}" [(ngModel)]="value" 
                        (ngModelChange)="changed($event)"

                        (blur)="onBlur()"
                    />
    `,
    providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR]
})
export class CustomComponent implements ControlValueAccessor {

    @Input() control: FormControl;
    @Input() name: any;
    private innerValue: any = '';

    private onTouchedCallback: () => void …
Run Code Online (Sandbox Code Playgroud)

custom-component typescript angular

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

mysql选择进入csv转义换行错误

我试图将sql select保存到csv文件中,而不是稍后在excel中打开

错误 :

ERROR 1083 (42000) at line 1: Field separator argument is not what is expected; check the manual
Run Code Online (Sandbox Code Playgroud)

查询是:

SELECT 'Description' 
union
SELECT coalesce(replace(d.description,'\r\n','\n'),'') 
INTO OUTFILE \"$FILE_PATH$FILE_NAME\"
FIELDS ESCAPED BY '""' TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'
FROM data d
Run Code Online (Sandbox Code Playgroud)

问题在于"ESCAPED BY"是它应该在描述字段中转义保存在数据库中的新行字符.(我不希望文件中的新字符在打开csv时在excel中创建多行).

Mysql服务器是5.5版.5.0工作正常,但由于在mysql教程中使用"ESCAPED BY",我不明白为什么我在这里遇到问题.

用于在字段中保留换行符的源:http: //dev.mysql.com/doc/refman/5.5/en/select.html

谢谢.

mysql file-io select newline

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