首页 文章 精选 留言 我的

精选列表

搜索[按需加载],共10000篇文章
优秀的个人博客,低调大师

在线图源或者离线资源的国家队-天地图简介及Qgis加载相关资源实战

相信作为地理信息方面的从业者,大家一定在平时的工作或者学习过程中或多或少的需要使用到在线图源,比如在WebGIS方面的地图应用,需要访问到在线的底图、地名标记图层等。于此同时,如果需要进行空间分析,我们通常需要将矢量文件和栅格数据进行空间分析。这里用的物理文件就是离线的物理文件,比如Shp和GDB等矢量文件。在互联网上有很多公开的矢量数据或者在线的图源,但是由于某些原因(具体的原因暂且不表),它的空间位置和空间范围或者标志信息是不对的,不符合现状的。

优秀的个人博客,低调大师

springboot页面加载时找不到静态资源下的文件,js与css以及图片,拦截器

最近在使用springboot时,前几天正常访问的页面,突然间访问不到js、css、图片等静态资源。经过排查发现是由于我发现程序中提示webmvcconfigureradapter已过期,所以改成了WebMvcConfigurationSupport 而WebMvcConfigurationSupport在 springboot的web自动配置类WebMvcAutoConfiguration 上有条件注解,这个注解的意思是在项目类路径中缺少WebMvcConfigurationSupport类型的bean时改自动配置类才会生效 @ConditionalOnMissingBean(WebMvcConfigurationSupport.class) 所以当我们使用拦截器并继承WebMvcConfigurationSupport这个类的时候需要重写addInterceptors这个方法 所以拦截器的配置应该如下 代码1: package com.example.syscloud.Interceptor; import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; @Configurationpublic class WebSecurityConfig extends WebMvcConfigurationSupport { @Bean public SessionInterceptor getSessionInterceptor() { return new SessionInterceptor(); } @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/**").addResourceLocations("classpath:/static/"); super.addResourceHandlers(registry); } @Override public void addInterceptors(InterceptorRegistry registry) { /*调用我们创建的SessionInterceptor。 * addPathPatterns("/**)的意思是这个链接下的都要进入到SessionInterceptor里面去执行 * excludePathPatterns("/login")的意思是login的url可以不用进入到SessionInterceptor中,直接 * 放过执行。 * 注意:如果像注释那样写是不可以的。这样等于是创建了多个Interceptor。而不是只有一个Interceptor * * */ SessionInterceptor sessionInterceptor=new SessionInterceptor(); registry.addInterceptor(sessionInterceptor).addPathPatterns("/**") .excludePathPatterns("/user/login","/userAPI/login","/user/defaultKaptcha","/publicPage/login","/css/**","/js/**","/img/**","/static/**","/mapper/**"); super.addInterceptors(registry); } }代码2: package com.example.syscloud.Interceptor; import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.example.syscloud.bean.templeBean.UserTokenBean;import com.example.syscloud.token.TokenUse;import com.example.syscloud.unit.ReturnCode;import com.example.syscloud.unit.ReturnData;import com.example.syscloud.unit.UserTokenMap;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.util.HashMap;import java.util.Map; public class SessionInterceptor implements HandlerInterceptor { /*在执行Controller的任务之前判断是否有Session信息 如果有Session信息就往下执行,去调用Controller。 如果没有Session就跳转到登录页面 */ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { response.setCharacterEncoding("utf-8"); String token=request.getHeader("token"); String android=request.getHeader("android"); if (token!=null){ boolean bo= TokenUse.tokenVerify(token); int userid=TokenUse.getUserID(token); UserTokenBean userTokenBean =UserTokenMap.getMap(userid); if (userTokenBean!=null) { if (userTokenBean.getToken().equals(token) && bo) { Map<Integer,UserTokenBean> map=new HashMap<>(); map=UserTokenMap.getMap(); map.put(userid,userTokenBean); UserTokenMap.setMap(map); return true; } } } HttpSession session=request.getSession(); if(session.getAttribute("LoginName")!=null){ return true; } if(android!=null){ ReturnData returnData=new ReturnData(); returnData.setCode(ReturnCode.Timeout.value()); returnData.setMessage(ReturnCode.Timeout.getDesc()); String str=JSON.toJSONString(returnData); JSONObject jsonObject=JSON.parseObject(str); response.getWriter().print(jsonObject); }else { //拦截后返回的页面 String url = "/publicPage/login"; // response.sendRedirect(url); response.getWriter().print("<script> top.window.location.href = '"+url+"?r='+Math.random() ;</script>"); } return false; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { } }第二段代码是通过验证session与token实现拦截与放行功能,我写一起了,可根据需要删除部分内容

优秀的个人博客,低调大师

安卓开发, 遇到WebView不能加载静态网页, WebView显示 "net::ERR_PROXY_CONNECTON_FAILED" h...

http://blog.csdn.net/zhouchangshi/article/details/44454695 Android开发中遇到网络连接问题, 要找WebView中显示一个静态的网页, 结果 ---- > logcat输出: "[INFO:CONSOLE(12)] "Not allowed to load local resource: file:///android_asset/webkit/android-weberror.png", source: data:text/html,chromewebdata (12)"; webview中显示"net::ERR_PROXY_CONNECTION_FAILED"字样, 这是什么问题? 折腾一番后.........原来是手机网络设置了代理, 只要把代理去掉就ok了 !! 分类: android solve 本文转自wanqi博客园博客,原文链接:http://www.cnblogs.com/wanqieddy/p/4915442.html,如需转载请自行联系原作者

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册