Java EE

报表中的地图怎么做?

独自空忆成欢 提交于 2020-10-28 18:07:26
在地图上展现地域相关的数据,是在公共设施管理、交通、电信、城市建设、能源、电力、农业等国民经济相关的应用系统中是比较常见的直观图表形式。以前,如果在报表应用系统中需要显示地图相关的信息,开发人员可能会第一时间想到 GIS(Geographic Information Software 地理信息软件),但是 GIS 的体系较大,需要开发人员定义 GIS 中被执行的各种任务,开发相应的处理程序。 熟练的操作人员甚至还需要克服 GIS 软件功能的不足。事实上,如果只是想做个地图显示数据,完全不必要用这么大的牛刀哦! 现在 echarts 这个小鲸鱼做地图数据呈现可以帮助我们轻松做出地图数据呈现,而润乾报表则将 echarts 脚本集成到了设计器下,在根据类别选好要做的地图模板后,通过设置下几个参数,一个数据地图就轻松完成了。 我们先来看几个润乾内置的 echarts 地图效果吧! 怎么样,是不是很酷炫?下面我们再通过一个例子,看看如此酷炫的地图是不是还需要那么复杂步骤…… 1、数据准备 连接数据源,新建报表,增加数据集。不论数据集是采用哪种方式得到的,最终整理好后的数据都应该是下面的格式。哈哈,不用紧张,字段名可以不一样哟。 注意:第二个字段城市的名字,省份的名字中一定不要出现省市的字样,例如:北京,不要写成北京市;黑龙江,不要写成黑龙江省,否则

Spring Boot:整合Spring Security

梦想与她 提交于 2020-10-28 15:12:14
综合概述 Spring Security 是 Spring 社区的一个顶级项目,也是 Spring Boot 官方推荐使用的安全框架。除了常规的认证(Authentication)和授权(Authorization)之外,Spring Security还提供了诸如ACLs,LDAP,JAAS,CAS等高级特性以满足复杂场景下的安全需求。另外,就目前而言,Spring Security和Shiro也是当前广大应用使用比较广泛的两个安全框架。 Spring Security 应用级别的安全主要包含两个主要部分,即登录认证(Authentication)和访问授权(Authorization),首先用户登录的时候传入登录信息,登录验证器完成登录认证并将登录认证好的信息存储到请求上下文,然后再进行其他操作,如在进行接口访问、方法调用时,权限认证器从上下文中获取登录认证信息,然后根据认证信息获取权限信息,通过权限信息和特定的授权策略决定是否授权。 本教程将首先给出一个完整的案例实现,然后再分别对登录认证和访问授权的执行流程进行剖析,希望大家可以通过实现案例和流程分析,充分理解Spring Security的登录认证和访问授权的执行原理,并且能够在理解原理的基础上熟练自主的使用Spring Security实现相关的需求。 实现案例 接下来,我们就通过一个具体的案例,来讲解如何进行Spring

SpringBoot 配置 Filter 过滤拦截的两种方式

六月ゝ 毕业季﹏ 提交于 2020-10-28 14:56:48
1.通过扫描注解完成Filter组件注册 创建一个类,实现Filter接口,实现doFilter()方法 在该类使用注解 @WebFilter ,设置 filterName 与 urlPatterns 在doFilter中编写代码 编写启动类:增加注解 @ServletComponentScan /** * SpringBoot整合Filter 方式一 项目 www.1b23.com */ //@WebFilter(filterName="FirstFilter" , urlPatterns= {"*.do","*.jsp"}) @WebFilter (filterName= "FirstFilter" , urlPatterns= "/first" ) public class FirstFilter implements Filter { @Override public void doFilter (ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println( "进入Filter" ); chain.doFilter(request, response); System.out

SpringBoot Filter 配置 过滤拦截的两种方式

心不动则不痛 提交于 2020-10-28 12:58:30
1.通过扫描注解完成Filter组件注册 创建一个类,实现Filter接口,实现doFilter()方法 在该类使用注解 @WebFilter ,设置 filterName 与 urlPatterns 在doFilter中编写代码 编写启动类:增加注解 @ServletComponentScan /** * SpringBoot整合Filter 方式一 项目 www.1b23.com */ //@WebFilter(filterName="FirstFilter" , urlPatterns= {"*.do","*.jsp"}) @WebFilter (filterName= "FirstFilter" , urlPatterns= "/first" ) public class FirstFilter implements Filter { @Override public void doFilter (ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println( "进入Filter" ); chain.doFilter(request, response); System.out

消息队列及常见消息队列介绍

非 Y 不嫁゛ 提交于 2020-10-28 12:31:50
一、消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要进行控制的时候,差不多就是需要使用消息队列的时候。 消息队列主要解决了应用耦合、异步处理、流量削锋等问题。 当前使用较多的消息队列有RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMq等,而部分数据库如Redis、Mysql以及phxsql也可实现消息队列的功能。 二、消息队列使用场景 消息队列在实际应用中包括如下四个场景: 应用耦合:多应用间通过消息队列对同一消息进行处理,避免调用接口失败导致整个过程失败; 异步处理:多应用对消息队列中同一消息进行处理,应用间并发处理消息,相比串行处理,减少处理时间; 限流削峰:广泛应用于秒杀或抢购活动中,避免流量过大导致应用系统挂掉的情况; 消息驱动的系统:系统分为消息队列、消息生产者、消息消费者,生产者负责产生消息,消费者(可能有多个)负责对消息进行处理; 下面详细介绍上述四个场景以及消息队列如何在上述四个场景中使用: 2.1 异步处理 具体场景:用户为了使用某个应用,进行注册,系统需要发送注册邮件并验证短信。对这两个操作的处理方式有两种:串行及并行。 (1)串行方式:新注册信息生成后,先发送注册邮件,再发送验证短信; 在这种方式下

