由于需求的变化,我们不得不单独从服务器上使用REST服务。我见过它的改型。但我不确定如何在DAO类中使用它而不是SQL查询。
我们已经研究了公共汽车的概念,这需要更多的返工。我们希望对代码进行最小的更改来合并此更改。
如果还有什么需要,请告诉我。
techList=new ArrayList<Technology>();
techList=technologyBL.getAllTechnology(appId);
adapterTech=new TechnologyAdapter(this,new ArrayList<Technology> (techList));
listView.setAdapter(adapterTech);
技术BL:
public List<Technology> getAllTechnology(String appId) {
techList=technologyDao.getAllTechnology(appId);
// some logic
return techList;
}
技术刀:
public List<Technology> getAllTechnology(String appId) {
//sql queries
return techList;
}
技术模型:
class Technology{
String id,techName,techDescription;
//getters & setters
}
public interface IRestClient {
@GET("/apps/{id}/technologies")
void getTechnoloies(@Path("id") String id,Callback<List<Technology>> cb);
//Remaining methods
}
public class RestClient {
private static IRestClient REST_CLIENT;
public static final String BASE_URL = "http://16.180.48.236:22197/api";
Context context;
static {
setupRestClient();
}
private RestClient() {}
public static RestClient get() {
return REST_CLIENT;
}
private static void setupRestClient() {
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(BASE_URL)
.setClient(getClient())
.setRequestInterceptor(new RequestInterceptor() {
//cache related things
})
.setLogLevel(RestAdapter.LogLevel.FULL)
.build();
REST_CLIENT = restAdapter.create(IAluWikiClient.class);
}
private static OkClient getClient(){
//cache related
}
}
techList=RestClient.get().getTecchnologies(id);
DAO中的异步调用:
RestClient.get().getTechnolgies(id,new CallBack<List<Technolgy>(){
@Override
public void success(List<Technology> technologies, Response response) {
techList=technologies;
}
@Override
public void failure(Retrofit error){}
});
你有两个选择。
第一个是在活动中创建referfit回调:
RestClient.get().getTechnolgies(id,new CallBack<List<Technolgy>(){
@Override
public void success(List<Technology> technologies, Response response) {
ArrayList<Technology> techList = technologyBL.someLogic(technologies);
adapterTech=new TechnologyAdapter(this,techList);
listView.setAdapter(adapterTech);
}
@Override
public void failure(Retrofit error){}
});
注意,您必须将//某些逻辑
部分提取到单独的BL方法中。
RestClient.get().getTechnolgies(id)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1<List<Technology>>() {
@Override
public void call(List<Technology> technologies) {
ArrayList<Technology> techList = technologyBL.someLogic(technologies);
adapterTech=new TechnologyAdapter(this,techList);
listView.setAdapter(adapterTech);
}
});
public interface IRestClient {
@GET("/apps/{id}/technologies")
Observable<List<Technology>> getTechnologies(@Path("id") String id);
//Remaining methods
}
但我收到一条错误消息:
其实针对大多应用场景,DNS 是不会频繁变更的,使用 Nginx 默认的 resolver 配置方式就能解决。 对于部分应用场景,可能需要支持的系统众多:win、centos、ubuntu 等,不同的操作系统获取 DNS 的方法都不太一样。再加上我们使用 Docker,导致我们在容器内部获取 DNS 变得更加难以准确。 如何能够让 Nginx 使用随时可以变化的 DNS 源,成为我们急待解决的问题
我需要使50 http获取请求尽快与Android的改型。我正在使用OKHTTP的改型。目前,与普通Java和相比,Retrofit的工作做得很差:对于所有50个请求,如果我为设置池大小20,则为Retrofit设置50sec,为普通设置30sec,而为Retrofit/OkHttp设置。 如果查看logcat,我可以看到无论在中设置了什么,registfit最多执行5个并发请求,而在中,并发请求
我根据这两个指南创建了一个基于Quarkus 2.1.2的新Kafka Stream项目: https://quarkus.io/guides/kafka-streams https://quarkus.io/guides/kafka-schema-registry-avro 我将一些Avro模式放在文件夹中,并使用Maven构建了项目。构建成功,但在目录中没有任何Java类。 正如新版Quark
我有Spring Boot应用程序,我使用JPA层与PostgreSQL交谈。我有一个类型UUID的非主键,我想在调用保存方法时自动生成。我用@GeneratedValue注释了属性,但插入时列值为空。 我还创建了列: 在这种情况下如何自动生成非主要UUID值?
Imgur API对发出get请求所需的授权进行了如下说明: 对于公共只读和匿名资源,如获取图像信息、查找用户注释等,所需做的就是在请求中发送一个带有的授权标头。如果您希望匿名上传图像(图像 不与帐户绑定),或者希望创建匿名 相册,也可以使用此方法。这让我们知道哪个应用程序正在访问API。 我已经看了下面的问题,并尝试了那里建议的东西,但都没有帮助。 带凭据的JSON NSURLRequest 带