css 圆点过渡动画
CSS 圆点过渡动画是一种在网页设计中常用的动画效果,它能够增添页面元素的生动性和视觉效果。下面将介绍一些基本的实现方法。/* 创建圆点 */ .circle { width: 20px; height: 20px; border-radius: 50%; background-color: #000; transition: all 0.2s ease-out; } /* 添加过渡效果 */ .circle:hover { transform: scale(
docker命令-v(docker命令-f)
Docker 命令-v是用于挂载数据卷的命令。数据卷是一个文件或目录,其生命周期与容器分离,即使容器已被删除,数据卷也不会被删除。docker run -v [host_path]:[container_path]参数说明:host_path:宿主机的路径,即本地硬盘上的路径container_path:容器中的路径使用-v命令可以实现在容器中共享本地硬盘上的文件,还可以在不同容器之间共享数据卷。具体要求是,host_path必须是本地硬盘上的
java json netty
Java是一种非常流行的编程语言,广泛用于企业级应用程序的开发。其中,JSON和Netty是两个在开发和通信方面非常重要的概念。那么,让我们来了解一下Java如何使用JSON和Netty。JSON是一种轻量级的数据格式,用于数据交换。它是一种基于文本的格式,易于阅读和编写。在Java中,使用JSON需要使用一些库。其中,最常用的是Gson库。使用Gson库,我们可以将JSON格式的字符串解析为Java对象,反之亦然。Gson gson = new Gson(); String json = "{\"name\":\"John\", \"age\"
html焦点图基本代码格式
HTML焦点图是网站页面中经常使用到的一种效果,它能够吸引用户的眼球并提升用户体验。下面是HTML焦点图的基本代码格式:<html> <head> <title>HTML焦点图代码示例</title> <style type="text/css"> /* 样式代码 */ .carousel { position: relative; } .carousel img { width: 100%; height: 4
java json named
Java是一门广泛应用的编程语言,它有着良好的跨平台性和易于学习的特点,因此在许多领域都有着广泛的应用。而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,具有易于阅读和编写、易于解析和生成、支持多种语言等特点。在Java中操作JSON,我们常常会用到JSON库,其中一个非常受欢迎的就是Jackson。Jackson是一个开源的Java JSON库,提供了一系列的API用于处理JSON数据。其中有一个重要的功能是named,即为JSON对象中的字段定义一个命名策略。在JSON中,一个对象是由多个键值对组成的,而这些键往
java endswith和eq
Java中的endswith和eq是两个非常常用的方法,它们都可以用来比较字符串。下面我们分别来看一下这两个方法的用法和区别。endswith方法String s1 = "hello world"; boolean end = s1.endsWith("world"); System.out.println(end);上述代码中,我们创建了一个字符串s1,然后使用endswith方法判断它是否
css 优惠券锯齿
CSS 的优惠券锯齿可以使网页的设计更加美观,增加用户的体验。下面介绍一些实现这个效果的代码。.coupon { position: relative; width: 200px; height: 100px; background-color: #fff; border: 1px solid #ccc; padding: 20px; overflow: hidden; } .coupon::before { content: ""; position: abs
jquery3.1.1 源码解析
JQuery是一个广泛使用的JavaScript库,它的目标是使Web开发更容易,更快速,并且兼容各种浏览器。它提供了许多常用功能和方法,例如选择元素、操作元素、事件处理等等。该库在开发中简化了很多任务并且减少了开发的时间。这篇文章将解析jQuery3.1.1的源代码,让我们更好地了解这个流行的JavaScript库。jQuery选择器jQuery的选择器是其最强大的功能之一。它们是一种能够在HTML DOM中找到和操作元素的方式。下面是一个简单的jQuery选择器:$('#myElement')这个选择器将会选中ID为
docker存储raid(docker存储引擎)
Docker作为一种轻量级的容器技术,广泛应用于部署和管理应用程序的场景中。在Docker部署中,存储是至关重要的一部分,而RAID技术可以提供更高效的数据存储和备份。下面我们来了解一下如何使用Docker存储RAID。RAID技术,即冗余阵列磁盘,是一种将多个硬盘组成单一虚拟存储设备的技术。RAID可以将数据分散存储在多个物理硬盘上,提高数据可靠性和性能。当一个硬盘出现故障时,RAID可以自动使用其他硬盘中的数据恢复文件。RAID有几种不同的级别,包括: RAID 0:将数据分散存储在多个硬盘上,提高读取速度,但数据容易丢失。 RAI
java list 转化json
在Java编程中,我们常常需要将List类型转化为JSON格式的字符串,以方便传输和处理。这时候,我们可以使用第三方库(如Gson、Jackson等),也可以手动编写代码实现。下面是一个示例,演示如何将List类型对象转化为JSON字符串。import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.util.ArrayList; import java.util.List; public class ListTo
docker命令-s(docker命令使用)
Docker是一个开源的容器化平台,让开发者能够在容器内封装他们的应用程式以及依赖项,从而能够简单、快速地部署应用程式。其中常用的命令之一是-s命令,它在容器启动之前设置容器的进程限制。$ docker run -it -s -v /var/run/docker.sock:/var/run/docker.sock ubuntu通过-s命令,容器的进程可以受到控制和限制,这在一个容器内部有多个进程时会很有用。此命令可以在启动容器之前通过命令行传递设置。例如上例中的
如何将WebLogic服务器运行于Docker容器中?
步骤1:为我们的容器创建第一个镜像#以centos镜像作为基础镜像,我们启动自己的容器并在其中执行/bin/bash命令#注:-t-i参数用于创建一个虚拟的命令行。sudodockerrun-t-icentos/bin/bash现在我们已经成功的运行了自己的第一个容器,并且进入到容器的命令行界面中。在容器中,我们执行下面的命令:yum-yupdate#更新软件包yuminstallwhich#安装which命令yuminstallgit#安装Git安装完成后,按Ctrl+d来退
javascript 对象函数
JavaScript是一种面向对象的编程语言,而对象是其中最重要的概念之一。在JavaScript中,对象是一个由属性和方法组成的数据结构。而对于这些方法,我们可以使用对象函数的形式来书写。 JavaScript对象函数允许我们将函数封装在对象中,从而提供代码的可重用性和封装性。比如,我们可以在一个名字空间内定义一些函数,防止它们与其他代码发生命名冲突。 下面是一个使用对象函数的例子:// 声明一个名为 utils 的对象 var utils = { // 定义一个名为 add 的函数 add: function(a, b) { retur
node oracle
< p >Node.js作为一种JavaScript运行环境,可以使JavaScript运行在服务器端。Oracle是目前全球排名第二的数据库软件,其在企业级应用中使用广泛。而Node.js和Oracle结合起来,可以提供一些强大的功能,例如运行Oracle的SQL语句,同时可以执行Node.js的代码。下面将介绍Node Oracle的应用和使用方法。< /p>< p >首先,需要在Node.js中安装Node Oracle模块。通过以下命令进行安装:< /p>< pre >$ npm install oracledb< /p
php http upload
PHP是一种功能强大的编程语言,被广泛应用于Web网络编程领域。在Web开发和数据处理程序中,文件上传是一项非常基本和重要的功能。随着互联网用户对上传文件大小和个数的需求不断增加,如何提高上传效率和文件安全性成为了一个重要的课题。在PHP中,我们可以通过HTTP POST方式将表单数据和上传文件同时发送到服务器端。但是在文件上传过程中,我们需要考虑一系列安全性问题,例如上传文件的大小限制、文件类型限制、文件名规范等。下面我们来看一个案例,通过代码实现基本的文件上传:<?php if ($_FILES["file"]["error"] >
java的单例模式和常量
Java中的单例模式是指只允许一个对象实例存在的设计模式,常常用于需要实例化的类只需要一个实例的情况。单例模式有多种实现方式,其中最常见的是懒汉式和饿汉式。// 懒汉式,线程不安全 public class SingletonLazy { private static SingletonLazy instance; private SingletonLazy() {} public static SingletonLazy getInstance() { if (instance == null) {
java的基础和核心javaEE
Java是一种跨平台的编程语言,具有优异的安全性、可靠性和可维护性。Java的基础包括了Java SE,而其中的核心则是Java EE。Java SE是Java标准版,它包含了Java语言基础、标准库以及Java虚拟机等核心组件。Java SE是Java平台的基础,所有的Java应用程序都需要在Java SE环境下运行。而Java EE则是Java企业版,它是构建分布式应用程序的核心。Java EE的核心是一个基于组件的平台,支持Web应用程序、企业级JavaBeans、Java消息服务、Java数据库连接、Java事务处理以及Java持久化API等。
java的参数传递和值传递
Java中,参数传递的方式有两种:值传递和引用传递。值传递表示将变量的值当做参数传递给函数,函数对参数的修改不会影响函数外部的变量。引用传递表示将变量的引用(地址)当做参数传递给函数,函数对参数的修改会影响函数外部的变量。public class ParameterPassing { public static void main(String[] args) { int a = 10; int[] b = {1, 2, 3}; change(a, b); System.out.println("a = " + a +
ajax中data几种格式
在使用Ajax进行前后端数据交互时,我们经常会遇到data参数的使用。data参数用于向后端发送数据,并根据后端的返回结果进行相应的操作。在Ajax中,data参数可以采用多种格式来传递数据,这取决于后端的需求和我们的具体情况。本文将介绍几种常见的data格式,并通过举例来说明各种格式的适用场景和注意事项。 一、JSON格式 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端数据的传输和存储。在Ajax的data参数中,我们可以直接使用JSON对象作为数据进行传递。 例如,我们需要向后端发送一个用户的注册信息,包括用户名、密码和邮箱
Java求n阶和
在Java中,我们可以通过循环或者递归的方式来求n阶和。下面是具体的代码实现。// 使用循环的方式求n阶和 public static int sumOfFactorialWithLoop(int n) { int result = 0; int factorial = 1; for (int i = 1; i<= n; i++) { factorial *= i; result += factorial; } return result; } // 使用递归的方式
java的包和类的区别
在Java中,编程语言通过类和对象来实现,而这些类和对象被组织在包中,以便管理和分类。但是,在包和类之间存在一些差异,在这篇文章中,我们将详细介绍这些差异。包(package)是一种容器,用于组织和管理一组相关的Java类。包可以包含其他包,从而形成树型结构。每个包都有一个唯一的名称,这个名称通常使用反向域名的形式来表示。例如,Java标准库中的包命名通常以java、javax和org开头。// Java中,代码中使用 `package` 声明一个包 package com.example.demo;类(class)是Java中
excel2007怎么用递减方式重新排列表格数据_java
excel2007怎么用递减方式重新排列表格数据?1、首先在Excel表格中输入姓名和对应的成绩数据,需要将其按照成绩降序排序。 2、选中数据单元格并点击“开始”选项卡中的“排序”选项,点击其中的“自定义排序”。 3、在弹出的排序设置窗口中,选择按照“成绩”作为关键字,并选择“降序”,点击确定按钮。 4、即可将选中的单元格按照成绩的递减(降序)顺序进行排列出来了。
自学java怎么学习效率高_java
自学java怎么学习效率高?自学Java没问题,无非就是一个毅力问题:你能坚持住那么长时间的自学过程吗?你能坚持自律每天学习最起码五个小时以上的时间吗?你能坚持住遇到问题却无法立即解决然后耗费你大量精力的情况多次发生吗?......上述还只是一小部分,接下来真正学习起来才更加困难,Java不同于其他编程语言,在学习的过程中,它枯燥没有成果展示可以激励自己,就可能你学着学着开始疑惑:这玩意儿到底在整啥?所以如果要自学的话,一定要做好接受长时间跨度的学习准备,具体怎么学可以接着往下看:1.前期准备自学的话,不管你是否在职,每天都一定要记
boolean表达式怎么用_java
boolean表达式怎么用?boolean是java中的布尔型(逻辑型)数据类型,在java中boolean值只能是true和false,而不能用0和1代替,并且一定要小写。布尔值 true 代表“真”,false 代表“假”。一般关系运算符会返回布尔值的结果。另外,数值的 0、-0、特殊值的 null、NaN、undefined 以及空字符("")都会被解释为 false ,其他值则会被解释为 true 。
清华北大的软件学院的学生很少学习JAVA吗_java
清华北大的软件学院的学生很少学习JAVA吗?以前学习Java的时候是在如鹏网上面学习的,有很多的免费的视频教程,像《这样学Java不枯燥》,通过开发超级玛丽,飞机大战,汤姆猫等好多经典的小游戏来讲解Java的知识点,挺有意思的,,可以极大的激发对编程的兴趣,特别的不错
jdk要自己下载吗_java
jdk要自己下载吗?是的,jdk要自己下载。jdk的全名叫做java development toolkit,意思是java开发环境工具包,java最早是sun公司的,后来被Oracle公司收购,因此jdk需要到Oracle公司下载。或者您可以考虑使用IDEA或者eclipse这种 综合开发IDE,内置有jdk的下载,省去一些麻烦。
java循环查询和两表查询效率
Java是一种广泛使用的编程语言,它支持各种各样的循环和查询方式。在实际应用中,我们需要选择合适的方式来实现我们的功能。本文将重点讨论Java中的循环查询和两表查询效率问题。循环查询是指在循环中执行查询操作,遍历数据并根据某些条件从中获取所需信息。使用循环查询的好处是代码逻辑清晰,易于理解和维护。但是,它可能会导致性能问题。在处理大量数据时,每次查询都需要连接数据库和执行查询语句,这将花费很长时间。// 使用循环查询获取学生的分数 for (int i = 0; i < studentIds.length; i++) {
java 关键字和保留字
Java关键字和保留字对于程序员来说是非常重要的,这些词汇具有特殊的含义,用于在Java编程中规范化语法规则和表达式。Java关键字在Java编程语言中具有特定含义和功能。它们是Java语言保留的特殊单词,不能用作标识符。Java关键字包括以下内容:abstract assert boolean break byte case catch char class const continue default do double
c语言中形参的存储单元是动态分配的_java
c语言中形参的存储单元是动态分配的?因为数组在使用的时候可能造成内存浪费,使用动态内存分配可以解决这个问题。C函数库提供了两个函数,malloc和free,分别用于执行动态内存分配和释放。malloc的参数就是需要分配的内存字节数。malloc分配一块连续的内存。如果操作系统无法向malloc提供更多的内存,malloc就返回一个NULL指针
java的变量名和方法名
Java是一种非常流行的编程语言,其语言特性之一是变量和方法名的重要性。在Java中,变量名和方法名是编程过程中的关键因素之一。变量名是指在程序中声明的用于存储数据的标识符。在Java中,变量名应该使用有意义的名称来表明其目的。变量名应该具有描述性,这样其他程序员可以更轻松地理解代码的含义。以下是Java代码示例:int num = 50; String name = "John Smith";在这个例子中,变量名“num”和“name”都具有描述性,可以清楚地表明它们所代表的值。方法名是指在程序中执行特定操作的代
新电脑网页显示不支持插件怎么弄_java
新电脑网页显示不支持插件怎么弄?清除Chromes浏览数据:损坏的缓存和浏览数据也会对Chrome的性能产生负面影响,因此要修复“此插件不受支持”的错误,应该彻底清除浏览数据:启动Google Chrome并同时按下Ctrl + Shift + Del。选择清除请求中的浏览数据并单击清除浏览数据按钮。等待进程正在执行,然后重新启动Chrome。Adobe Flash Player默认情况下可能已被禁用。IE,Edge或Firefox可以帮助您访问网站,这些网站在Chrome浏览器屏蔽了“此插件不受支持”弹出窗口。如果您使用Go
48db是多大声音_java
48db是多大声音?48分贝就相当于正常人说话的声音。分贝是用来形容响度的,用dB表示,一般响度对人耳的影响是:40~60分贝,一般说话的音量;70分贝,大声说话的音量,舒适度上限(比这个声音大的就很吵了);60~80分贝,一般车辆行驶的音量;100分贝,拖拉机开动的声音;110分贝,电锯工作时的音量;140分贝,喷气式飞机起飞时的音量。
矩形对角线互相平分使用格式_java
矩形对角线互相平分使用格式?四边形ABCD是矩形,对角线AC,BD交于点O,其使用格式是∵四边形ABCD是矩形∴AO=CO,BO=DO
java 和前端数据交互
随着互联网技术的不断进步,前端开发越来越受到重视。在前端开发中,数据的传递和处理是非常重要的一环。而在数据交互中,Java 和前端的配合是常见的选择。// Java代码 @RequestMapping("/getData") @ResponseBody public MapgetData(){ Mapresult = new HashMap<>(); result.put("name", "Java大牛"); result.pu
java的内存和垃圾回收
Java是一种面向对象的编程语言,内存管理是Java程序员所必须掌握的技能之一。这篇文章将探讨Java内存和垃圾回收的相关知识。Java程序在运行时会将所需的内存从系统中申请,并根据程序运行的需要进行管理。Java内存被分为以下几个部分:Heap 堆内存 Method Area 方法区 Native Method Stack 本地方法栈 JavaVM Stack Java虚拟机栈 PC Registers 程序计数器其中,堆内存是Java应用程序的最大部分,垃圾回收也是在堆上进行的。J
5好还是ipad2018好_java
5好还是ipad2018好?谢邀,iPad mini5还是iPad 2018的选择上,如果让我进行选择的话。我选择iPad mini5的可能性最大!首先,电子产品(手机平板类)一般基本保持“买新不买旧”的理念,接着让机君来分析二者的优缺点,以便大家购买!1.外观篇iPad mini5在外观上绝对是比iPad 2108更精致的机型。虽然正背面看起来好像没什么区别,但是我们要了解一下这些内容:iPad min5机身厚度为6.1mm,净重为308克,而iPad 2018机身厚度为7.5mm,净重为469克。在整体握持感上,iPad
java的与运算和按位与运算
Java是一种多范式编程语言,能够实现各种运算操作,包括与运算和按位与运算,用来判断两个条件是否均为真。与运算是指两个布尔值计算的比较操作,仅当两个值都相等时,返回“真”。在Java中,与运算使用“&&”符号来表示,并返回一个布尔值。public class AndOperatorExample { public static void main(String[] args) { boolean x = true; boolean y = true; boolean result = x &&
java求两个数的和的方法
Java是一门广泛应用的编程语言,它受到广泛的欢迎,因为它详细而又易于使用。许多程序员会选择Java来编写他们的应用程序。在Java中,您可以使用很多不同的算法,来实现各种各样的任务。在这篇文章中,我们将展示一个使用Java求两个数的和的方法。public class SumTwoNumbers { public static void main(String[] args) { int num1 = 5; int num2 = 7; int sum = num1 + num2; System.
java求1到n的和循环结构
Java是一种广泛应用的编程语言,它支持多种编程范式,如面向对象编程和函数式编程。对于求1到n的和,可以使用循环结构来实现,下面是使用Java代码实现这个功能的例子。public class SumofNumbers { public static void main(String[] args) { int n = 10; int sum = 0; for (int i = 1; i<= n; i++) { sum += i; } System.out.println("1到" + n + "
java求两个复数的和
在计算机编程中,处理复数是一项基本操作。Java是一种方便处理复数的编程语言,本文将介绍如何使用Java来计算两个复数的和。//定义复数类 class Complex { private double real; //实部 private double imag; //虚部 //构造函数 public Complex(double r, double i) { real = r; imag = i; } //加法操作,返回一个新的复数 public Complex add
java求ASCII和汉字内码
在Java中,我们经常需要求出某个字符的ASCII码或汉字内码。这里,我们将介绍如何在Java中实现这个功能。// 求字符的ASCII码 char c = 'A'; int ascii = (int)c; System.out.println("字符'" + c + "'的ASCII码是:" + ascii); // 求汉字的内码 String s = "我"; try { byte[] bytes = s.getBytes("Unicode"); String hexStr = "";
java的三大特性和特点
Java被誉为是一种功能强大的编程语言,它有三大特性,分别是面向对象、平台无关性以及自动内存管理。1.面向对象Java是完全的面向对象编程语言,它将数据和运算输绑定到一起,然后把它们封装成对象。因为面向对象的设计可以将复杂的问题分解成简单的问题,从而方便进行模块化编程,并增强软件的可重用性、可维护性以及可扩展性。// Java的面向对象示例代码 public class Car{ private String brand; private String model; private int price;
java的值传递和引用传递参数
在Java中,传递参数有两种方式:值传递和引用传递。在值传递中,参数的值被复制到一个新的变量中,而在引用传递中,参数传递的是变量的地址。下面看一个简单的示例:public class Test { public static void main(String[] args) { int a = 10; String b = "hello"; System.out.println("a的值为:" + a); System.out.println("b的值为:" + b); change(a, b);
java的后台和前端的区别
Java是一种广泛使用的编程语言,能够用于开发后台和前端应用程序。但是,这两种应用程序以及它们的开发方式之间有很大的差异。后台应用程序是在服务器上运行的,用于处理数据和业务逻辑。Java后台开发人员使用Java EE(Enterprise Edition)平台来开发这些应用程序。Java EE提供了一系列的API,包括数据库连接、servlet和JSP(Java Server Pages),可以帮助开发人员快速创建功能强大的应用程序。public class HelloWorldServlet extends HttpServlet { prot
java的动词原形和过去分词
在Java编程中,常常需要使用一些动词的原形和过去分词来进行编程,包括许多常用的方法和函数。public void add(int a, int b) { int result = a + b; System.out.println("The result is " + result); }上述代码中,使用了动词add来表示加法操作,同时也使用了过去分词println来输出结果。在Java中,常用的动词原形和过去分词包括:add - addedcreate - created
nbu磁盘备份Oracle
NBU磁盘备份Oracle是一种基于Symantec NetBackup(以下简称NBU)软件的备份方法,可以很好地保护Oracle数据库的数据安全。NBU磁盘备份Oracle使用磁盘卷快照技术,不需要停止数据库服务,备份速度快,恢复方便,备份数据可以直接挂载到测试服务器或者直接还原到生产服务器上。下面将详细介绍NBU磁盘备份Oracle的操作方法和优势。在介绍具体操作之前,我们先来了解一下磁盘卷快照技术。磁盘卷快照技术可以在磁盘上创建一个虚拟的快照卷,这个卷记录了磁盘卷的数据在某一时刻的状态,备份时先创建虚拟卷的快照,再将快照上的数据备份到备份介质上,这样可以保证备份数据
javascript 常量
const PI = 3.14159; PI = 3; // 会报错,因为常量不能再次赋值JavaScript中的常量是指在程序执行期间不会改变其值的变量。常量和变量的区别在于,常量一旦被赋值就无法更改。通常情况下,常量声明时必须被赋予一个初始值,否则会报错。常量在JavaScript中扮演着非常重要的角色。举个例子,当我们需要使用圆周率这个常数时,就可以定义一个PI常量:const PI = 3.14159;我们可以通过这种方式将PI这个常数引入我们的代码中,方便我们在不同的场合下使用。比如我
php httpd 配置文件
在Web开发中,配置Apache服务器是至关重要的任务之一,而使用PHP则更是必不可少。httpd配置文件是帮助我们配置Apache的工具,在这篇文章中,我们将着重探讨如何配置PHP以及使用httpd配置文件的最佳实践。 PHP作为一种服务器端语言,为Web开发中的程序员提供了强大的功能,例如将动态资源直接输出到客户端,并处理表单等用户交互。而在使用PHP时,必须要将其配置到Apache服务器中,以便服务器正确渲染PHP文件,且能够利用PHP的全部功能。 首先,我们需要确保Apache服务器是安装好的,并且已经打开httpd配置文件了。在大多数Unix/Linux系统中,这个文件位于/et
javascript 引入外部js
在Web开发中,JavaScript是一个非常重要的语言,它可以使网站实现更多的互动和动态效果。但是,JavaScript语言的功能并不仅限于网页内嵌的代码,它可以通过引入外部js文件的方式扩展其功能。外部js文件是保存在服务器上的JavaScript文件,在网页中引入后,可以为网页增添更多的JavaScript代码,从而实现更多的功能。外部js文件的引入方式有多种,以下是其中两种常用的方式。第一种方式是直接在html文件中引入外部js文件,可以使用<script>标签,如下所示:<html> <hea
cp 拷贝文件夹 macos
在MacOS系统中,将文件夹从一个位置复制到另一个位置是一个常见的需求。然而,MacOS的cp命令并不支持直接拷贝文件夹。这给Mac用户造成了一些困扰。为了解决这个问题,我们可以使用一些其他的方式来实现文件夹的拷贝。一种方法是使用rsync命令。rsync是一个功能强大的文件复制工具,可以在本地或远程系统之间进行文件同步。通过在Terminal中输入以下命令,我们可以轻松实现文件夹的拷贝:rsync -avh /path/to/source /path/to/destination在这个命令中,/path/to/source