通过使用XJC,我在每个包中创建了2个不同的JAXB元数据包和一个ObjectFactory类(我不知道这种方法是否正常,我有2个不同的XSD可以工作)
建议每次操作只创建一个JAXBContext,因为它很省钱.所以我想知道我在这里做的是否有效和良好的做法?
JAXBContext jaxbContext = JAXBContext.newInstance("com.package.one");
Unmarshaller jaxbUnmarshaller1 = jaxbContext.createUnmarshaller();
JAXBContext jaxbContext2 = JAXBContext.newInstance("com.package.two");
Unmarshaller jaxbUnmarshaller2 = jaxbContext2.createUnmarshaller();
Run Code Online (Sandbox Code Playgroud)
编辑当我尝试初始化2个包时,我得到一个异常"元素名称{}值有多个映射." 值是两个包中的一个类.
JAXBContext jaxbContext = JAXBContext.newInstance("com.package.one:com.package.two");
Run Code Online (Sandbox Code Playgroud) <ProductInformation Context="GL">
<Assets>
<Asset ID="assetID" UserTypeID="ID">
<Name>name</Name>
<Reference ClassificationID="id"/>
<Values>
<Value AttributeID="ID">Value1</Value>
<Value AttributeID="ID">Value2</Value>
<MultiValue AttributeID="attributeID">
<Value>value3a</Value>
<Value>value3b</Value>
</MultiValue>
</Values>
</Asset>
</Assets>
<Products>....</Products>
</ProductInformation>
Run Code Online (Sandbox Code Playgroud)
我使用xml-> xsd和xjc从中创建类.
现在我想创建我的ProductInformation对象,并对其进行编组.
我的问题是xjc创建3个类和一个objectfactory,以及ProductInformation中的一些嵌套类.当我看到可用的方法时,我主要看到的是吸气剂而不是吸气剂.
"资产"类没有像这样的方法;
asset.setValues(List<Value> values)
Run Code Online (Sandbox Code Playgroud)
我最后写了这样有趣的代码;
ProductInformation.Assets.Asset.Values.MultiValue multivalue=new ProductInformation.Assets.Asset.Values.MultiValue();
Run Code Online (Sandbox Code Playgroud)
Jaxb这是正常的吗?
在iPhone上工作之后,经过很多头痛和内存问题后我才从其他示例中了解到,我们不需要为头文件中定义的每个实例变量创建@properties.实际上我发现ivars很容易在我在课堂上的任何地方使用后分配和释放它,对于@properties我必须使用autorealese或者我有严重的问题并且因为我如何分配..
例如,对于下面的对象,许多示例中的标题中未使用@properties(retain/copy ..);
{
NSURLConnection *connection;
NSMutableData *xmlData;
NsMutableString *string
}
Run Code Online (Sandbox Code Playgroud)
但是对于某些字符串或对象类型使用@properties,我知道当我们设置@property时,cocoa会创建一些setter getter来处理对象的重新发送和保留.但似乎对于xmlData或连接实例变量我们不需要它,他们就像这样做.
在决定是否创建@ property或仅使用简单的ivars时,是否有一些参考指南?
我在使用属性时唯一的问题是因为我懒得定义它,但是当我在代码中仔细分配并初始化它们时,我必须使用autorelase并且不觉得我有控件何时释放重置并再次分配它,并且它让我有一件事需要担心,我何时以及何时应该释放,重置它.我发现ivars我可以随时轻松地分配和释放一次而不用担心任何事情......或者我在这里错过了其他的东西.
TNX
是否可以在Java中使用三元运算符来应用增量?
例如,我想在没有"if"语句的情况下进行此操作,不是因为它更具可读性或更短,只是我想知道.
if(recordExists(recordId)){
numberofRecords++;
}
Run Code Online (Sandbox Code Playgroud) 一些背景;
默认情况下,当您单击指向单独HTML页面的链接时,JQM会在该页面上加载第一个data-role ="page"并将其附加到第一页的DOM,但事情是JQM只加载该页面div而不是任何脚本等容器外面的等等.
我有一个jQuery移动应用程序有5页"login.html""menu.html""account.html""settings.html"..等
我改变页面的样子;
$.mobile.changepage("account.html")
Run Code Online (Sandbox Code Playgroud)
另外,我将所有页面加载逻辑放到我的第一页login.html中 ;
<script>
$(document).on('pageinit', '#loginpage', function() {
//do some stuff run some ajax scripts and add some html to its body
});
$(document).on('pageinit', '#accountpage', function() {
//do some stuff run some ajax scripts and add some html to its body
});
$(document).on('pageinit', '#settingspage', function() {
//do some stuff run some ajax scripts and add some html to its body
});
</script>
Run Code Online (Sandbox Code Playgroud)
虽然这个应用程序运行良好,问题是我发现它非常脆弱,很难从意外错误中幸存下来.例如;
由于每个页面的主体html将如何加载在login.html中定义,这意味着如果用户手动刷新任何这些页面的任何时刻,页面将加载而不运行这些脚本并加载没有正文的空页面.在那一刻,因为从内存中删除了正确的DOM,用户被困在一个装满空页的应用程序中,唯一的方法是他足够智能去输入"login.html"到地址栏然后才能启动所有进程顺利.
我想我们不能100%隐藏地址栏,滚动下来后再次可见.
所以这是我提出的一个问题,其他一些奇怪的事情可能会发生,如果不知何故DOM被破坏只能再次使用应用程序的方法是输入login.html地址栏,用户可能不会对此有所了解.
如何让这个应用程序更健壮,比如检测任何DOM损坏或刷新并将用户转发到login.html,这样他就不会陷入使用空页面的应用程序中.
我有一个3模块maven项目与父pom.当我运行maven clean-compile-test时从父进程.它在测试阶段失败,并且为我的本地类提供了大量编译错误,说"找不到符号".
如果我在运行maven测试之前使用"Make Project"按钮,我发现使用IntelliJ ide,然后maven测试工作!
编辑:现在我发现probelem是maven编译不会在目标文件夹中创建类文件由于某种原因这是我在父pom文件中的maven编译器插件配置:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<excludes>
<exclude>**/*.*</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
使用以下GET请求:
ResponseEntity<String> entity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, String.class );
entity.getBody();
Run Code Online (Sandbox Code Playgroud)
返回这样的JSON字符串:
{"userRegistrations":[{"userRegistrationToken":"fb398972","userRegistrationTokenAlias":"87f15f8"}]}
Run Code Online (Sandbox Code Playgroud)
但是我想使该对象与字符串一起工作。因此,使用下面的代码,我收到一个带有空UserTokenResponse列表的UserRegistrations对象
ResponseEntity<UserRegistrations> entity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, UserRegistrations.class );
entity.getBody();
Run Code Online (Sandbox Code Playgroud)
我的域类如下所示:
public class UserRegistrations {
List<UserTokenResponse> userRegistrationList;
//..getters and setters
}
public class UserTokenResponse {
private String userRegistrationToken;
private String userRegistrationTokenAlias;
//getters and setters
}
Run Code Online (Sandbox Code Playgroud)
我想念什么?
我有一个使用 Spring Batch 的 Spring Boot 应用程序。我现在想实现一个管理面板来查看所有作业状态。为此,Spring 有“spring-batch-admin”,但我发现它很久以前就已被弃用:
Spring Batch Admin 的功能大部分已通过 Spring Cloud Data Flow 进行复制和扩展,我们鼓励所有用户今后迁移到该功能。
但 Spring Cloud Data Flow 说:
管道由 Spring Boot 应用程序组成,使用 Spring Cloud Stream 或Spring Cloud Task 微服务框架构建
那么为了使用这个功能,我真的需要将我的 Spring Boot 应用程序转换为微服务吗?仅仅为了查看一些批次状态这不是矫枉过正吗?另外,我无法在生产服务器上安装 docker(由于各种原因) 我是否仍然可以在没有 docker 的情况下使用 Spring Cloud Data Flow?
<h:selectBooleanCheckbox id="deactivate" title="select to deactivate" />
Run Code Online (Sandbox Code Playgroud)
我的JSF页面上有一个复选框和一个按钮.我希望仅在选中复选框时才启用该按钮.
在我的java类中没有手动javascript和没有监听器方法的JSF方式是什么.应该有一种方式可以用一种表达方式来做;
"panel group rendered=#{}"
Run Code Online (Sandbox Code Playgroud)
一个按钮呈现为启用,一个按钮呈现或禁用.
Springboot 2.2.0.RELEASE,Flyway 版本 6.0.6
我正在尝试迁移到 Spring Boot 2.2。但是当我启动应用程序时,我遇到了飞行错误。(mvn clean install 工作正常)我的解释是它无法正确读取位置,所以它认为文件是重复的。实际上,在不同的文件夹中。
spring.flyway.locations=classpath:db/migration/common,classpath:db/migration/{vendor}
Run Code Online (Sandbox Code Playgroud)
错误:
在 16.0 版中发现了多个迁移
违规者:../target/classes/db/migration/h2/V16.0__spring_batch_schema.sql (SQL) ../target/classes/db/migration/oracle/V16.0__spring_batch_schema.sql (SQL)
java ×7
jaxb ×2
spring ×2
spring-boot ×2
flyway ×1
html ×1
ios ×1
iphone ×1
javascript ×1
jquery ×1
jsf ×1
marshalling ×1
maven ×1
objective-c ×1
resttemplate ×1
spring-cloud ×1
xjc ×1