06-springboot系列:共享session

老子叫甜甜 提交于 2020-10-28 12:31:36
分布式系统中,Session 共享有很多的解决方案,其中托管到缓存中应该是最常用的方案之一 。 共享 Session Spring Session 提供了一套创建和管理 Servlet HttpSession 的方案。Spring Session 提供了集群 Session(Clustered Sessions)功能,默认采用外置的 Redis 来存储 Session 数据,以此来解决 Session 共享的问题。 引入依赖 < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-data-redis </ artifactId > </ dependency > < dependency > < groupId > org.apache.commons </ groupId > < artifactId > commons-pool2 </ artifactId > </ dependency > < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-web </ artifactId > </

Servlet监听器

瘦欲@ 提交于 2020-10-28 10:35:37
Servlet监听器 一、简介 监听器的主要功能是负责监听web的各种操作,和js中的事件监听性质一样,当相关事件触发后将产生事件,并对此事件进行处理,在web中可以对对象application(servletContext)、session、request操作进行监听处理。 二、对application对象监听 对application监听,实际上就是对ServletContext监听,主要使用ServletContextListener和ServletContextAttributeeListener两个接口。 application状态监听:ServletContextListener接口 ServletContextListener接口定义的方法: NO 方法 描述 1 public void contextInitialized(ServletContextEvent sce) 容器启动时触发 2 public void contextDestroyed(ServletContextEvent sce) 容器销毁时触发 在以上状态监听操作中,一旦触发ServletContextListener接口定义的方法,可以通过ServletContextEvent进行事件的处理,此事件定义的方法如下: NO 方法 描述 1 public ServletContext

Spring 核心组件原理解析

此生再无相见时 提交于 2020-10-28 10:18:33
尽管希腊哲学家赫拉克利特(Heraclitus)并不作为一名软件开发人员而闻名,但他似乎深谙此道。他的一句话经常被引用:“唯一不变的就是变化”,这句话抓住了软件开发的真谛。 我们现在开发应用的方式和1年前、5年前、10年前都是不同的,更别提15年前了,当时RodJohnson的图书 Expert One-on-One J2EE Design and Development 介绍了Spring框架的初始形态。当时,最常见的应用形式是基于浏览器的Web应用,后端由关系型数据库作为支撑。尽管这种形式的开发依然有它的价值,Spring也为这种应用提供了良好的支持,但是我们现在感兴趣的还包括如何开发面向云的由微服务组成的应用,这些应用会将数据保存到各种类型的数据库中。 另外一个崭新的关注点是反应式编程,它致力于通过非阻塞操作提供更好的扩展性并提升性能。随着软件开发的发展,Spring框架也在不断变化,以解决现代应用开发中的问题,其中就包括微服务和反应式编程。Spring还通过引入Spring Boot简化自己的开发模型。 Spring 的核心 任何实际的应用程序都是由很多组件组成的,每个组件负责整个应用功能的一部分,这些组件需要与其他的应用元素进行协调以完成自己的任务。当应用程序运行时,需要以某种方式创建并引入这些组件。 Spring Framework 总共有十几个组件

Java面试之SpringMVC面试题

泪湿孤枕 提交于 2020-10-28 07:30:47
SpringMVC是一个模型-视图-控制器(MVC)的Web框架建立在中央前端控制器servlet(DispatcherServlet),它负责发送每个请求到合适的处理程序,使用视图来最终返回响应结果的概念。  1、讲下SpringMvc的核心入口类是什么,Struts1,Struts2的分别是什么   SpringMvc的是DispatchServlet,Struts1的是ActionServlet,Struts2的是StrutsPrepareAndExecuteFilter   2、SpringMvc的控制器是不是单例模式,如果是,有什么问题,怎么解决   是单例模式,所以在多线程访问的时候有线程安全问题,不要用同步,会影响性能的,解决方案是在控制器里面不能写字段   3、SpingMvc中的控制器的注解一般用那个,有没有别的注解可以替代   一般用@Conntroller注解,表示是表现层,不能用用别的注解代替.   4、@RequestMapping注解用在类上面有什么作用   用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。   5、怎么样把某个请求映射到特定的方法上面   直接在方法上面加上注解@RequestMapping,并且在这个注解里面写上要拦截的路径   6、如果在拦截请求中,我想拦截get方式提交的方法,怎么配置   可以在

持续集成和持续交付工具-jenkins

南楼画角 提交于 2020-10-28 06:29:56
打破原有的手动部署方式,实现程序自动化;通过 jenkins 来解放你的双手 jenkins说明 jenkins是一款由Java编写的开源的持续集成工具,它运行在Servlet容器中(例如Apache Tomcat)。它支持软件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处理命令,可以通过各种手段触发构建,例如提交给版本控制系统时被触发,也可以通过类似Cron的机制调度,也可以在其他的构建已经完成时,还可以通过一个特定的URL进行请求。 jenkins安装 官方下载: https://jenkins.io/zh/download/ 有相应系统的安装包和通用包(.war),通过Servlet容器运行 1、WAR包安装 将最新的稳定Jenkins WAR包 下载到您计算机上的相应目录。 在下载的目录内打开一个终端/命令提示符窗口。 运行命令 java -jar jenkins.war 浏览 http://127.0.0.1:8080 ,并等到 Unlock Jenkins 页面出现。 2、 brew 安装 Mac下执行 brew install jenkins-lts 命令安装