redshift database 连接异常

解决方案

url 修改添加参数如下

jdbc:redshift://hostname:5439/dbname?ssl=true&sslfactory=com.amazon.redshift.ssl.NonValidatingFactory

java 8 lambda 表达式应用

// 拆分 参数并去左右空格
public static List<String> splitStr2List(String params,String delimeter){
return Arrays.asList(params.split(delimeter)).stream().map(param->param.trim()).collect(Collectors.toList());
}

spring 中一个接口多个实现类注入

1. 首先, Interface1 接口有两个实现类 Interface1Impl1 和 Interface1Impl2

Interface1 接口:

package com.example.service;

/**
* Created by liuzh on 2018-05-29.
* 接口1
*/
public interface Interface1 {
void fun1();
}
以下是接口的两个实现类,请注意@service注解的使用方式,这里给每个实现类标注了不同的名称,方便在@Resource注入时区别注入 Interface1 接口实现类1: package com.example.service.impl; import com.example.service.Interface1;
import org.springframework.stereotype.Service; /**
* Created by liuzh on 2018-05-29.
*/
@Service("s1")
public class Interface1Impl1 implements Interface1 {
@Override
public void fun1() {
System.out.println("接口1实现类 ...");
} public void fun2(){
System.out.println("接口1实现类1 fun2 ...");
}
}
20
Interface1 接口实现类2: package com.example.service.impl; import com.example.service.Interface1;
import org.springframework.stereotype.Service; /**
* Created by liuzh on 2018-05-29.
*/
@Service("s2")
public class Interface1Impl2 implements Interface1 {
@Override
public void fun1() {
System.out.println("接口1实现类 ...");
} public void fun2(){
System.out.println("接口1实现类2 fun2 ...");
}
}
2. 通过 @Autowired 和 @Qualifier 配合注入 @Autowired
@Qualifier("interface1Impl1")
Interface1 interface1; //正常启动 3. 使用@Resource注入,根据默认类名区分 @Resource(name = "interface1Impl1")
Interface1 interface1; //正常启动 4. 使用@Resource注入,根据@Service指定的名称区分 @Resource(name = "s1")
Interface1 interface1; //正常启动
使用@Resource注入,根据@Service指定的名称区分,可以避免多个实现类在不同包下,但是类名相同的情况。

最近项目需要添加 SSO ,webservice 也难逃一劫,所以这里用上 拦截器做 SSO 拦截

package com.middleplugin.interceptor;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class SSOInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
return false;
} @Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { } @Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { }
} package com.middleplugin.interceptor; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; @EnableWebMvc
@Configuration
public class AdapterConfig extends WebMvcConfigurerAdapter {
@Bean
SSOInterceptor ssoInterceptor(){
return new SSOInterceptor();
} public void addInterceptors(InterceptorRegistry registry){
// 多个拦截器组成一个拦截器链
// addPathPatterns 用于添加拦截规则
// excludePathPatterns 用户排除拦截
registry.addInterceptor( ssoInterceptor()).addPathPatterns("/**");
super.addInterceptors(registry);
}
}

构造访问请求命令, 便于 工作

    for query_string in ['colon cancer, NTRK1, NTRK2, NTRK3',
'colon cancer NTRK1 NTRK2 NTRK3',
'breast cancer patients who are at least 18 years old',
'breast cancer 18 years or older','breast cancer patients age 70 to 80',
'pancreatic cancer patients age 80 or older',
'patients with breast cancer, gene mutation NTRK1, NTRK2, NTRK3, and do not have larotrectinib',
'patients with breast cancer, gene mutation NTRK1, NTRK2, NTRK3, and no larotrectinib',
'colon cancer patient with overall survival over 18 months','colon cancer patient with overall survival more than 18 months',
'colon cancer patient with karnofsy > 60%','colon cancer patient with karnofsy greater than 60%']:
template = """ curl -v -H 'Content-Type: application/json' -X POST -d '$"query_string":"{}"@' http://localhost:5000/v1/nlpquery/get """.format(query_string)
template = template.replace(r'$','{').replace(r'@','}')
print(template)

