数据封装

Layui+angular 分页插件封装

别说谁变了你拦得住时间么 提交于 2019-12-27 03:25:29
页面效果: 插件源代码: /** * @description CHPager 基于angular v1.5.0+ 版本 layui 分页插件的封装 * @author chenpeng * @version v1.0 */ ; (function (undefined) { "use strict" var _global; function extend(o, n, override) { for (var key in n) { if (n.hasOwnProperty(key) && (!o.hasOwnProperty(key) || override)) { o[key] = n[key]; } } return o; }; function CHPager(opt) { this._initial(opt); }; CHPager.prototype = { constructor: this, _initial: function (opt) { var def = { elementId: '', // 待渲染元素的ID url: '', // 向后台请求的地址 pageno: 0, // 页号 pagesize: 10, // 每页数据量 total: 0, // 总的数据量 groups: 4, // 默认显示数据的最大数量 subdataobj: {}, /

封装接口数据返回结果集

谁说我不能喝 提交于 2019-12-27 02:21:05
在前后端完全分离的项目当中,为了方便与前端人员的数据交互,定义返回结果集,封装数据、状态码、错误信息。 定义接口状态码枚举类 /** * 接口处理状态code和description 枚举 */ public enum ResponseCode { ERROR ( 500 , "ERROR" ) , //错误,服务器出BUG SUCCESS ( 200 , "SUCCESS" ) , //请求成功 WARNING ( 300 , "WARNING" ) ; //警告 逻辑错误 登录密码错误等等 public final int code ; public final String msg ; ResponseCode ( int code , String msg ) { this . code = code ; this . msg = msg ; } } 利用Java的泛型特性,实现对结果集的封装。 /** * 接口数据返回定义类 * 作用:将需要返回给前端的数据进行包装,同时封装status和msg两个字段并JSON序列化 * T(泛型) 为返回数据的类型 */ @Data @JsonSerialize public class ServerResponse < T > implements Serializable { //接口返回状态 private Integer

JSONP原理及其简单封装

拜拜、爱过 提交于 2019-12-26 19:09:47
什么是JSONP 1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准; 2、不过我们又发现,Web页面上调用js文件时则不受是否跨域的影响(不仅如此,我们还发现凡是拥有"src"这个属性的标签都拥有跨域的能力,比如<script>、<img>、<iframe>); 3、于是可以判断,当前阶段如果想通过纯web端(ActiveX控件、服务端代理、属于未来的HTML5之Websocket等方式不算)跨域访问数据就只有一种可能,那就是在远程服务器上设法把数据装进js格式的文件里,供客户端调用和进一步处理; 4、恰巧我们已经知道有一种叫做JSON的纯字符数据格式可以简洁的描述复杂数据,更妙的是JSON还被js原生支持,所以在客户端几乎可以随心所欲的处理这种格式的数据; 5、这样子解决方案就呼之欲出了,web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀),显而易见,服务器之所以要动态生成JSON文件,目的就在于把客户端需要的数据装入进去。 6、客户端在对JSON文件调用成功之后,也就获得了自己所需的数据,剩下的就是按照自己需求进行处理和展现了,这种获取远程数据的方式看起来非常像AJAX,但其实并不一样。 7、为了便于客户端使用数据

vue + echarts封装 mock模拟数据

谁都会走 提交于 2019-12-23 14:49:13
一、准备工作 1、vue全家桶 2、mock 安装配置 作⽤:⽣成随机数据,拦截ajax请求 安装: 用yarn或者npm yarn add mockjs npm install mockjs 核⼼: Mock.mock() // 根据数据模板⽣成模拟数据 Mock. mock ( rurl, rtype, template ) /* ** rurl: 表示需要拦截的 URL,可以是 URL 字符串或 URL 正则 ** eg. /\/domain\/list\.json/、'/domian/list.json' */ Mock.Random() 随机⽣成数据 3、axios 全局配置 安装: npm install axios 目录 src/api/config.js import axios from "axios" ; // 创建一个axios实例 const service = axios.create ( { // 请求超时时间 timeout: 3000 } ) ; // 添加请求拦截器 service.interceptors.request.use ( config = > { return config ; } , err = > { console.log ( err ) ; } ) ; // 添加响应拦截器 service.interceptors

什么是MVC

泪湿孤枕 提交于 2019-12-22 00:11:52
M (Model) 模型:封装了应用程序数据,就是 dao,bean (封装数据) V(View)视图 :呈现模型数据,就是网页, JSP (展现数据) C (Controller) 控制器 :处理用户请求,并且构建合适的模型并将其传递到视图呈现。把不同的数据(Model),显示在不同的视图(View)上,Servlet 扮演的就是这样的角色。 (构造传递数据) 来源: https://www.cnblogs.com/hpwd/p/11214144.html

【开源】OSharp框架解说系列(5.1):EntityFramework数据层设计

霸气de小男生 提交于 2019-12-18 12:54:10
OSharp是什么?   OSharp是个快速开发框架,但不是一个大而全的包罗万象的框架,严格的说,OSharp中什么都没有实现。与其他大而全的框架最大的不同点,就是OSharp只做抽象封装,不做实现。依赖注入、ORM、对象映射、日志、缓存等等功能,都只定义了一套最基础最通用的抽象封装,提供了一套统一的API、约定与规则,并定义了部分执行流程,主要是让项目在一定的规范下进行开发。所有的功能实现端,都是通过现有的成熟的第三方组件来实现的,除了EntityFramework之外,所有的第三方实现都可以轻松的替换成另一种第三方实现,OSharp框架正是要起隔离作用,保证这种变更不会对业务代码造成影响,使用统一的API来进行业务实现,解除与第三方实现的耦合,保持业务代码的规范与稳定。 本文已同步到系列目录: OSharp快速开发框架解说系列 前言   数据层设计真是一个百说不厌的话题,大系统说并发量,说高性能;小系统追求开发效率,易维护性各有各的追求。   OSharp 开发框架的定位是中小系统, 数据层的开发效率与易用性的权重就比较高了,所以,使用ORM当然是首选。在 .net 环境下,有众多的闭源的开源的优秀的ORM组件,从各方便对比来看,EntityFramework 是不二之选。一提起 EntityFramework,不少同学又要蠢蠢欲动来吐槽其性能了。其实,经过几个版本的更新换代

字典与集合(Dictionary与Collection)

巧了我就是萌 提交于 2019-12-16 14:41:40
Dictionary对象将替换Collection对象,并提供附加的语言从而 使增加和删除记录的速度比以前提高三倍 虽然Visual Basic 6.0只有很少的新特点,但是具有某些功能强 大的新的对象模型,其中之一就是Dictionary对象。 Dictionary对象是无处不在的Visual Basic Collection对象的新 版本。它的介绍存在于VBScript 2.0,并通过Visual Basic 6.0 对Scripting Runtime Library的支持涉入Visual Basic的全部内 容。刚开始,Dictionary对象仅仅包含在VBScript中,并作为 Perl相关内容的等价体对Web组请求进行答复。 与Collection对象相似,你能够通过Dictionary存储任何类型的 数据或字典对象,这些数据和对象通常被看作字典的组成部分, 每一部分都被赋予字符串型键值。虽然我不认为Microsoft意图使 你完全摆脱收集和替换上述数据和对象的烦恼,但是实际上,在 先前的Visual Basic 6.0文档中,对Dcitionary对象确实很少提 及,因此我认为这是Visual Basic 6.0的一个最新的重要特点。 Dictionary对象与Collection对象的比较 从Visual Basic 4.0开始

layui table 更换 表格头信息

左心房为你撑大大i 提交于 2019-12-14 07:42:43
前言 layui会自动封装 table各种参数,包括自动生成好 表格 头信息,当查询数据返回时,会自动填充 例子 done: function (res, curr, count) { if(0 != count) { var name = res.data[0].name; var id = res.data[0].id; $('th:first')[0].innerText = "学号:" + id + " 姓名:" + name; form.render(); } } 解释 方法回调后,根据class属性更换头信息 来源: CSDN 作者: 萌神30号 链接: https://blog.csdn.net/java__project/article/details/103457762

struct与class区别

大城市里の小女人 提交于 2019-12-09 17:28:20
OC: struct Class 不同点 值类型 Value Type 引用类型 reference type 结构体只能封装数据 而类可以封装数据,还可以封装行为(实现函数) 结构体变量分配在栈空间 而对象分配在堆空间 赋值为拷贝 类是指向地址 没有继承 有继承 相同点 都可以将多个数据封装为1个整体 都可以将多个数据封装为1个整体 struct dataStruct{ NSInteger age; NSInteger year; __unsafe_unretained NSString *name;//1.在`ARC`环境下,在结构体中使用`objc`对象,必须使用 `__unsafe_unretained`,这个是苹果的规定。否则会报错:ARC forbids Objective-C objects in struct // NSDictionary *data;// 2.或者指定单独 }; [@interface](https://my.oschina.net/u/996807) ClassAndStruct() { NSInteger age; NSInteger year; NSString *name; NSDictionary *data; } [@end](https://my.oschina.net/u/567204) swift struct Class

Java零基础学习详解

淺唱寂寞╮ 提交于 2019-12-08 21:27:29
01DButils工具类的介绍个三个核心类 * A: DButils工具类的介绍个三个核心类 * a: 概述 * DBUtils是java编程中的数据库操作实用工具,小巧简单实用。 * DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。 * DBUtils就是JDBC的简化开发工具包。需要项目导入commons-dbutils-1.6.jar才能够正常使用DBUtils工具。 * b: Dbutils三个核心功能介绍 * QueryRunner中提供对sql语句操作的API. * update(Connection conn, String sql, Object... params) ,用来完成表数据的增加、删除、更新操作 * query(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params) ,用来完成表数据的查询操作 * ResultSetHandler接口,用于定义select操作后,怎样封装结果集. * DbUtils类,它就是一个工具类,定义了关闭资源与事务处理的方法 02事务的简单介绍(此知识点简单了解,难度较大,就业班会详细 讲解) * A: 事务的简单介绍 * a: 见day32/day32_source/事务.jgp