小编Fra*_*nkS的帖子

在GWT/GWT-Ext中密码字符串的md5哈希?

我目前正在尝试修改现有的GWT-Ext应用程序,即在其MySql数据库中使用纯文本密码.

我的计划是使用md5哈希,因为现有的密码可以通过MySql函数轻松更改,我期待为GWT-Ext方面找到一个简单的解决方案.但是正如我发现的那样,GWT不支持java.security,并且似乎没有任何其他实现可用于将密码字符串更改为客户端的md5哈希.

到目前为止,我发现只有"解决方案"是通过JSNI重新实现md5方法,如下所述:http: //groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/ad09475a9944c9f8

Ext-JS有一个现有的用户扩展,但我找不到GWT-Ext的任何内容:http://extjs.com/forum/showthread.php? p = 133516

有人知道更优雅/简单的方法来解决这个问题吗?也许我应该用别的东西而不是md5来确保密码加密?

干杯弗兰克

javascript java gwt md5 gwt-ext

4
推荐指数
2
解决办法
9260
查看次数

用于查找重复条目的SQL(在组内)

用于查找重复条目的SQL(在组内)

我有一个小问题,我不确定什么是解决它的最佳方法,因为我只能有限地访问数据库(Oracle)本身.在我们的表"EVENT"中,我们有大约160k个条目,每个EVENT都有一个GROUPID,而一个普通条目恰好有5个行具有相同的GROUPID.由于一个错误,我们目前得到了几个重复的条目(重复,所以10行而不是5行,只是一个不同的EVENTID.这可能会改变,所以它只是<> 5).我们需要过滤这些组的所有条目.

由于对数据库的访问受限,我们无法使用临时表,也无法向GROUPID列添加索引以使其更快.

我们可以使用此查询获取GROUPID,但我们需要第二个查询来获取所需的数据

select A."GROUPID"
from "EVENT" A
group by A."GROUPID"
having count(A."GROUPID") <> 5
Run Code Online (Sandbox Code Playgroud)

一个解决方案是子选择:

select *
from "EVENT" A
where A."GROUPID" IN (
  select B."GROUPID"
  from "EVENT" B
  group by B."GROUPID"
  having count(B."GROUPID") <> 5
)
Run Code Online (Sandbox Code Playgroud)

没有GROUPID和160k条目的索引,这需要太长时间.试着考虑一个可以处理这个问题的联接,但到目前为止找不到一个好的解决方案.

有人可以为此找到一个好的解决方案吗?

小编辑:我们这里没有100%的重复,因为每个条目仍然有一个唯一的ID,GROUPID也不是唯一的(这就是为什么我们需要使用"group by") - 或者我可能只是错过了一个简单的解决方案它:)

关于数据的小例子(我不想删除它,只是找到它)

EVENTID | GROUPID | TYPEID
123456    123       12
123457    123       145
123458    123       2612
123459    123       41
123460    123       238

234567    123       12
234568    123       145
234569    123       2612
234570    123       41
234571    123       238

它有更多的列,如时间戳等,但正如你已经看到的,除了EVENTID之外,一切都是相同的.

我们将更频繁地运行它进行测试,找到错误并检查它是否再次发生.

sql oracle join

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

标签 统计

gwt ×1

gwt-ext ×1

java ×1

javascript ×1

join ×1

md5 ×1

oracle ×1

sql ×1