我一直在尝试创建Jersey REST Web服务.我想从Java类接收和发出JSON对象,如下所示:
@XmlRootElement
public class Book {
public String code;
public HashMap<String, String> names;
}
Run Code Online (Sandbox Code Playgroud)
这应该像这样转换为JSON:
{
"code": "ABC123",
"names": {
"de": "Die fabelhafte Welt der Amelie",
"fr": "Le fabuleux destin d'Amelie Poulain"
}
}
Run Code Online (Sandbox Code Playgroud)
但是我找不到标准的解决方案.每个人似乎都在实施自己的包装 解决方案.这个要求对我来说似乎是极其基本的; 我无法相信这是普遍接受的解决方案,特别是因为Jersey真的是Java中更有趣的部分之一.
我也试过升级到Jackson 1.8,它只给了我这个,这是极端虚假的JSON:
{
"code": "ABC123",
"names": {
"entry": [{
"key": "de",
"value": "Die fabelhafte Welt der Amelie"
},
{
"key": "fr",
"value": "Le fabuleux destin d'Amelie Poulain"
}]
}
}
Run Code Online (Sandbox Code Playgroud)
有什么建议的解决方案吗?
我有以下测试字符串engine/mail/key和一个如下所示的表:
+-------------+
| query |
+-------------+
| engine |
| engine/pdf |
| engine/mail |
+-------------+
Run Code Online (Sandbox Code Playgroud)
我想找到最匹配的行.最佳匹配由字符串/行开头的最匹配字符指定.
我已经构建了一个RegExp,但它当然匹配所有行,并且不会给我任何与大多数字符/部分相匹配的信息.
正则表达式:^engine(/mail(/key)?)?
关于使用MySQL的FIND_IN_SET函数,我有另一个想法:
`FIND_IN_SET(query,'engine,engine/mail,engine/mail/key')`
Run Code Online (Sandbox Code Playgroud)
并通过它的输出来排序结果.
这可行,但它绝不是一个很好的解决方案.有没有人对此有更好的了解?
我只使用一个SVG背景图像创建了一个左右导航按钮,并水平翻转以获得另一个方向.这适用于除Internet Explorer 9之外的所有支持CSS 2D转换的浏览器.基本上CSS看起来像这样:
div.nav-left, div.nav-right {
background-image: url('TriangleArrow-Right.svg');
}
div.nav-left {
-webkit-transform: scaleX(-1);
-ms-transform: scaleX(-1);
transform: scaleX(-1);
}
Run Code Online (Sandbox Code Playgroud)
我在Internet Explorer 10,Firefox,Chrome,Safari等中创建了一个正确的jsFiddle:

但实际上在IE9中看起来像这样:

我已经包含了一个大于号的符号来说明按钮应指向哪个方向.实际上你可以看到,IE9正确地将变换应用于文本,但是对于SVG背景图像则完全相反.
如果我将SVG背景图像更改为PNG,则一切都可以在IE9中正常工作,但请参阅此jsFiddle.
我无法找到任何相关信息.这似乎是一个错误,因为IE9应该正确支持CSS转换和SVG作为CSS背景.
我在Glassfish中使用EclipseLink和我的JavaEE应用程序,并在我的模型类中有一些java.util.Locale-columns,我想在我的数据库表中存储为String-columns.
我知道Hibernate提供了它的转换注释,我可以构建自己的转换器实现org.eclipse.persistence.mappings.converters.Converter.但是,我必须依赖这些库中的任何一个来使用它们.
有没有办法在不直接依赖EclipseLink或Hibernate并保持JPA规范的情况下获得此功能?