- node.js学习
小猿L
node.jsnode.js学习vim
node.js学习实操及笔记温故node.js,node.js学习实操过程及笔记~node.js学习视频node.js官网node.js中文网实操笔记githubcsdn笔记为什么学node.js可以让别人访问我们编写的网页为后续的框架学习打下基础,三大框架vuereactangular离不开node.jsnode.js是什么官网:node.js是一个开源的、跨平台的运行JavaScript的运行
- document获取元素的方法
小成语
js平时js
js学习总结----DOM获取元素的方法(8个)DOM:documentobjectmodel文档对象模型DOM就是描述整个html页面中节点关系的图谱,可以如下图理解在DOM中,提供了很多的获取元素的方法和之间关系的属性以及操作这些元素的方法。1、获取页面中元素的方法1)、document.getElementById('元素的ID')在整个文档中,通过元素的ID获取到这个元素对象(获取的是一个
- 【js学习笔记】“花密”算法本地化
goocheez
javascriptjavascript学习笔记
需求花密(https://flowerpassword.com)是一种轻量级的密码管理工具,通过仅记忆一个私人密码,利用不同关键字实时生成相应的密码,来避免不同网站使用同样的密码,以及避免记忆多个网站的多个密码。花密目前仅提供网页页面,每次需要密码的时候,还要联网打开页面,有时也不太方便。因此希望将花密迁移到本地使用,比如直接在命令行里面输入passwordss就可以获得最终密码。用flowerp
- JS学习日记
zero.cyx
学习
reduce函数作用:将数组变成一个数值eg:leta1=[1,2,3,4,5,6]//计算a1中各元素的和functionf1(x,y){returnx+y}leta2=a1.reduce(f1)console.log(a2)forEach函数作用:将数组的每个元素传递给回调函数(遍历整个数组)leta=[1,2,3,4]letsum=0functioncheck(item){sum+=item
- 【Threejs学习】材质灯光投影
Mae_cpski
前端学习笔记学习前端3d
一、光源分类环境光(AmbientLight):会均匀的照亮场景中的所有物体。无方向,不能投射阴影。平行光(DirectionalLight):沿特定方向散发的光,发出的光线都是平行的。例如太阳光,可投射阴影。点光源(PointLight):从一个点向各个方向发散的光源。例如火柴、灯泡,可投射阴影。聚光灯(SpotLight):光线从一个点沿一个方向射出,例如顶灯、手电筒,可投射阴影。……以下三种
- js学习之路(六)——this,箭头函数,对象操作
EOPG
vue3javascript学习排序算法
js学习之路(六)1.this指向2.改变this指向3.ES6定义变量4.04_变量的块级作用域5.ES6的箭头函数6.箭头函数的特性7.函数的参数默认值8.模板字符串9.点点点(...)运算符10.解构赋值11.对象的简写12.了解面向对象开发13.创建对象的四种方式14.构造函数的书写和使用15.构造函数是否合理17.prototype18.__proto__1.this指向/*this指向
- vue.js学习步骤
一雨方知深秋
vue.js
文章目录前言一、vue.js是什么?二、学习步骤1.基础知识2.进阶学习实战项目总结前言Vue.js从一个简单的实验性项目成长为一个功能强大、社区活跃的前端框架,其发展历程展示了它对前端开发的持续创新和改进。通过引入先进的功能和不断扩展的生态系统,Vue.js为开发者提供了一个高效、灵活的工具,满足了不同规模和复杂度应用的需求。一、vue.js是什么?Vue.js是一个灵活且高效的前端框架,旨在简
- js、ts、argular、nodejs学习心得
海棠如醉
web技术web
工作中需要前端argular开发桌面程序,后端用nodejs开发服务器,商用软件架构AngularJS诞生于2009年,由MiskoHevery等人创建,是一款构建用户界面的前端框架,后为Google所收购。[3]Angular是AngularJS的重写,Angular2以后官方命名为Angular,2.0以前版本称为AngularJS。AngularJS是用JavaScript编写,而Angul
- js学习笔记4(函数)
木小伍
1.箭头函数ES6新增属性。箭头函数特别适合嵌入函数的场景。//只有一个参数,括号可以省略letdouble=x=>{return2*x};lettripble=(x)=>{return2*x};//没有参数需要括号letgetRandom=()=>{returnMath.random();};//有多个参数需要括号letsum=(a,b)=>{returna+b}/***箭头函数也可以不使用大括
- node.js学习
tryCbest
node.js学习
目录概述安装使用创建nodejs应用npm使用介绍Node.js回调函数Node.jsEventEmitterNode.jsBuffer(缓冲区)Node.jsStream(流)写入流管道流链式流Node.js模块系统Node.js路由Node.js全局对象Node.js文件系统Node.jsGET/POST请求获取get请求内容获取post请求Node.jsWeb模块Node.jsExpress
- Vue.js学习笔记(六)element表单校验规则
你看我像是会的样子吗?
Vue.jselementvue.js学习笔记elementui
文章目录前言一、表单验证的作用是什么?二、如何使用?1.普通字段2.对象3.对象数组4.自定义校验规则总结前言记录不同情况下的表单字段校验情况。一、表单验证的作用是什么?在防止用户犯错的前提下,尽可能让用户更早地发现并纠正错误。二、如何使用?Form组件提供了表单验证的功能,只需要通过rules属性传入约定的验证规则,并将Form-Item的prop属性设置为需校验的字段名即可。一个字段可以有多个
- NodeJS学习笔记(六) 中间件 | 跨域
量子喵pgm
前端中间件学习javascriptnode.js
Express中间件业务流程的中间处理环节,必须有输入输出中间件的作用当一个请求到达Express的服务器之后,可以连续调用多个中间件,从而对这次请求进行预处理。格式本质上是一个function函数varexpress=require('express')//导入Express模块varapp=express()//创建服务器app.get('/',function(req,res,next){n
- nodejs学习计划--(九)Api接口
化作繁星
#node学习路程学习node.js前端
API接口1.简介1.接口是什么接口是前后端通信的桥梁简单理解:一个接口就是服务中的一个路由规则,根据请求响应结果接口的英文单词是API(ApplicationProgramInterface),所以有时也称之为API接口这里的接口指的是『数据接口』,与编程语言(Java,Go等)中的接口语法不同2.接口的作用实现前后端通信3.接口的开发与调用大多数接口都是由后端工程师开发的,开发语言不限一般情况
- nodejs学习计划--(八)MongoDB数据库
化作繁星
#node学习路程数据库数据库学习mongodbnode.js前端
MongoDB1.简介1.Mongodb是什么MongoDB是一个基于分布式文件存储的数据库,官方地址https://www.mongodb.com/2.数据库是什么数据库(DataBase)是按照数据结构来组织、存储和管理数据的应用程序3.数据库的作用数据库的主要作用就是管理数据,对数据进行增(c)、删(d)、改(u)、查(r)4.数据库管理数据的特点相比于纯文件管理数据,数据库管理数据有如下特
- nodejs学习计划--(十)会话控制及https补充
化作繁星
#node学习路程学习node.js前端
一、会话控制1.介绍所谓会话控制就是对会话进行控制HTTP是一种无状态的协议,它没有办法区分多次的请求是否来自于同一个客户端,无法区分用户而产品中又大量存在的这样的需求,所以我们需要通过会话控制来解决该问题常见的会话控制技术有三种:cookiesessiontoken2.cookie1cookie是什么cookie是HTTP服务器发送到用户浏览器并保存在本地的一小块数据cookie是保存在浏览器端
- Vue.js学习笔记(5)
程序员不务正业
关于Flex-box布局学习:1、容器(flexcontainer),所有的子元素自动成为容器成员容器默认两个轴mainaxis:水平主轴crossaxis:垂直交叉轴2、容器属性2.1flex-direction//主轴的方向(成员的排列方向).box{flex-direction:row|row-reverse|column|column-reverse;}row:水平方向,起点为左端row-
- nodejs学习记录
node.js
获取某个文件夹下的所有信息引用自:https://blog.csdn.net/m0_62323931/article/details/132532830constfs=require('fs');constpath=require('path');functiongetAllFilesInfo(dirPath){constitemsInfo=[];functiontraverseDirectory
- JS学习笔记
头发长出来了^
JSJS
1.WebAPIs简介导读WebAPIs和JS基础关联性JS基础阶段以及WebAPIs阶段JS基础学习ECMAScript基础语法为后面作铺垫,WebAPIs是JS的应用,大量使用JS基础语法做交互效果①JS基础阶段我们学习的是ECMAScript标准规定的基本语法要求同学们掌握JS基础语法只学习基本语法,做不了常用的网页交互效果目的是为了Js后面的课程打基础、做铺垫②WebAPIs阶段webAP
- Three.js学习8:基础贴图
stones4zd
three.js学习贴图
一、贴图贴图(TextureMapping),也翻译为纹理映射,“贴图”这个翻译更直观。贴图,就是把图片贴在3D物体材质的表面,让它具有一定的纹理,来为3D物体添加细节的一种方法。这使我们能够添加表面细节,而无需将这些细节建模到我们的3D对象中,从而大大精简3D模型的多边形边数,提高模型渲染性能。二、准备基础代码在场景里创建一个立方体。为了方便观察效果,还添加了网格辅助和轨道控制器。HTML:{"
- Three.js学习7:dat.GUI 参数控制
stones4zd
three.js学习
每个学Three.js的都被安利了dat.GUI吧?我也不例外!今天就来了学习下dat.GUI,并记录下来自己的学习成果。一、什么是dat.GUI?dat.GUI是一个轻量级的图形用户界面库(GUI组件),使用这个库可以很容易地创建出能够改变代码变量的界面组件。官网:https://github.com/dataarts/dat.gui国内地址:GitCode-开发者的代码家园Three.js每个
- Node.js + Express + MongoDB 实战 TodoList 基础入门
barnett_y
【Node.jsKoa点滴知识】
Node.js+Express+MongoDB实战TodoList基础入门视频地址https://www.rails365.netb站常用链接express官网express官网中文expressgithubNodejs学习笔记以及经验总结看视频整理要点笔记:hello-express1.介绍2.请求与响应3.路由参数4.查询字符串5.POST请求和postman工具6.上传文件7.模版引擎介绍8
- Node.js学习-18跨域解决方法3----代理Proxy
小陈呐~
Node.jsnode.js学习前端
一、代理Proxy是什么?Proxy代理服务后端合法的去请求别的后端(oAuth授权-token)再发给前端前端写成自己的页面核心就是request模块,第三方模块,用npmirequest导入了解:钓鱼网站–违法前端请求后端后端请别的网页数据然后修改了发给用户大数据分析后端请别的ajax网址数据数据处理发给用户爬虫–灰色后端请别的静态文件和数据数据处理发给用户核心代码:varrequest=re
- Node.js学习-16跨域解决方法1----CORS
小陈呐~
node.js学习javascript
一、什么是corsCORS是一个W3C标准,全称是"跨域资源共享"(Cross-originresourcesharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。浏览器端:目前,所有浏览器都支持该功能(IE10以下不行)。整个CORS通信过
- Node.js学习-17跨域解决方法2----JSONP
小陈呐~
Node.jsnode.js学习javascript
一、JSONP是什么?JSONPJSONwithpadding必须后端工程师配合写出jsonp数据前端才能用script标签请求得到数据html核心代码:点我可以打印a变量functionlooka(){//利用时间戳设计不会重复函数varname="fn"+newDate().getTime()window[name]=function(arg){console.log(arg);}varscr
- 我的js学习之路(1)字符串的处理方法
Nehc_7b4f
js中字符串是不可变的,而数组是可变的,所以字符串可以借用数组的一些非变更方法(创建新对象的方法)来解决一些问题。1.join方法vara='qwer';varb=Array.prototype.join.call(a,'-');2.map方法varc=Array.prototype.map.call(a,(item)=>{returnitem.toUpperCase()+'.';}).join(
- 记录js学习8js的循环结构1(do-while循环)
小坤坤1810
do-while循环while循环的特点是:先判断条件,再执行循环操作do-while循环的特点是:先执行一次循环操作,再判断循环条件所以,do-while循环,没有入口判断,无论循环条件是否满足,至少会执行一次循环体语法do{操作}while(条件)举例:leti=10while(i<=10){console.log('第'+i+'行,好好学习,天天向上');i++}console.log('w
- 前端JS学习(三)
ALEX朱先生
一、时间函数|定时器1.重复执行定时器方法名:setInterval()作用:每隔多长时间执行一次函数,重复执行参考语法:setInterval(function(){},时间)2.延迟执行定时器方法名:setTimeOut()作用:延迟多长时间以后执行一次参考语法:setTime(function(){...要执行的代码..},时间)时间:毫秒数2.1流程方法1.获取div节点2.添加一个点击事
- 记录js学习8js的循环结构1(while循环)
小坤坤1810
while循环只要条件为true,循环能够一直执行代码块。while循环会一直循环代码块,只要指定的条件为true。语法while(条件){要执行的代码块}举例1://打印100行:好好学习天天向上//当我们需要重复执行某一个业务的时候,就需要使用循环leti=1//定义循环变量//()里面是循环的条件,条件成立,执行{}里面的操作while(i<=100){console.log('第'+i+'
- Three.js学习5:场景
stones4zd
three.js学习
一、场景场景:可以理解为3D空间,3D世界。能够控制在什么地方、摆放什么东西来交给three.js来渲染。能够放置物体、灯光和摄像机的地方。Three.js场景主要分为两类:Scene:普通场景。Frog:雾。二、场景创建constscene=newTHREE.Scene();创建的场景和相机一起,在渲染器里被渲染后,用户才能看到渲染出来的3D内容。renderer.render(scene,ca
- Three.js学习6:透视相机和正交相机
stones4zd
three.js数码相机学习
一、相机相机camera,可以理解为摄像机。在拍影视剧的时候,最终用户看到的画面都是相机拍出来的内容。Three.js里,相机camera里的内容就是用户能看到的内容。从这个角度来看,相机其实就是用户的视野,就像用户的眼睛。Three.js主要有四种不同的相机模式:透视相机PerspectiveCamera:具有透视效果,近大远小,也是用的最多的相机。正交相机OrthographicCamera:
- java线程Thread和Runnable区别和联系
zx_code
javajvmthread多线程Runnable
我们都晓得java实现线程2种方式,一个是继承Thread,另一个是实现Runnable。
模拟窗口买票,第一例子继承thread,代码如下
package thread;
public class ThreadTest {
public static void main(String[] args) {
Thread1 t1 = new Thread1(
- 【转】JSON与XML的区别比较
丁_新
jsonxml
1.定义介绍
(1).XML定义
扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。
XML是标
- c++ 实现五种基础的排序算法
CrazyMizzz
C++c算法
#include<iostream>
using namespace std;
//辅助函数,交换两数之值
template<class T>
void mySwap(T &x, T &y){
T temp = x;
x = y;
y = temp;
}
const int size = 10;
//一、用直接插入排
- 我的软件
麦田的设计者
我的软件音乐类娱乐放松
这是我写的一款app软件,耗时三个月,是一个根据央视节目开门大吉改变的,提供音调,猜歌曲名。1、手机拥有者在android手机市场下载本APP,同意权限,安装到手机上。2、游客初次进入时会有引导页面提醒用户注册。(同时软件自动播放背景音乐)。3、用户登录到主页后,会有五个模块。a、点击不胫而走,用户得到开门大吉首页部分新闻,点击进入有新闻详情。b、
- linux awk命令详解
被触发
linux awk
awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息
awk处理过程: 依次对每一行进行处理,然后输出
awk命令形式:
awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file
[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=val
- 各种语言比较
_wy_
编程语言
Java Ruby PHP 擅长领域
- oracle 中数据类型为clob的编辑
知了ing
oracle clob
public void updateKpiStatus(String kpiStatus,String taskId){
Connection dbc=null;
Statement stmt=null;
PreparedStatement ps=null;
try {
dbc = new DBConn().getNewConnection();
//stmt = db
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
矮蛋蛋
zookeeper
原文地址:
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
安装和配置详解
本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两
- tomcat数据源
alafqq
tomcat
数据库
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。
没有使用JNDI时我用要这样连接数据库:
03. Class.forName("com.mysql.jdbc.Driver");
04. conn
- 遍历的方法
百合不是茶
遍历
遍历
在java的泛
- linux查看硬件信息的命令
bijian1013
linux
linux查看硬件信息的命令
一.查看CPU:
cat /proc/cpuinfo
二.查看内存:
free
三.查看硬盘:
df
linux下查看硬件信息
1、lspci 列出所有PCI 设备;
lspci - list all PCI devices:列出机器中的PCI设备(声卡、显卡、Modem、网卡、USB、主板集成设备也能
- java常见的ClassNotFoundException
bijian1013
java
1.java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 添加包common-logging.jar2.java.lang.ClassNotFoundException: javax.transaction.Synchronization
- 【Gson五】日期对象的序列化和反序列化
bit1129
反序列化
对日期类型的数据进行序列化和反序列化时,需要考虑如下问题:
1. 序列化时,Date对象序列化的字符串日期格式如何
2. 反序列化时,把日期字符串序列化为Date对象,也需要考虑日期格式问题
3. Date A -> str -> Date B,A和B对象是否equals
默认序列化和反序列化
import com
- 【Spark八十六】Spark Streaming之DStream vs. InputDStream
bit1129
Stream
1. DStream的类说明文档:
/**
* A Discretized Stream (DStream), the basic abstraction in Spark Streaming, is a continuous
* sequence of RDDs (of the same type) representing a continuous st
- 通过nginx获取header信息
ronin47
nginx header
1. 提取整个的Cookies内容到一个变量,然后可以在需要时引用,比如记录到日志里面,
if ( $http_cookie ~* "(.*)$") {
set $all_cookie $1;
}
变量$all_cookie就获得了cookie的值,可以用于运算了
- java-65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
bylijinnan
java
参考了网上的http://blog.csdn.net/peasking_dd/article/details/6342984
写了个java版的:
public class Print_1_To_NDigit {
/**
* Q65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
* 1.使用字符串
- Netty源码学习-ReplayingDecoder
bylijinnan
javanetty
ReplayingDecoder是FrameDecoder的子类,不熟悉FrameDecoder的,可以先看看
http://bylijinnan.iteye.com/blog/1982618
API说,ReplayingDecoder简化了操作,比如:
FrameDecoder在decode时,需要判断数据是否接收完全:
public class IntegerH
- js特殊字符过滤
cngolon
js特殊字符js特殊字符过滤
1.js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号function stripscript(s) { var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]"
- hibernate使用sql查询
ctrain
Hibernate
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.Hibernate;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.Transa
- linux shell脚本中切换用户执行命令方法
daizj
linuxshell命令切换用户
经常在写shell脚本时,会碰到要以另外一个用户来执行相关命令,其方法简单记下:
1、执行单个命令:su - user -c "command"
如:下面命令是以test用户在/data目录下创建test123目录
[root@slave19 /data]# su - test -c "mkdir /data/test123" 
- 好的代码里只要一个 return 语句
dcj3sjt126com
return
别再这样写了:public boolean foo() { if (true) { return true; } else { return false;
- Android动画效果学习
dcj3sjt126com
android
1、透明动画效果
方法一:代码实现
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container, fals
- linux复习笔记之bash shell (4)管道命令
eksliang
linux管道命令汇总linux管道命令linux常用管道命令
转载请出自出处:
http://eksliang.iteye.com/blog/2105461
bash命令执行的完毕以后,通常这个命令都会有返回结果,怎么对这个返回的结果做一些操作呢?那就得用管道命令‘|’。
上面那段话,简单说了下管道命令的作用,那什么事管道命令呢?
答:非常的经典的一句话,记住了,何为管
- Android系统中自定义按键的短按、双击、长按事件
gqdy365
android
在项目中碰到这样的问题:
由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成:
1、单击事件:就是普通key的单击;
2、双击事件:500ms内同一按键单击两次;
3、长按事件:同一按键长按超过1000ms(系统中长按事件为500ms);
4、组合按键:两个以上按键同时按住;
- asp.net获取站点根目录下子目录的名称
hvt
.netC#asp.nethovertreeWeb Forms
使用Visual Studio建立一个.aspx文件(Web Forms),例如hovertree.aspx,在页面上加入一个ListBox代码如下:
<asp:ListBox runat="server" ID="lbKeleyiFolder" />
那么在页面上显示根目录子文件夹的代码如下:
string[] m_sub
- Eclipse程序员要掌握的常用快捷键
justjavac
javaeclipse快捷键ide
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 写道 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可
- c++编程随记
lx.asymmetric
C++笔记
为了字体更好看,改变了格式……
&&运算符:
#include<iostream>
using namespace std;
int main(){
int a=-1,b=4,k;
k=(++a<0)&&!(b--
- linux标准IO缓冲机制研究
音频数据
linux
一、什么是缓存I/O(Buffered I/O)缓存I/O又被称作标准I/O,大多数文件系统默认I/O操作都是缓存I/O。在Linux的缓存I/O机制中,操作系统会将I/O的数据缓存在文件系统的页缓存(page cache)中,也就是说,数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间。1.缓存I/O有以下优点:A.缓存I/O使用了操作系统内核缓冲区,
- 随想 生活
暗黑小菠萝
生活
其实账户之前就申请了,但是决定要自己更新一些东西看也是最近。从毕业到现在已经一年了。没有进步是假的,但是有多大的进步可能只有我自己知道。
毕业的时候班里12个女生,真正最后做到软件开发的只要两个包括我,PS:我不是说测试不好。当时因为考研完全放弃找工作,考研失败,我想这只是我的借口。那个时候才想到为什么大学的时候不能好好的学习技术,增强自己的实战能力,以至于后来找工作比较费劲。我
- 我认为POJO是一个错误的概念
windshome
javaPOJO编程J2EE设计
这篇内容其实没有经过太多的深思熟虑,只是个人一时的感觉。从个人风格上来讲,我倾向简单质朴的设计开发理念;从方法论上,我更加倾向自顶向下的设计;从做事情的目标上来看,我追求质量优先,更愿意使用较为保守和稳妥的理念和方法。
&