这是我为XML创建XStream实例的方法:
XStream xstream = new XStream();
Run Code Online (Sandbox Code Playgroud)
这适用于JSON:
private final XStream xstream = new XStream(new JsonHierarchicalStreamDriver() {
public HierarchicalStreamWriter createWriter(Writer writer) {
return new JsonWriter(writer, JsonWriter.DROP_ROOT_MODE);
}
});
Run Code Online (Sandbox Code Playgroud)
它们都是非常打印(缩进)输出.
如何让XStream禁用漂亮的打印?
我正在使用HttpURLConnection
向服务器写入文件,其中一些文件很大.
final HttpURLConnection conn = (HttpURLConnection) url.openConnection();
Run Code Online (Sandbox Code Playgroud)
前一阵子我写了1 GB或更多的对象.我通过将其设置为流更易管理的块大小来修复它.
final int bufferSize = 1024 * 1024;
[...]
conn.setChunkedStreamingMode(bufferSize);
Run Code Online (Sandbox Code Playgroud)
它在我的笔记本电脑上运行良好,但在其他机器上却崩溃了.经过调查,我发现原因是在写入输出流时发生了内存不足错误.
final OutputStream out = conn.getOutputStream();
final long bytesWritten = IOUtils.copyLarge(in, out);
Run Code Online (Sandbox Code Playgroud)
在copyLarge例程中,我发现它能够执行262145次4096字节的迭代,当它试图越过1 GB行时失败.为java应用程序分配更多内存似乎可以防止这些崩溃,但我认为这应该是不必要的.如果它正在写1 MB的块,那么它应该失败,迭代次数少得多,或者反复写1 MB而没有问题.
更新:结果显示在某些机器上实际上没有调用ChunkedStreamingMode的行设置.如果您没有设置固定/分块流模式,HttpURLConnection只会将所有内容发送到PosterOutputStream/ByteArrayOutputStream.
我使用https://www.googleapis.com/auth/userinfo.email
范围来获取经过身份验证的用户的电子邮件地址.但在进行身份验证时,Google会提示用户:
该应用程序想:
- 了解您在Google+上的身份(帮助图标显示:此应用请求获得与您的公开Google个人资料相关联的权限)
- 查看您的电子邮件地址
我不想要用户的Google+相关信息.我正在使用OAuth2身份验证方法.对于Authsub请求身份验证,它只需要电子邮件地址访问.如何单独访问用户的电子邮件地址?
scope google-authentication oauth-2.0 google-plus google-oauth
我在跑步:
我还安装了Java EE 6 SDK Update 2,其中包括:
我已经用Eclipse注册了GlassFish,但是当我尝试启动服务器时,出现以下错误:
GlassFish v3需要JDK 1.6而不是JRE.请在服务器属性的"运行时环境"部分中添加/选择正确的JDK.
我在这里搜索了一个答案,但到目前为止似乎都没有.任何人都可以建议我如何排除这个错误?
我希望以列名的第一部分是字符串的方式连接列名,第二部分是另一个查询的结果的数字.
例如:
SELECT CONCAT('column', mytable.mycolumn) FROM table ...
Run Code Online (Sandbox Code Playgroud)
这可以通过某种方式完成.这样它不会给我错误,但我没有得到预期的结果,似乎连接不起作用.
在GlassFish安装期间,我选择了用户名和密码.这些参数在Eclipse Server Adapter设置页面上正确设置.但是当我从Eclipse以调试模式启动GlassFish时,我得到"用户名和密码错误".
服务器日志中没有任何内容 - 实际上服务器已启动并正常运行.该消息仅出现95%的时间,并且通过常量重新启动和重新部署使应用程序的调试成为问题.
有人发现如何克服这个问题?
我正在使用Oracle GlassFish Server 3.0.1和Eclipse Helios Eclipse Java EE IDE for Web Developers(Helios Service Release 1 Build id:20100917-0705).
在使用Angular CLI/webpack构建Angular 2应用程序时,我想为几个Sass变量指定值.就像制作一些url(#{$my-base-path}/...)
或$fa-font-path
指向生产中的CDN一样,或者只是为接受和生产构建设置不同的背景颜色.
我喜欢Angular CLI从中获取配置的方式,例如environments/environment.prod.ts
.但我也很乐意使用额外的命令行参数ng build
,但到目前为止没有运气:
没有Angular CLI,我想我可以在命令行上使用Sass自定义函数,但我不知道如何将这种方法与Angular CLI一起使用.
也许我可以指定一些特定my-variables.sccs
用于所有Sass编译的路径?
Webpack的sass-loader 陈述如下,但我不知道我是否可以使用Angular CLI:
环境变量
如果要在实际输入文件之前添加Sass代码,只需设置该
data
选项即可.在这种情况下,sass-loader不会覆盖该data
选项,只是附加条目的内容.当一些Sass变量依赖于环境时,这尤其有用:Run Code Online (Sandbox Code Playgroud){ loader: "sass-loader", options: { data: "$env: " + process.env.NODE_ENV + ";" } }
任何的想法?
我正在制作Mac应用程序,我希望我的菜单栏看起来正确.
任何Mac用户都知道菜单栏应该在顶部屏幕菜单中.在属性列表文件中设置apple.laf.useScreenMenuBar
为true
删除框内菜单栏并将当前聚焦窗口的菜单栏移动到屏幕菜单.
但是,当所有窗口都隐藏或没有窗口时,没有菜单栏移动到顶部,你只需要一个空白菜单.我听说解决这个问题的方法是创建一个在没有其他人的时候聚焦的屏幕外窗口.它的唯一目的是它的菜单,以便当其他菜单消失时它可以填写.
但是,我遇到了很多问题.我似乎无法将窗口移出屏幕,因为Macs不允许您将坐标设置为超出屏幕大小的位置; 它只是将它切断并将其定位在边缘.制作屏幕外窗口还有什么我需要做的吗?
我需要使用Android的BDD测试框架,并在UI级别上测试大多数框架.是否有任何非UI框架,如jBehave在DVM上运行?
java ×3
eclipse ×2
glassfish ×2
android ×1
angular ×1
angular-cli ×1
bdd ×1
concat ×1
css ×1
css3 ×1
google-oauth ×1
google-plus ×1
hidden ×1
http-chunked ×1
javascript ×1
jquery ×1
json ×1
macos ×1
menu ×1
mysql ×1
oauth-2.0 ×1
sass ×1
scope ×1
streaming ×1
webpack ×1
window ×1
xml ×1
xstream ×1