- el-table实现多列排序
KOi..
vue.js前端javascript
业务需求el-table需要支持多列排序,后端排序。即就是在点击后重新发送请求,点击一列的排序,另一列的排序样式能够保留,但是el-table默认是单列排序。页面/***@header-click="handleHeaderCLick"*点击表头文字触发的监听器**@sort-change="handleTableSort"*点击表头排序标签触发定时器*/data:{tmpTotal:0,tabl
- 11-js事件基础
echozzi
JavaScript基础javascript前端开发语言
文章目录一、事件概念二、事件绑定方式1.onxxx2.事件监听器addEventListener三、事件解绑方式方法1:覆盖原事件处理(置空)方法2:移除事件监听器removeEventListener四、事件派发方式方法1:onxxx方法2:dispatchEvent五、事件对象window.event六、点击事件的光标坐标点1.以页面为参考坐标page2.以可视窗口为参考client3.相对事
- flutter之:GetX 的 状态管理
神笔码靓
1.状态管理目前,Flutter的几种状态管理器,大多数都涉及到使用ChangeNotifier来更新widget,这对于中大型应用的性能来说是一个糟糕的方法。在Flutter官方文档中查到,ChangeNotifier应该使用1个或最多2个监听器,这使得它实际上无法用于任何中等或大型应用。1.1其他的状态管理器的差别:BLoC非常安全和高效,但是对于初学者来说非常复杂,这使得人们无法使用Flut
- 【SpringBoot】自定义监听器
女汉纸一枚
java
前言可以通过自定义监听器,监听系统中的某些事件,在某些系统事件执行之后,触发自己业务内容执行。内容第一种实现ApplicationListener接口,spring.factories内填写接口实现,key值为org.springframework.context.ApplicationListenerpackagecom.mooc.sb2.listener;importorg.springfra
- Springboot下自定义监听器的使用
bugdaybyday
SpringCloud
Servlet和Springboot的关系springboot三大特性:组件自动装配:webMVC、webFlux、JDBC等(@EnableAutoConfiguration,@Configuration)嵌入式Web容器:Tomcat、Jetty以及undertow(简单说下我的理解,Spring的核心功能是IOC和DI。那么web部分,在springboot中肯定是做嵌入式的集成。Sprin
- @rabbitlistener注解
小小懒懒
RabbitMQ
@RabbitListener是SpringAMQP(AdvancedMessageQueuingProtocol)框架中的一个注解,用于创建RabbitMQ消息监听器。RabbitMQ是一个开源的消息代理和队列服务器,它实现了AMQP协议,用于在分布式系统中进行消息传递。SpringAMQP是Spring框架对RabbitMQ的集成,提供了方便的消息发送和接收的功能。通过使用@RabbitLis
- Spring Boot 集成 Redisson 实现消息队列
入秋的大橘
SpringBootspringboot后端java
包含组件内容RedisQueue:消息队列监听标识RedisQueueInit:Redis队列监听器RedisQueueListener:Redis消息队列监听实现RedisQueueService:Redis消息队列服务工具代码实现RedisQueueimportjava.lang.annotation.ElementType;importjava.lang.annotation.Retenti
- 在Vue中使用Element UI的表格组件时,通过点击表格的某一行来获取该行数据的id
HWL5679
vue.js前端javascript
在Vue中使用ElementUI的表格组件时,如果想通过点击表格的某一行来获取该行数据的id,可以使用@row-click事件监听器。这个事件监听器会在你点击表格的某一行时被触发,并且会提供一个参数row,这个row就是你点击的那一行的数据对象。首先,确保你的组件上添加了@row-click事件监听器,并绑定一个方法来处理这个事件。然后,在这个方法中,你可以通过row参数访问到当前行的所有数据,包
- 如何用原生 JS给一个按钮绑定两个 onclick 事件?
唐家小妹
javascript前端
要给一个按钮绑定两个onclick事件,可以使用addEventListener方法来实现。具体步骤如下:首先,获取要绑定事件的按钮元素,可以通过document.getElementById()或其他方式获取到按钮元素。然后,使用addEventListener方法为按钮元素添加两个不同的click事件监听器,分别执行不同的操作。下面是一个示例代码: //获取按钮元素varbutton=docu
- lambda表达式简析及应用案例
极致人生-010
lambda数据
文章目录Lambda表达式的基本概念不同语言中的Lambda表达式示例PythonJava8及以上版本JavaScript(ES6+)C++使用场景高级用法注意事项实际应用场景Java应用案例1.数据处理:使用`Stream`APIC++应用案例2.排序算法中的比较操作Python应用案例3.动态创建函数4.字典分组JavaScript应用案例5.事件监听器总结Lambda表达式是一种简洁的、内联
- 4.4 Sensors -- useDevicePixelRatio
weixin_mouren
vueuse源码解析前端javascriptvue.js
4.4Sensors–useDevicePixelRatiohttps://vueuse.org/core/useDevicePixelRatio/作用动态追踪devicePixelRatio的变化。window.devicePixelRatio=物理像素/设备独立像素。没有可以监听window.devicePixelRatio变化的事件监听器。因此,函数以编程方式,使用媒体查询(window.m
- vue中的watch和$watch的用法实际场景和区别
肖肖肖丽珠
vue.js前端javascript
watch(组件选项)watch是Vue组件的一个选项,它允许你定义一些监听器,这些监听器会在组件的响应式数据变化时调用。它主要用于组件内部的数据监听。实际场景:当组件内部的数据变化时,需要执行一些操作,比如发送请求、更新其他数据、执行动画等。监听组件的props变化,并在变化时执行一些操作。用法示例:javascriptexportdefault{data(){return{query:''};
- rqueue使用笔记
chushiyunen
笔记python开发语言
文章目录maven依赖引入监听器注入和发送消息接收消息属性配置项目用到rqueue,虽然知道和redis相关,但是肯定有不一样的地方,做个笔记。maven依赖网上找个能用的版本就行,如:com.github.sonus21rqueue-spring-boot-starter2.13.2-RELEASE引入监听器属于配置类,可以考虑和StartupApplication同目录。@Componentp
- effective java笔记
Mrryo
1、Java中创建(实例化)对象的五种方式:a、new一个对象。b、反射,Objecta=Class.forName("java.lang.Object").newInstance();c、通过I/O流(包括反序列化)。d、对象的clone()。e、通过工厂方法返回对象。2、抽象类,要想对其实例化,只能用getInstance().(单例模式)。3、内存泄漏:用数组、集合、缓存、监听器等时要注意释
- Redis的KeyExpirationEventMessageListener键过期监听器
立小言先森
【Redis系列】【每日扫盲】【spring系列】redis缓存发布订阅通道过期监听器
MessageListener通过监听key过期的Rediskeyspace通知,然后通过ApplicationEventPublisher发布RedisKeyExpiredEvent事件的模式进行事件监听和广播。redis.conf地址:https://github.com/redis/redis/blob/unstable/redis.confRedis官方地址:https://redis.i
- 大数据技术之Zookeeper概述(1)
大数据深度洞察
Zookeeper大数据zookeeper分布式云原生
目录Zookeeper入门概述Zookeeper的主要特点包括:Zookeeper的应用场景:Zookeeper的基本概念:架构:Zookeeper工作机制Zookeeper数据结构Znode(ZookeeperNode)Znode的类型Znode路径Znode属性Watcher监听器使用示例总结Zookeeper入门概述Zookeeper是一个分布式的、开放源码的协调服务,用于大型应用中管理和协
- SpringBoot(13)过滤器+拦截器+监听器
邱秋Elena
springboot
文章目录一、过滤器1.过滤器介绍2.Filter生命周期4、注解方式实现过滤器(@WebFilter)@WebFilter@Order(1)@ServletComponentScan启动类代码Filter代码5、直接注入到spring中Filter代码Filter配置类代码二、拦截器1.拦截器介绍2.拦截器生命周期3.自定义拦截器案例——性能监控3.1实现分析:3.2问题:3.3解决方案3.4拦截
- 动态刷新apollo配置
g3230863
javajava
配置apollo的监听器importcom.ctrip.framework.apollo.model.ConfigChange;importcom.ctrip.framework.apollo.model.ConfigChangeEvent;importcom.ctrip.framework.apollo.spring.annotation.ApolloConfigChangeListener;i
- zookeeper分布式锁案例
shuair
zookeeper分布式zookeeper云原生
zookeeper分布式锁案例文档linux安装java-centos安装java-linux配置java环境变量zookeeper单机安装zookeeper集群安装zookeeper客户端命令行操作、节点类型及监听器zookeeper集群写数据原理java操作zookeeper手写分布式锁案例原理线程获取锁时,在/locks节点下创建临时有序号节点,需要注意的是,有序号的节点序号是递增的crea
- 过滤器、监听器
you0719
简单学点javajavatomcatmybatis
一、用户注销用户注销则为退出登录状态,将当前登录的用户信息销毁。而我们之前做的用户登录功能,是把当前登录用户信息是存在session中的,所以只需要清除session中的用户信息即可实现用户注销。1、修改login.jsp为了登录页面好看,加入新的登录页面,按照给的资料\模板页面目录里面去拷贝即可(login.jsp,css目录,js目录)。2、修改list.jsp修改产品的list.jsp,提供
- Spring框架(6)
秋意钟
springjava数据库
搭建SpringMVC+Spring+JDBC框架,需要在web.xml中装载Spring框架的相关配置文件,并需要配置ContextLoaderListener示例代码在web.xml中配置监听器contextConfigLocationclasspath:applicationContext-*.xmlorg.springframework.web.context.ContextLoaderL
- easyExcel 导入时,校验每个单元格数据
Saltwater_leo
easyExcel开发语言javaeasyExcel
目录1、定义excel导入文件对应的数据接收类2、定义属性转换器3、定义数据解析监听器4、解析文件1、定义excel导入文件对应的数据接收类packagecom.ruoyi.project.domain.dto;importcom.alibaba.excel.annotation.ExcelProperty;importcom.ruoyi.project.impot.convert.HeadUse
- 观察者模式
quanCN
定义观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式,模型-视图-模式(Model/View)模式,源-监听器(Source/Listener)模式或从属者(dependents)模式。一个软件系统常常要求在某一个对象的状态发生改变的时候某些其它的对象做出相应的改变,观察者模式是满足这一要求的最重要的一种方案。根据观察者对象的引用位置,观察者模式分为两种一这种实
- 基于【观察者设计模式】设计异步多渠道群发框架
Sunny捏
前言:设计模式源于生活观察者基本概念观察者模式,又可以称之为发布-订阅模式,观察者,顾名思义,就是一个监听者,类似监听器的存在,一旦被观察/监听的目标发生的情况,就会被监听者发现,这么想来目标发生情况到观察者知道情况,其实是由目标将情况发送到观察者的白话文:当一个对象发生改变的时候,可以通知其他所有对象概念很清晰,举个栗子来理解一下观察者模式的含义,我们都在抖音关注了某位大咖的时候,每当这位大咖更
- 涨姿势了 SpringBoot+Kafka将实战讲解到极致,你悟了吗?
技术布道师
javakafkaspringbootjava分布式spring
目录一、环境准备二、生产者实践普通生产者带回调的生产者自定义分区器kafka事务提交三、消费者实践简单消费指定topic、partition、offset消费批量消费监听异常处理器消息过滤器消息转发定时启动/停止监听器一、环境准备1、在项目中连接kafka因为是外网,首先要开放kafka配置文件中的如下配置(其中IP为公网IP),advertised.listeners=PLAINTEXT://1
- Python生成JMeter测试脚本----响应断言和查看结果树
可遇_不可求
pythonjmeter开发语言
前言之前的文章写了怎么用python生成JMeter脚本,生成了测试计划、线程组、Http监听器组件,详细内容查看文章《Python生成JMeter测试脚本》。本篇内容接着讲怎么用python生成响应断言和查看结果树组件。响应断言响应断言的测试字段和模型匹配规则,在代码中已经注释了,对应着JMeterGUI工具的操作。首先使用set方法修改响应断言的参数,然后使用get方法生成响应断言组件,将组件
- Python生成JMeter测试脚本----HTTP信息头管理器和用户定义的变量
可遇_不可求
pythonjmeterhttp
前言之前的文章写了怎么用python生成JMeter脚本,生成了测试计划、线程组、Http监听器组件、响应断言、查看结果树、汇总报告、聚合报告、响应时间图。本篇内容接着讲怎么用python生成HTTP信息头管理器和用户定义的变量组件。HTTP信息头管理器信息头管理器的内容比较简单,主要包括了名称,注释和请求头参数。使用set方法设置好参数后,用get方法生成组件。importxml.etree.E
- spring-batch批处理框架介绍及demo
这个码农不太萌
spring-batchspringbatchjava
最近在项目中,有批处理的相关需求。最终选定技术框架为spring-batch批处理框架,在此专栏中为大家分享spring-batch的基础知识与项目遇到的一些实际问题的解决方案。1.框架介绍spring-batch主要分为job和step。step中有包含reader、process、writer等主要功能。step还可设置任务并行、串行与多线程执行。整个框架包含了常用的大量监听器监听每一个细分步
- java操作zookeeper
shuair
zookeeperzookeeper
java操作zookeeper文档linux安装java-centos安装java-linux配置java环境变量zookeeper单机安装zookeeper集群安装zookeeper客户端命令行操作、节点类型及监听器zookeeper集群写数据原理java操作zookeeper依赖信息junitjunittestorg.apache.logging.log4jlog4j-core2.8.2org
- zookeeper单机安装
shuair
zookeeperzookeeperjava
zookeeper单机安装文档linux安装java-centos安装java-linux配置java环境变量zookeeper单机安装zookeeper集群安装zookeeper客户端命令行操作、节点类型及监听器zookeeper集群写数据原理java操作zookeeper下载地址官网:https://zookeeper.apache.org/最新版本下载页面:https://zookeeper
- 继之前的线程循环加到窗口中运行
3213213333332132
javathreadJFrameJPanel
之前写了有关java线程的循环执行和结束,因为想制作成exe文件,想把执行的效果加到窗口上,所以就结合了JFrame和JPanel写了这个程序,这里直接贴出代码,在窗口上运行的效果下面有附图。
package thread;
import java.awt.Graphics;
import java.text.SimpleDateFormat;
import java.util
- linux 常用命令
BlueSkator
linux命令
1.grep
相信这个命令可以说是大家最常用的命令之一了。尤其是查询生产环境的日志,这个命令绝对是必不可少的。
但之前总是习惯于使用 (grep -n 关键字 文件名 )查出关键字以及该关键字所在的行数,然后再用 (sed -n '100,200p' 文件名),去查出该关键字之后的日志内容。
但其实还有更简便的办法,就是用(grep -B n、-A n、-C n 关键
- php heredoc原文档和nowdoc语法
dcj3sjt126com
PHPheredocnowdoc
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Current To-Do List</title>
</head>
<body>
<?
- overflow的属性
周华华
JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- 《我所了解的Java》——总体目录
g21121
java
准备用一年左右时间写一个系列的文章《我所了解的Java》,目录及内容会不断完善及调整。
在编写相关内容时难免出现笔误、代码无法执行、名词理解错误等,请大家及时指出,我会第一时间更正。
&n
- [简单]docx4j常用方法小结
53873039oycg
docx
本代码基于docx4j-3.2.0,在office word 2007上测试通过。代码如下:
import java.io.File;
import java.io.FileInputStream;
import ja
- Spring配置学习
云端月影
spring配置
首先来看一个标准的Spring配置文件 applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi=&q
- Java新手入门的30个基本概念三
aijuans
java新手java 入门
17.Java中的每一个类都是从Object类扩展而来的。 18.object类中的equal和toString方法。 equal用于测试一个对象是否同另一个对象相等。 toString返回一个代表该对象的字符串,几乎每一个类都会重载该方法,以便返回当前状态的正确表示.(toString 方法是一个很重要的方法) 19.通用编程:任何类类型的所有值都可以同object类性的变量来代替。
- 《2008 IBM Rational 软件开发高峰论坛会议》小记
antonyup_2006
软件测试敏捷开发项目管理IBM活动
我一直想写些总结,用于交流和备忘,然都没提笔,今以一篇参加活动的感受小记开个头,呵呵!
其实参加《2008 IBM Rational 软件开发高峰论坛会议》是9月4号,那天刚好调休.但接着项目颇为忙,所以今天在中秋佳节的假期里整理了下.
参加这次活动是一个朋友给的一个邀请书,才知道有这样的一个活动,虽然现在项目暂时没用到IBM的解决方案,但觉的参与这样一个活动可以拓宽下视野和相关知识.
- PL/SQL的过程编程,异常,声明变量,PL/SQL块
百合不是茶
PL/SQL的过程编程异常PL/SQL块声明变量
PL/SQL;
过程;
符号;
变量;
PL/SQL块;
输出;
异常;
PL/SQL 是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言PL/SQL 是对 SQL 的扩展,sql的执行时每次都要写操作
- Mockito(三)--完整功能介绍
bijian1013
持续集成mockito单元测试
mockito官网:http://code.google.com/p/mockito/,打开documentation可以看到官方最新的文档资料。
一.使用mockito验证行为
//首先要import Mockito
import static org.mockito.Mockito.*;
//mo
- 精通Oracle10编程SQL(8)使用复合数据类型
bijian1013
oracle数据库plsql
/*
*使用复合数据类型
*/
--PL/SQL记录
--定义PL/SQL记录
--自定义PL/SQL记录
DECLARE
TYPE emp_record_type IS RECORD(
name emp.ename%TYPE,
salary emp.sal%TYPE,
dno emp.deptno%TYPE
);
emp_
- 【Linux常用命令一】grep命令
bit1129
Linux常用命令
grep命令格式
grep [option] pattern [file-list]
grep命令用于在指定的文件(一个或者多个,file-list)中查找包含模式串(pattern)的行,[option]用于控制grep命令的查找方式。
pattern可以是普通字符串,也可以是正则表达式,当查找的字符串包含正则表达式字符或者特
- mybatis3入门学习笔记
白糖_
sqlibatisqqjdbc配置管理
MyBatis 的前身就是iBatis,是一个数据持久层(ORM)框架。 MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis对JDBC进行了一次很浅的封装。
以前也学过iBatis,因为MyBatis是iBatis的升级版本,最初以为改动应该不大,实际结果是MyBatis对配置文件进行了一些大的改动,使整个框架更加方便人性化。
- Linux 命令神器:lsof 入门
ronin47
lsof
lsof是系统管理/安全的尤伯工具。我大多数时候用它来从系统获得与网络连接相关的信息,但那只是这个强大而又鲜为人知的应用的第一步。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lists openfiles)”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。
有趣的是,lsof也是有着最多
- java实现两个大数相加,可能存在溢出。
bylijinnan
java实现
import java.math.BigInteger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class BigIntegerAddition {
/**
* 题目:java实现两个大数相加,可能存在溢出。
* 如123456789 + 987654321
- Kettle学习资料分享,附大神用Kettle的一套流程完成对整个数据库迁移方法
Kai_Ge
Kettle
Kettle学习资料分享
Kettle 3.2 使用说明书
目录
概述..........................................................................................................................................7
1.Kettle 资源库管
- [货币与金融]钢之炼金术士
comsci
金融
自古以来,都有一些人在从事炼金术的工作.........但是很少有成功的
那么随着人类在理论物理和工程物理上面取得的一些突破性进展......
炼金术这个古老
- Toast原来也可以多样化
dai_lm
androidtoast
Style 1: 默认
Toast def = Toast.makeText(this, "default", Toast.LENGTH_SHORT);
def.show();
Style 2: 顶部显示
Toast top = Toast.makeText(this, "top", Toast.LENGTH_SHORT);
t
- java数据计算的几种解决方法3
datamachine
javahadoopibatisr-languer
4、iBatis
简单敏捷因此强大的数据计算层。和Hibernate不同,它鼓励写SQL,所以学习成本最低。同时它用最小的代价实现了计算脚本和JAVA代码的解耦,只用20%的代价就实现了hibernate 80%的功能,没实现的20%是计算脚本和数据库的解耦。
复杂计算环境是它的弱项,比如:分布式计算、复杂计算、非数据
- 向网页中插入透明Flash的方法和技巧
dcj3sjt126com
htmlWebFlash
将
Flash 作品插入网页的时候,我们有时候会需要将它设为透明,有时候我们需要在Flash的背面插入一些漂亮的图片,搭配出漂亮的效果……下面我们介绍一些将Flash插入网页中的一些透明的设置技巧。
一、Swf透明、无坐标控制 首先教大家最简单的插入Flash的代码,透明,无坐标控制: 注意wmode="transparent"是控制Flash是否透明
- ios UICollectionView的使用
dcj3sjt126com
UICollectionView的使用有两种方法,一种是继承UICollectionViewController,这个Controller会自带一个UICollectionView;另外一种是作为一个视图放在普通的UIViewController里面。
个人更喜欢第二种。下面采用第二种方式简单介绍一下UICollectionView的使用。
1.UIViewController实现委托,代码如
- Eos平台java公共逻辑
蕃薯耀
Eos平台java公共逻辑Eos平台java公共逻辑
Eos平台java公共逻辑
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年6月1日 17:20:4
- SpringMVC4零配置--Web上下文配置【MvcConfig】
hanqunfeng
springmvc4
与SpringSecurity的配置类似,spring同样为我们提供了一个实现类WebMvcConfigurationSupport和一个注解@EnableWebMvc以帮助我们减少bean的声明。
applicationContext-MvcConfig.xml
<!-- 启用注解,并定义组件查找规则 ,mvc层只负责扫描@Controller -->
<
- 解决ie和其他浏览器poi下载excel文件名乱码
jackyrong
Excel
使用poi,做传统的excel导出,然后想在浏览器中,让用户选择另存为,保存用户下载的xls文件,这个时候,可能的是在ie下出现乱码(ie,9,10,11),但在firefox,chrome下没乱码,
因此必须综合判断,编写一个工具类:
/**
*
* @Title: pro
- 挥洒泪水的青春
lampcy
编程生活程序员
2015年2月28日,我辞职了,离开了相处一年的触控,转过身--挥洒掉泪水,毅然来到了兄弟连,背负着许多的不解、质疑——”你一个零基础、脑子又不聪明的人,还敢跨行业,选择Unity3D?“,”真是不自量力••••••“,”真是初生牛犊不怕虎•••••“,••••••我只是淡淡一笑,拎着行李----坐上了通向挥洒泪水的青春之地——兄弟连!
这就是我青春的分割线,不后悔,只会去用泪水浇灌——已经来到
- 稳增长之中国股市两点意见-----严控做空,建立涨跌停版停牌重组机制
nannan408
对于股市,我们国家的监管还是有点拼的,但始终拼不过飞流直下的恐慌,为什么呢?
笔者首先支持股市的监管。对于股市越管越荡的现象,笔者认为首先是做空力量超过了股市自身的升力,并且对于跌停停牌重组的快速反应还没建立好,上市公司对于股价下跌没有很好的利好支撑。
我们来看美国和香港是怎么应对股灾的。美国是靠禁止重要股票做空,在
- 动态设置iframe高度(iframe高度自适应)
Rainbow702
JavaScriptiframecontentDocument高度自适应局部刷新
如果需要对画面中的部分区域作局部刷新,大家可能都会想到使用ajax。
但有些情况下,须使用在页面中嵌入一个iframe来作局部刷新。
对于使用iframe的情况,发现有一个问题,就是iframe中的页面的高度可能会很高,但是外面页面并不会被iframe内部页面给撑开,如下面的结构:
<div id="content">
<div id=&quo
- 用Rapael做图表
tntxia
rap
function drawReport(paper,attr,data){
var width = attr.width;
var height = attr.height;
var max = 0;
&nbs
- HTML5 bootstrap2网页兼容(支持IE10以下)
xiaoluode
html5bootstrap
<!DOCTYPE html>
<html>
<head lang="zh-CN">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">