webservice 项目中遇到的问题的更多相关文章

  1. 在web项目中使用cxf开发webservice,包含spring支持

    本文主要介绍了,如何使用cxf内置的例子,学会开发webserivce,在web项目中使用,且包含spring支持. webserivce的开发可以使用cxf或者axis,好像还有httpclient ...

  2. 在java项目中使用webservice

    今天学习webservice,主要参考了网络上的一些文章. 1.关于原理的介绍:个人认为这篇文章写得不错了,戳这里. 2.关于demo的编写:个人认为这篇文章很简洁,也能运行成功,戳这里. 按照上面那 ...

  3. java web项目(spring项目)中集成webservice ,实现对外开放接口

    什么是WebService?webService小示例 点此了解 下面进入正题: Javaweb项目(spring项目)中集成webservice ,实现对外开放接口步骤: 准备: 采用与spring ...

  4. JAVA项目中公布WebService服务——简单实例

    1.在Java项目中公布一个WebService服务: 怎样公布? --JDK1.6中JAX-WS规范定义了怎样公布一个WebService服务. (1)用jdk1.6.0_21以后的版本号公布. ( ...

  5. 如何在SpringMVC项目中部署WebService服务并打包生成客户端

    场景 某SpringMVC项目原本为一个HTTP的WEB服务项目,之后想在该项目中添加WebService支持,使该项目同时提供HTTP服务和WebService服务.其中WebService服务通过 ...

  6. myeclipse构建webservice项目

    新建server端 1 创建Web Service Project项目 2.项目名称:HelloWorldServer 3.创建接口类 4.发布 选择项目名称,选择从Java类中构建web servi ...

  7. 转 web项目中的web.xml元素解析

    转 web项目中的web.xml元素解析 发表于1年前(2014-11-26 15:45)   阅读(497) | 评论(0) 16人收藏此文章, 我要收藏 赞0 上海源创会5月15日与你相约[玫瑰里 ...

  8. Axis2在Web项目中整合Spring

    一.说明: 上一篇说了Axis2与Web项目的整合(详情 :Axis2与Web项目整合)过程,如果说在Web项目中使用了Spring框架,那么又改如何进行Axis2相关的配置操作呢? 二.Axis2 ...

  9. 如何查看.Net源代码vs版本号以及C#项目中各文件的含义

    查看.Net源代码vs版本号以及C#项目中各文件的含义 用记事本打开vs项目的.sln文件. 第2行就是这个源代码包的开发软件vs版本号了 注意了,如果是vs2003的sln文件通常没有这行,可以判断 ...

随机推荐

  1. PHP错误代号列表

    代号 代号 语法 参考 T_ABSTRACT abstract 抽象类(自 PHP 5.0.0 起可用) T_AND_EQUAL &= 赋值运算符 T_ARRAY array() array( ...

  2. 洛谷P1084 疫情控制(NOIP2012)(二分答案,贪心,树形DP)

    洛谷题目传送门 费了几个小时杠掉此题,如果不是那水水的数据的话,跟列队的难度真的是有得一比... 话说蒟蒻仔细翻了所有的题解,发现巨佬写的都是倍增,复杂度是\(O(n\log n\log nw)\)的 ...

  3. nginx php-fpm conf文件编写

    coco.conf ##upstream upstream php_coco_backend{ server 127.0.0.1:8019; } server { listen 80; server_ ...

  4. [NOI2010]航空管制(拓扑排序+贪心)

    题目描述 世博期间,上海的航空客运量大大超过了平时,随之而来的航空管制也频频发生.最近,小X就因为航空管制,连续两次在机场被延误超过了两小时.对此,小X表示很不满意. 在这次来烟台的路上,小X不幸又一 ...

  5. centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试

    续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:cli ...

  6. centos7搭建ELK Cluster集群日志分析平台(二):Logstash

    续  centos7搭建ELK Cluster集群日志分析平台(一) 已经安装完Elasticsearch 5.4 集群. 安装Logstash步骤 . 安装Java 8 官方说明:需要安装Java ...

  7. 2017蓝桥杯 省赛C题(承压计算)

    X星球的高科技实验室中整齐地堆放着某批珍贵金属原料. 每块金属原料的外形.尺寸完全一致,但重量不同.金属材料被严格地堆放成金字塔形. 7 5 8 7 8 8 9 2 7 2 8 1 4 9 1 8 1 ...

  8. ocr智能图文识别 tess4j 图文,验证码识别

    最近写爬虫采集数据,遇到网站登录需要验证码校验,想了想有两种解决办法 1,利用htmlunit,将验证码输入到swing中,并弹出一个输入框,手动输入验证码,这种实现方式,如果网站需要登录一次可以使用 ...

  9. JS原生 未来元素监听写法

    绑定事件的另一种方法是用 addEventListener() 或 attachEvent() 来绑定事件监听函数. addEventListener()函数语法:elementObject.addE ...

  10. A1107. Social Clusters

    When register on a social network, you are always asked to specify your hobbies in order to find som ...