导航:首页 > 净水问答 > spring过滤器https

spring过滤器https

发布时间:2022-02-22 04:34:46

⑴ springMVC怎么配置出https用作登录

/*编码转换,确保写数据库的时候不会出现乱码*/publicclassCodingConvert{publicCodingConvert(){//}publicStringtoGb(StringuniStr){StringgbStr="";if(uniStr==null){uniStr="";}try{byte[]tempByte=uniStr

⑵ springMVC怎么配置出https用作登录

首先,要生成SSL证书。 二,配置tomcat,指定证书位置。 三,配置Spring,指定https访问路径 可以看看

⑶ springMVC怎么配置出https用作登录

首先,要生成SSL证书。
二,配置tomcat,指定证书位置。
三,配置Spring,指定https访问路径。

⑷ springMVC怎么配置出https用作登录

首先,要生成SSL证书。 二,配置tomcat,指定证书位置。 三,配置Spring,指定https访问路径。

⑸ Java实现拦截HTTP请求的几种方式

在Java的服务端开发当中,拦截器是很常见的业务场景,这里对Java开发当中几种常见的拦截器的实现方式进行记录和分析。案例说明基于Spring Boot环境。
一:实现javax.servlet.Filter接口(使用过滤器方式拦截请求)
import org.springframework.stereotype.Component;import javax.servlet.*;import java.io.IOException;import java.util.Date;@Componentpublic class TimeInterceptor implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println("time filter init");}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {System.out.println("time filter start");long start = new Date().getTime();filterChain.doFilter(servletRequest, servletResponse);System.out.println("time filter 耗时:"+(new Date().getTime()-start));System.out.println("time filter finish");}@Overridepublic void destroy() {System.out.println("time filter destroy");}}

如使用@Compent注解声明不需要加入其它配置即可使得拦截器生效,但是默认拦截/*,会拦截所有请求。
二:使用@Bean注入自定义拦截器,依然上面的代码,去掉@Compent注解,创建TimeWebConfig配置类:
import org.springframework.boot.web.servlet.FilterRegistrationBean;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.ArrayList;import java.util.List;@Configurationpublic class TimeWebConfig {@Beanpublic FilterRegistrationBean timeFilter(){FilterRegistrationBean registrationBean = new FilterRegistrationBean();TimeInterceptor interceptor = new TimeInterceptor();registrationBean.setFilter(interceptor);List<String> urls = new ArrayList<>();urls.add("/user/*");registrationBean.setUrlPatterns(urls);return registrationBean;}}

上面这两种拦截请求的实现是基于JavaEE提供的Filter接口实现的,缺点在于,该拦截器实际上是一个过滤器,执行代码的方法doFilter只提供了request,response等参数,当请求进入被过滤器拦截的时候,我们并不知道这个请求是由哪个控制器的哪个方法来执行的。
三:使用springMVC提供的拦截器,实现org.springframework.web.servlet.HandlerInterceptor接口:
创建自定义的拦截器:
import org.springframework.stereotype.Component;import org.springframework.web.method.HandlerMethod;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.util.Date;@Componentpublic class MyInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object handler) throws Exception {System.out.println("preHandler");System.out.println(((HandlerMethod) handler).getBean().getClass().getName());System.out.println(((HandlerMethod) handler).getMethod().getName());httpServletRequest.setAttribute("start", new Date().getTime());return true;}@Overridepublic void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {System.out.println("postHandler");Long start = (Long) httpServletRequest.getAttribute("start");System.out.println("time interceptor 耗时:"+(new Date().getTime()-start));}@Overridepublic void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {System.out.println("afterCompletion");Long start = (Long) httpServletRequest.getAttribute("start");System.out.println("time interceptor 耗时:"+(new Date().getTime()-start));System.out.println("ex is:"+e);}}

创建配置类:
import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter {@Autowiredprivate MyInterceptor interceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(interceptor).addPathPatterns("/user/*").excludePathPatterns("/blog/*");}}

此种方式的拦截器当中我们能够获取拦截的请求对应的类和方法的相关信息,缺点在于该handler对象无法获取具体执行方法的参数信息。
四:利用Spring的切面(AOP)实现拦截器:
引入jar包:
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-aop --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency>

创建切片类:
import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.springframework.stereotype.Component;import java.util.Date;@Aspect@Componentpublic class TimeAspect {@Around("execution(* com.qinker.controller.UserController.*(..))")public Object handlerControllerMethod(ProceedingJoinPoint point) throws Throwable {System.out.println("time aspect start");long start = new Date().getTime();Object[] args = point.getArgs();for (Object obj : args) {System.out.println("arg is:"+obj);}Object obj = point.proceed();//具体方法的返回值System.out.println("aspect 耗时:"+(new Date().getTime()-start));System.out.println("time aspect end");return obj;}}
aspectj基于AOP实现的拦截器功能十分强大,具体详解请参考spring官网网站的文档。

⑹ spring boot 怎么配置的https是永久的吗

Gworg里面先申请SSL证书,最长只能1年,没有永久的。

具体流程:

  1. 进入Gworg拿到SSL证书,里面有JKS证书与密码。

  2. spring boot根据该技术文档配置SSL证书:网页链接

  3. 服务器防火墙允许443端口或者其它自定义的HTTPS端口,云服务器需要额外在控制面板设置。

解决办法:进入服务器选择JKS证书配置文档就可以了。

⑺ Java SpringMVC如何开放一个https接口

通过在tomcat的server.xml中可以配置,普通请求在8080端口上,https在8448端口上,具体的配置你可以网上找找看很多。
这样tomcat就可以完成到调用者的数据传输加密。业务层无干扰。

⑻ spring boot怎么支持https

这个跟springmvc一样的啊,首先你看你的spring-mvc.xml有没有配置defaultViewResolver,然后你在action的方法中如果1.标注了@ResponseBody,返回字符串的话是通过write输出到页面。2.没有标注这个,springmvc会到配置的目录下找相应的jsp。比如返回"hello",它就在webpage/目录下找hello.jsp。返回"user/login",它就会找webpage/user/login.jsp

阅读全文

与spring过滤器https相关的资料

热点内容
城市污水设计流量怎么算 浏览:902
砌电力井下面碰到污水管该怎么办 浏览:254
废水中锌的检出限是多少 浏览:696
佛山豹王滤芯制造有限公司怎么样 浏览:857
厨房用污水提升泵 浏览:108
化工厂污水里都是什么虫子图片 浏览:179
离子交换再生废水 浏览:275
工业污水中总铁标准是多少 浏览:845
发达国家城市污水怎么处理 浏览:239
史密斯净水机为什么不出水了 浏览:759
反渗透膜半年 浏览:962
克鲁兹机油滤芯多少钱 浏览:310
净水机用什么反渗透膜 浏览:348
树脂固化剂存放 浏览:147
废水中的氯化汞如何采样 浏览:749
小米空气净化器怎么设置转速 浏览:938
突发事故废水超标排放如何处罚 浏览:601
低空排放油烟净化器怎么清洗 浏览:469
松下空气净化器过滤网怎么安装的 浏览:180
柴油油滤芯怎么区分上下 浏览:882