context

导航区域 温故GridView 和 column

笑着哭i 提交于 2020-01-21 19:35:08
代码: import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; class TopNavigator extends StatelessWidget { final List navigatorList; TopNavigator({this.navigatorList}); Widget _gridViewItemUI(BuildContext context,item){ return InkWell( onTap: (){ print('点击了导航'); }, child: Column( children: <Widget>[ Image.network(item['image'],width:ScreenUtil().setWidth(95)), Text(item['mallCategoryName']) ], ), ); } @override Widget build(BuildContext context) { if (this.navigatorList.length > 10) { this.navigatorList.removeRange(10, this.navigatorList.length); }

SpringBoot配置HTTPS

谁都会走 提交于 2020-01-21 18:15:21
1.生成HTTPS证书 打开cmd执行命令 -alias 设置别名 -storetype 设置证书格式 -keyalg 设置加密算法 -keysize 设置证书大小 -keystore 设置证书文件地址 -validity 设置有效天数。 keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 执行后根据提示输入相关内容,输入完毕后会得到一个是否确认的提示,输入y 按回车确认就可以了 最后会得到一个keystore.p12文件,文件位置一般在 C://users/当前用户名 这个目录下,找不到的可以在users下进行文件检索 把它复制到项目resources目录下。 2.在application.yml中配置HTTPS相关信息 我把我的文件都粘出来,大家查漏补缺吧 server: port: 8443 <!-- https链接端口 --> ssl: key-store: classpath:keystore.p12 <!-- 刚才生成的https证书地址 --> key-store-password: wangyongqi <!-- 刚才在命令行中输入的密码 --> key-store-type: PKCS12 <!

Android : SQLite 版学生系统

≡放荡痞女 提交于 2020-01-21 17:41:27
在 Android : ListView 学生管理 中已经使用 ListView 控件实现简易学生管理功能,现在尝试采用 SQLite 数据库本地保存学生信息,并完善查询功能。 使用工具 android studio (ver. 3.5.1) android(sdk 29) java(ver.1.8.0) gradle(ver. 5.4.1) 功能实现 1.创建学生实体类。 public class StuInfo implements Serializable { private String name; private String major; private String age; private String sex; private String kecheng; private String academy; private String date; private int id; ······ 2.设计一个的列表来显示学生信息。 3.创建 MySQLiteAccess 类访问数据库。 public class MySQLiteAccess extends SQLiteOpenHelper { /** * @param context:上下文 * @param version:版本号 */ public MySQLiteAccess(Context context,

tomcat 三种部署方式以及server.xml文件的几个属性详解

非 Y 不嫁゛ 提交于 2020-01-21 11:46:42
一、直接将web项目文件件拷贝到webapps目录中   这是最常用的方式,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。如果你想要修改这个默认目录,可以在conf下的server.xml文件里修改Host标签里的appBase值。   这个方法实际上和在IDE开发环境里部署项目是一样的。   用此方法的访问路径为http://localhost:8080/webname 二、修改Server.xml文件    在conf下的server.xml文件里找到Host标签,在里面添加如下代码: 1 <Context path="/jfinal_demo" docBase="F:\work\jfinal_demo\WebRoot" reloadable ="true" debug="0" privileged="true"> 2 </Context>   path:是访问时的根地址,表示访问的路径,可以自定义,如上述例子中,访问该应用程序地址如下:http://localhost:8080/jfinal_demo;   docbase:表示应用程序的路径,docBase可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps ;   reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包。

Spring:基于注解的依赖注入的使用

最后都变了- 提交于 2020-01-21 00:40:41
1.什么是pojo?什么是bean? 首先,在之前几篇Spring的介绍文章当中,自己都提到了一个名词叫做POJO类,但是在回顾Spring的注解的使用的时候,去形容java当中的对象还有一个名词是叫做Bean,那么究竟Pojo类和Bean之间有什么区别呢?本人特地为此进行了资料收集,总结如下: 什么是POJO类呢?所谓的POJO,即Plain old java object,翻译过来是纯净的java老式的对象,POJO的内在含义是指那些没有从任何类继承、也没有实现任何接口,更没有被其它框架侵入的java对象,pojo一般是用于数据的临时传递,它只能装载数据, 作为数据存储的载体,而不具有业务逻辑处理的能力,常常在dao层的实现的时候需要POJO类。 而什么是JAVAbean呢?所谓的JAVAbean是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定: 这个类必须有一个公共的缺省构造函数。 这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。 这个类应是可序列化的。 因为这些要求主要是靠约定而不是靠实现接口,所以许多开发者把JavaBean看作遵从特定命名约定的POJO类。简而言之,当一个Pojo可序列化,有一个无参的构造函数,使用getter和setter方法来访问属性时,他就是一个JavaBean。 2

Springcloud的配置文件bootstrap与application的思考

a 夏天 提交于 2020-01-21 00:38:55
加载顺序 bootstrap(.yml 或者 properties) 由父ApplicationContext加载,比application(.yml 或者 properties)优先加载 bootstrap(.yml 或者 properties) 里面的属性不能被覆盖 原理 Spring是有上下文一说的,也叫Application Context,Application Context又是有父子关系的,所以必须要理解ApplicationContext是什么。SpringCloud启动时,会先创建一个Bootstrap Context,然后创建一个Application Context,Bootstrap Context是Application Context的父上下文,Bootstrap负责从外部源加载配置并解析,这两个上下文共用一个从外部获取的Environment。Bootstrap配置具有较高的优先级,不会被本地配置覆盖。Bootstrap典型的应用场景是使用SpringConfig,这个时候你需要把配置信息配在bootstrap里面。Bootstrap属于引导配置,Application属于应用配置。 应用场景 application 自动化配置 bootstrap bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息

Android本地存储的几种方式

浪尽此生 提交于 2020-01-20 23:24:38
Android提供了多种选择来保存永久性的数据,根据不同的需求来使用不同的保存方式,一般情况下,保存数据的方式有下面几种: SharedPreferences 内部存储 外部存储 SQLite 网络连接 下面主要来看一下前四种数据保存方式。 SharedPreferences SharedPreferences(以下简称SP)以键值对形式进行存储,数据以xml形式存储在/data/data/项目包名/shared_prefs/xml.xml中。一般来说,SP只能存储基本类型的数据,如:布尔类型、浮点型、整形及字符串,默认情况下,SP保存的文件是应用的私有文件,其他应用(和用户)不能访问这些文件,SP的使用方式及源码解析详见: http://blog.csdn.net/u013700502/article/details/53635499 SP不支持多进程之间通信,多进程之间使用可能会导致数据异常,替代SP的一种方式: https://github.com/grandcentrix/tray 内部存储 直接在设备的内部存储中保存文件。默认情况下,保存到内部存储的文件是应用的私有文件,其他应用(和用户)不能访问这些文件。 当用户卸载应用时,这些文件也会被移除。 String FILENAME = "hello_file.txt"; String string = "hello

android 获取类对象(代码片段)

情到浓时终转凉″ 提交于 2020-01-20 18:52:18
1、定义一个object对象 private static final Object sInstanceLock = new Object(); private static WallpaperColorInfo sInstance; 2、获取方法: public static WallpaperColorInfo getInstance(Context context) { synchronized (sInstanceLock) { if (sInstance == null) { sInstance = new WallpaperColorInfo(context.getApplicationContext()); } return sInstance; } } 3、调用: WallpaperColorInfo wallpaperColorInfo = WallpaperColorInfo.getInstance(this); 来源: CSDN 作者: 小新110 链接: https://blog.csdn.net/cau_eric/article/details/104054577

Web安全之XSS

匆匆过客 提交于 2020-01-20 12:31:36
一.什么是XSS 1.XSS攻击即为(Cross Site Scripting), 中文为跨站脚本(但实际上并不是所有的XSS都需要跨站)。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时,则可导致嵌入的恶意脚本代码的执行,从而达到恶意攻击用户的目的。 2.XSS类型: (1)反射型XSS(非持久型XSS):发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器解析后响应,在响应内容中出现这段XSS代码。最后浏览器解析执行。(例如: http://www.foo.com/xss/a1.php?x=<script>alert(1)</script> ) (2)存储型XSS(持久型XSS):提交的XSS会存储在服务端(不管是数据库、内存还是文件系统等),下次请求目标页面时不用再提交XSS代码。(例如:留言板XSS,用户提交一条包含XSS代码的留言存储到数据库,目标用户查看留言板时,留言的内容会从数据库查询出来并显示,浏览器发现有XSS代码,就当作正常的HTML与JS解析执行,于是就出发了XSS攻击。) (3)DOM XSS:此时并不需要服务器解析响应的直接参与,触发XSS靠的就是浏览器的DOM解析。可以认为完全是客户端的事情。(例如:http://www.foo.com/xssme/html#alert(1)

Spring-使用JAVA的方式配置Spring-代理模式

本秂侑毒 提交于 2020-01-20 12:25:29
9、使用Java的方式配置Spring 我们现在要完全不使用Spring的xml配置了,全权交给Java来做! JavaConfig是Spring的一个子项目,在Spring4之后,它成为了一个核心功能 实体类 //这里这个注解的意思,就是说明这个类被Spring接管了,注册到了容器中 @Component public class User { private String name; @Override public String toString() { return "User{" + "name='" + name + '\'' + '}'; } public String getName() { return name; } @Value("尹锐") public void setName(String name) { this.name = name; } } 配置文件 package com.rui.config; import com.rui.pojo.User; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context