static

ASP.NET Core开发之HttpContext

耗尽温柔 提交于 2020-01-27 11:04:46
ASP.NET Core中的HttpContext开发,在ASP.NET开发中我们总是会经常用到HttpContext。 那么在ASP.NET Core中要如何使用HttpContext呢,下面就来具体学习ASP.NET Core HttpContext。 注入HttpContextAccessor ASP.NET Core中提供了一个 IHttpContextAccessor接口,HttpContextAccessor 默认实现了它简化了访问HttpContext。 它必须在程序启动时在IServicesCollection中注册,这样在程序中就能获取到HttpContextAccessor,并用来访问HttpContext。 services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>(); 获取HttpContextAccessor 下面来实际做一个操作,获取 HttpContextAccessor。 新建一个ASP.NET Core Web 应用程序,选择Web 应用程序。 身份验证勾选为不进行身份验证。 然后在HomeController 加入如下代码: public class HomeController : Controller { private IHttpContextAccessor

Java中的String字符串不可变

*爱你&永不变心* 提交于 2020-01-27 06:33:26
源码分析 首先我们先看一下String类的源码 public final class String implements Serializable , Comparable < String > , CharSequence { @Stable private final byte [ ] value ; private final byte coder ; private int hash ; private static final long serialVersionUID = - 6849794470754667710 L ; static final boolean COMPACT_STRINGS = true ; private static final ObjectStreamField [ ] serialPersistentFields = new ObjectStreamField [ 0 ] ; public static final Comparator < String > CASE_INSENSITIVE_ORDER = new String . CaseInsensitiveComparator ( ) ; static final byte LATIN1 = 0 ; static final byte UTF16 = 1 ; 首先

设计模式(一)单例模式

微笑、不失礼 提交于 2020-01-27 03:53:41
单例模式实现方式以及类加载 跳转到原文 本文主要介绍java的单例模式,以及详细剖析静态内部类之所以能够实现单例的原理。OK,废话不多说,进入正文。 首先我们要先了解下单例的四大原则: 1.构造私有。 2.以静态方法或者枚举返回实例。 3.确保实例只有一个,尤其是多线程环境。 4.确保反序列换时不会重新构建对象。 我们常用的单例模式有: 饿汉模式、懒汉模式、双重锁懒汉模式、静态内部类模式、枚举模式,我们来逐一分析下这些模式的区别。 1.饿汉模式: public class SingleTon{ private static SingleTon INSTANCE = new SingleTon(); private SingleTon(){} public static SingleTon getInstance(){ return INSTANCE; }} 饿汉模式在类被初始化时就已经在内存中创建了对象,以空间换时间,故不存在线程安全问题。 2.懒汉模式: public class SingleTon{ private static SingleTon INSTANCE = null; private SingleTon(){} public static SingleTon getInstance() { if(INSTANCE == null){ INSTANCE = new

Java实现发送邮件【简易版】

情到浓时终转凉″ 提交于 2020-01-27 01:00:22
背景描述 当下,信息量呈指数式增长,智能化时代大多数信息会通过手机短信、电子邮件进行发送,诸如验证码、广告、垃圾信息等。因此,作为新时代的java萌新,学会使用java发送邮件必不可缺。 问:为啥这里不介绍短信方式? 答:短信是通过三大运营商(移动、联通、电信)发送,要想使用,必须调用收费接口,收费标准与提供平台有关,个人开发者可以忽略此方式。 前提 学习编写程序发送邮件需要哪些知识? 了解邮箱的SMTP服务器地址 了解SMTP协议以及端口号 实例 下面将通过实例来进行讲解。 首先,创建邮件实体类 EmailInfo ,主要属性包括:邮件标题、内容、发件人 // 邮件标题 private String title ; // 邮件内容 private String content ; // 收件人 private List < String > receivers = new ArrayList < String > ( ) ; 然后,创建邮件操作工具类 EmailUtil ,定义发送者SMTP服务器地址、端口、邮箱地址等信息 // 发件人邮箱的 SMTP 服务器地址, 必须准确, 不同邮件服务器地址不同, 一般(只是一般, 绝非绝对)格式为: smtp.xxx.com private static String mailserver = "smtp.163.com" ; //

尚学堂-第四章答案

只愿长相守 提交于 2020-01-27 00:15:03
一、选择题 1.以下语句中关于Java构造方法的说法错误的是( )。(选择一项) A.构造方法的作用是为创建对象进行初始化工作,比如给成员变量赋值 B.一个Java类可以没有构造方法,也可以提供1个或多个构造方法 C.构造方法与类同名,不能书写返回值类型 D.构造方法的第一条语句如果是super(),则可以省略,该语句作用是调用父类无参数的构造方法 2.在Java中,以下程序编译运行后的输出结果为( )。(选择一项) public class Test { int x , y ; Test ( int x , int y ) { this . x = x ; this . y = y ; } public static void main ( String [ ] args ) { Test pt1 , pt2 ; pt1 = new Test ( 3 , 3 ) ; pt2 = new Test ( 4 , 4 ) ; System . out . print ( pt1 . x + pt2 . x ) ; } } A.6 B.34 C.8 D.7 3.在Java中关于静态方法,以下说法中正确的是( )。(选择二项) A.静态方法中不能直接调用非静态方法 B.非静态方法中不能直接调用静态方法 C.静态方法可以用类名直接调用 D.静态方法里可以使用this 4

c++设计模式-单例模式

送分小仙女□ 提交于 2020-01-26 23:45:25
定义 只提供唯一一个类的实例,具有全局变量的特点,在任何位置都可以通过接口获取到那个唯一实例 具体运用场景 1.设备管理器,系统中可能有多个设备,但是只有一个设备管理器,用于管理设备驱动; 2.数据池,用来缓存数据的数据结构,需要在一处写,多处读取或者多处写,多处读取; 要点 1.全局只有一个实例:static 特性,同时禁止用户自己声明并定义实例(把构造函数设为 private) 2.禁止赋值和拷贝 3.用户通过接口获取实例:使用 static 类成员函数 4.线程安全 实现 示例一、没有考虑线程安全的方式 class Singleton{ private: Singleton(){ //...... } Singleton(Singleton&); Singleton& operator=(const Singleton&); static Singleton* instance_ptr; public: ~Singleton(){ //..... } static Singleton* get_instance(){ if(instance_ptr==nullptr){ instance_ptr = new Singleton; } return instance_ptr; } }; Singleton* Singleton::instance_ptr = nullptr;

类加载实例代码详解

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-26 23:41:57
本文章用于对类加载实例代码的详解部分 代码地址 什么是类加载 前情回顾 所有的Java虚拟机必须在每个类或者接口被Java程序“ 首次主动使用时 ”才初始化它们,如果不是首次使用或非主动使用是不会被初始化的。 主动使用分为: 创建类的实例 访问某个类或某个接口的静态变量(助记符为getstatic),或者对它们的静态变量进行赋值(助记符为putstatic) 调用类的静态方法(助记符为invokestatic) 反射(如Class.forName(“com.test.Test”) 初始化一个类的子类 Java虚拟机启动时被标明启动类的类,虚拟机启动时,用户需要指定一个要执行的主类(包含 main() 方法的那个类),虚拟机会先初始化这个主类。 动态语言… 主动使用 public class MyTest1 { public static void main ( String [ ] args ) { System . out . println ( MyChild1 . str ) ; //输出Myparent1 static block Hello World } } class Myparent1 { public static String str = "Hello World" ; static { System . out . println ( "Myparent1

835. 字符串统计(Trie树模板题)

纵然是瞬间 提交于 2020-01-26 13:30:41
维护一个字符串集合,支持两种操作: “I x”向集合中插入一个字符串x; “Q x”询问一个字符串在集合中出现了多少次。 共有N个操作,输入的字符串总长度不超过 10 5 105,字符串仅包含小写英文字母。 输入格式 第一行包含整数N,表示操作数。 接下来N行,每行包含一个操作指令,指令为”I x”或”Q x”中的一种。 输出格式 对于每个询问指令”Q x”,都要输出一个整数作为结果,表示x在集合中出现的次数。 每个结果占一行。 数据范围 1 ≤ N ≤ 2 ∗ 10 4 1≤N≤2∗104 输入样例: 5 I abc Q abc Q ab I ab Q ab 输出样例: 1 0 1 import java.util.Scanner; public class Main{ static final int max=100005; static int son[][]=new int[max][26];//son数组存储树节点; static int cnt[]=new int[max]; //cnt[i]存储以下标i为结点的字符串的数量; static int idx; //idx表示当前用到了那个下标,下标是0的点既是根节点又是空节点 static void insert(String s){ int p=0; for(int i=0;i<s.length();i++){ int

Trie树模板

巧了我就是萌 提交于 2020-01-26 13:28:39
     static final int max=100005;     //所有字符总数 static int son[][]=new int[max][26];//son数组存储每个节点的儿子;一维表示父节点下标,二维表示小写字母 son[x][0~25] static int cnt[]=new int[max]; //cnt[i]存储以下标i为结点的字符串的数量; static int idx; //idx表示当前用到了那个下标,下标是0的点既是根节点又是空节点 static void insert(String s){ int p=0; for(int i=0;i<s.length();i++){ int u=s.charAt(i)-'a'; if(son[p][u]==0) son[p][u]=++idx; p=son[p][u]; } cnt[p]++; } static int query(String s){ int p=0; for(int i=0;i<s.length();i++){ int u=s.charAt(i)-'a'; if(son[p][u]==0) return 0; p=son[p][u]; } return cnt[p]; } 来源: https://www.cnblogs.com/qdu-lkc/p/12234096.html

Sanic框架(二)

故事扮演 提交于 2020-01-26 08:56:49
文章目录 Sanic Sanic Cookies读写 读取cookies 写入cookies cookies属性 Sanic路由 url_for方法建立路由 Sanic静态文件 Sanic中间件 提前响应 监听器 监听器的注册 添加任务 Sanic Sanic Cookies读写 写web,Cookies会经常用到。Sanic可以读写Cookies,并以key-value(键值对)的方式存储。 读取cookies from sanic.response import text @app.route("/cookie") async def test(request): test_cookie = request.cookies.get('test') return text("Test cookie set to: {}".format(test_cookie)) 写入cookies from sanic.response import text @app.route("/cookie") async def test(request): response = text("There's a cookie up in this response") response.cookies['test'] = 'It worked!' response.cookies['test'][