- Linux命令行基础——软件包管理
HHwxtx
linux运维服务器
1.软件包管理的发展初始阶段最早的软件包管理可以追溯到Unix系统的早期版本。在那时,软件通常以源代码的形式分发,并由系统管理员手动编译和安装。这种方式的管理比较原始和繁琐,因为每次安装都需要手动解决依赖关系和编译问题。软件包的引入为了简化安装过程,软件包被引入Linux,它将软件及其所有文件和资源打包在一起的集合,通常包括可执行文件、库文件、配置文件、文档和元数据(如软件名称、版本号、依赖关系等
- 【时时三省】tessy 单元测试 && 集成测试 专栏 文章阅读说明
时时三省
&&集成测试集成测试单元测试
目录1,关于更新2,关于文章阅读3,关于文章分类1,单元测试2,集成测试3,通用便捷操作4,编译问题集锦5,需求管理6,CTE的使用7,tessy自动化执行用例----通过bat命令行接口山不在高,有仙则名。水不在深,有龙则灵。----CSDN时时三省1,关于更新tessy专栏里面的文章,会持续更新。更新时,目录也会同步更新。所以此专栏的读者如果遇到在此专栏中未介绍的问题,或者此专栏对于哪些方面,
- React Native通讯原理
zbl_zbl
androidReactNativ
之前写过一篇文章ReactNativeAndroid源码分析,在此文章的基础上分析和总结下RN与Native的通讯流程。本文基于Android代码分析,iOS实现原理类似。1.通讯框架图先来解析下各个模块的角色与作用:Java层,这块的实现在ReactAndroid中-ReactContext:Android上下文子类,包含一个CatalystInstance实例,用于获取NativeModule
- Android 源码中jni项目 加载so目录小结
峥嵘life
JniAndroid系统androidandroid
Android源码中jni项目加载so目录小结文章目录Android源码中jni项目加载so目录小结一、前言二、so目录验证测试1、jniso文件错误报错(1)报错1-未找到so文件:(2)报错2-so文件中未找到native方法:2、验证的几种情况(1)apk下面的lib/arm64/放置正确的so文件(2)apk下面的lib/arm64/放置错误的so文件所以上面两个测试,验证了lib/arm
- VSCode查看Android源码,从入门到放弃
阳哥说全栈
Androidandroidvscodejava
VSCode查看Android源码比较简单,首先下载Android源码,我用的Mac,所以比较方便,对了repo在homebrew里面就有,直接brewinstallrepo就可以,但是版本比官方的略低,但是可以用,只是有警告。下载之后直接用VSCode加载文件夹即可,直接可以在目录里面打开文件,对于非jdk的类能定位到文件位置,但是jdk的源码无法定位,显示的是.class文件反编译出来的代码,
- AS高版本SDK编译生成的apk放入低版本android源码中集成编译错误
辉色投像
android系统中内置app:LOCAL_PATH:=$(callmy-dir)include$(CLEAR_VARS)#ModulenameshouldmatchapknametobeinstalledLOCAL_MODULE:=DemoLOCAL_MODULE_TAGS:=optionalLOCAL_SRC_FILES:=$(LOCAL_MODULE).apkLOCAL_MODULE_CLA
- 【C/C++】VS编译问题:C3861 “__stosb“找不到标识符,”_InterlockedDecrement”: 找不到标识符
Michael_Good
C/C++c语言c++java
这个C3861error的问题,切入点对了,就好搞,如果起步错了,就头疼了。问题根因:VS属性管理器,预处理器中,加入了"_X86_"解决方案:属性管理器-》界面下“项目-》属性-》通用属性-》C/C++-》预处理器-》预处理器定义删除"_X86_"
- 【Redis】Windows平台编译调试运行Redis,并附编译问题解决方案
Michael_Good
redisredis数据库缓存
最近想搞下消息任务架构,想使用消息发布订阅机制进行解耦,所以,计划借助redis的发布订阅机制思想进行实现。现在手头上只有Windows平台的环境,用vs跟下redis的执行逻辑。所以就找Windows平台的适配源码了。Windows-Redis源码开源路径:https://github.com/microsoftarchive/redis源码下载后:整体解决方案直接全部重新编译生成。编译问题解决
- rk3588s编译问题
yqc603090635
源码SDK编译android
编译环境为Ubuntu16.04server1、/u-boot/scripts/fit.sh:line615:fdtget:commandnotfound需安装"fdtget"apt-getinstalldevice-tree-compiler2、/bin/sh::lz4c:notfoundmake[]:***[arch/arm64/boot/Image.lz4]errormake:***[Ima
- android 编译luajit,【最新最全】为 iOS 和 Android 的真机和模拟器编译 Luajit 库
孙彻斯特
android编译luajit
编译Luajit库,的确是一个挑战。因为官网的教程,在当前版本的Xcode和NDK环境中,已经不适用了。以前只是编译了适用于真机的Luajit库。最近在尝试编译模拟器Luajit库,就顺便梳理了下Luajit库的编译经验,供以后查阅。网上的讨论也是有一些,但是相当一部分都已经过时。或许等你看到这篇文章的时候,可能也只是能获得一些可能的经验来解决自己的编译问题。所以说,了解一些基本的编译知识,能勉强
- android:configChanges分析
l309681481
androidgitee
android:configChanges如果要在android源码确认是否是configChanges导致了Activity重启,建议把ActivityThread.DEBUG_CONFIGURATION改为true。Activity无法内部消化此次配置改变时,会调用relaunchActivityLocked方法。不同的是,如果此Activity正在前台,那立即调用;在后台的,则等切到前台后再
- 学习GPG
stxinu
GPG
0.前言在使用repo下载android源码和git下载kernel源码里会使用到gpg,那gpg是什么?该如何使用?这里说到的GPG是GnuPG,是GnuPrivacyGuard的缩写,它提供钥匙管理、加解密和数字签名等功能,其涉及到非对称加密算法,在学习每一项新技术时都先学会用再去深究其实现,故而我们在这里简说原理后立马学习如何用,品尝非对称加密算法应用下的GPG味道。非对称加密算法使用公钥和
- Android源码分析--启动时序图
linuxMinx
Android源码分析Android源码分析
为什么Android系统启动比较慢Build的产物中最重要的是三个镜像文件,位于/out/target/product//目录下ramdisk.img:在启动时将被Linux内核挂载为只读分区,它包含了/init文件和一些配置文件。它用来挂载其他系统镜像并启动init进程。解析步骤:Init.c(system\core\init)Init.c{main(......init_parse_confi
- C++基础语法:异常处理(一)
jllws1
C++c++开发语言
前言"打牢基础,万事不愁".C++的基础语法的学习."学以致用,边学边用",编程是实践性很强的技术,在运用中理解,总结.引入在编写程序时,可能会因为程序错误或者编译问题等出现异常,因此设计了异常处理机制来应对.以6thEdition(以下称"本书")内容做参考.异常概览1.直接终止abort()2.函数设计成谓词,不影响程序编写.3.异常机制4.异常类异常的设计思想是:当代码可能出现问题时,标记出
- 下载Android源码
赛非斯
repoinit-uhttps://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest-bandroid-10.0.0_r411.首先下载repo:a)终端运行gitclonegit://codeaurora.org/tools/repo.gitb)mkdir~/binc)拷贝repo到~/bin下面,修改repo权限,chmoda+x~
- Android源码剖析----EventBus的工作原理
简书不简单iiii
现实开发中用到的框架为了方便更好的理解加深记忆,归纳如下:在开发中使用eventbus主要是为了进行传值和传递一些意图,第一次使用后就被这个框架的灵活和解耦性给折服。。。去熟悉eventbus的工作原理之前得首先知道一个设计模式那就是观察者模式,什么是观察者模式呢?就是为了定义对象间的一种一对多的依赖关系,即当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。整个eventbus
- 【C/C++】“包含卫士”“头文件卫士”
chiak7
c语言c++开发语言
在C或C++编程中,使用#ifndef,#define,和#endif指令来防止头文件的内容被多次包含是一种常见做法。这种技术被称为“包含卫士”(IncludeGuards)或者“头文件卫士”(HeaderGuards)。它的目的是防止在同一个编译单元中多次包含同一个头文件时发生的重定义错误和编译问题。#ifndef__NAME_H__#define__NAME_H__//头文件的内容#endif
- 【最全面】Android静默安装的两种方案
凉亭下
Androidandroidjava开发语言
一些产品要求APP在升级时能够实现静默安装,而无需弹出安装界面让用户确认。这里提出两种实现方案:方案一:通过pm命令安装APP调用『pm』命令实现静默安装,此方案无须修改Android源码,但需要root权限。实现如下:/***Silentinstall**@parampathPackage*@returntrue:successfalse:failed*/publicstaticbooleani
- java 串行线程_Java并发之串行线程池实例解析
笨zhu
java串行线程
前言做Android的这两年时间,通过研究Android源码,也会Java并发处理多线程有了自己的一些理解。那么问题来了,如何实现一个串行的线程池呢?思路何为串行线程池呢?也就是说,我们的Runnable对象应该有个排队的机制,它们顺序从队列尾部进入,并且从队列头部选择Runnable进行执行。既然我们有了思路,那我们就考虑一下所需要的数据结构?既然是从队列尾部插入Runnable对象,从队列头部
- Android AOSP源码研究之万事开头难----经验教训记录
职场007
AndoridAOSPAndroidAOSPandroid源码下载编译Android源码烧录AOSP避坑指南
文章目录1.概述2.Android源下载1.配置环境变量2.安装curl3.下载repo并授权4.创建一个文件夹保存源码5.设置repo的地址并配置为清华源6.初始化仓库7.指定我们需要下载的源码分支并初始化2.1使用移动硬盘存放Android源码的坑2.2解决方法3.Android源码编译4.Android源烧录1.概述做了四五年的android应用层开发后,想研究下底层源码的实现,所以想下载源
- naiveui 上传图片遇到的坑 Upload
长而不宰
vue
我在开发图片上传功能,需要手动触发上传但是我调用它内部自定义submit方法,结果接口一直在报错400我反反复复的测试了好就,确定了就是我前端的问题,因为之前一直在做后端的错误排查,以为是编译问题(因为之前也出现过这个问题)好,我把其中一个参数类型改为String类型,因为我看到我这边有传一个null过来看我一开始的类型是LongLong是包装类是可以存在null的为什么会报错400类型不对?结果
- 【转载】原生社区交友婚恋视频即时通讯双端APP源码 ONE兔2.0版
ms3_ishenglu
交友微信小程序小程序
原生社区交友婚恋视频即时通讯双端APP源码下载ONE兔2.0版包含后端、H5源码源码,Android源码,IOS源码
- 音视频学习之路--NDK交叉编译解析
蜗牛是不是牛
前言在说C/C++项目时必须要涉及编译问题,本章就来系统的说一下这些知识点,包括linux编译、常用linux指令、交叉编译等等。正文为了方便使用Linux环境,我这里直接在VMWare中安装了一个ubuntu,具体安装的步骤在网上非常多,安装完就是这样:由于好久不玩Linux系统了,这里我也是边搞边学习总结。编译原理这里主要说的是一个C/C++文件要经过下面4个步骤菜能变成可执行文件:预处理(p
- Adb显示第3方应用的包名原理
亚瑟-小郎
adblistframeworkandroid
Android早期版本实现原理请看Android源码分析-pm命令的实现,列出包名pmlistpackage,列出系统库pmlistlibraries_pmlistpackages-CSDN博客Android12对adbshellpm实现原理做了重构:改成了template模式PackageManagerShellCommandextendsShellCommandadbshellpmlistpa
- Android Jack Server Build
Nothing_655f
从AndroidM(6.0)之后,Android源码build引入了jack官方文档Jack工具的主要优势•完全开放源码源码均在AOSP中,合作伙伴可贡献源码•加快编译源码Jack提供特殊的配置,减少编译时间:pre-dexing,增量编译和Jack编译服务器.•支持代码压缩,混淆,重打包和multidex不在使用额外单独的包,例如ProGuard。1The.jacklibraryformatJa
- Android 系统apk源码目录结构匹配成Android Studio目录
峥嵘life
androidAndroid系统apkandroidandroidstudiogradle
Android系统apk源码目录结构匹配成AndroidStudio目录本文针对系统源码apk开发,一般是拥有整个Android源码的开发。系统apk源码目录结构匹配成AndroidStudio目录的好处:1、能够方便使用Studio查看代码、修改代码;2、并且修改后容易对比,不用错开目录对比;3、导入相关类库和系统签名文件,可以直接编译出系统应用。一、Android系统源码默认目录结构和Stud
- Android源码分析之消息机制
AN_9c94
说明:本文是基于Android6.0源码来分析的这片文章主要是从源码的角度来分析Android中的消息机制是如何运行的,并不会介绍如何使用Handler。Android的消息机制可以说是Android的血液,流淌在不同的app之间,催动这各种事件有序的执行。Android进程在启动的时候会调用ThreadActivity的main方法,从main方法中我们可以看出,Android的app进程启动以
- Redis Linux安装,彻底解决编译问题
天海华兮
redisredisbootstrap数据库
超级注意点核心就是:找教程,问chat把环境补齐然后删除解压的目录,重新解压这一步很重要,因为Redis的脚本,运行一次出错了,不删除整个目录,可能就修不好。有其他教程说,放在usr/local下,没用的另一种错误也要删除重新执行cdsrc&&maketestmake[1]:Enteringdirectory`/usr/local/redis-5.0.4/src'Youneedtcl8.5orne
- Android13源码下载及全编译流程
demodashi666
Android系统
目录一、源码下载1.1、配置要求1.1.1、硬件配置要求1.1.2、软件要求1.2、下载环境搭建1.2.1、依赖安装1.2.2、工具安装1.2.3、git配置1.2.4、repo配置1.3、源码下载1.3.1、明确下载版本1.3.2、替换为清华源1.3.3、初始化仓库并指定分支1.3.4、同步全部源码二、Android源码编译2.1、编译环境搭建2.2、全编译2.2.1、初始化编译环境2.2.2、
- Android源码中示例代码的查看方式
Mr_Tony
JetPackandroid
一、前言在实际开发中查看官方api定义的时候会看到如下内容其中如下内容是代码示例:Samples:androidx.compose.runtime.samples.rememberUpdatedStateSampleWithDisposableEffect//Unresolvedandroidx.compose.runtime.samples.rememberUpdatedStateSampleW
- 矩阵求逆(JAVA)初等行变换
qiuwanchi
矩阵求逆(JAVA)
package gaodai.matrix;
import gaodai.determinant.DeterminantCalculation;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 矩阵求逆(初等行变换)
* @author 邱万迟
*
- JDK timer
antlove
javajdkschedulecodetimer
1.java.util.Timer.schedule(TimerTask task, long delay):多长时间(毫秒)后执行任务
2.java.util.Timer.schedule(TimerTask task, Date time):设定某个时间执行任务
3.java.util.Timer.schedule(TimerTask task, long delay,longperiod
- JVM调优总结 -Xms -Xmx -Xmn -Xss
coder_xpf
jvm应用服务器
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。
典型设置:
java -Xmx
- JDBC连接数据库
Array_06
jdbc
package Util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCUtil {
//完
- Unsupported major.minor version 51.0(jdk版本错误)
oloz
java
java.lang.UnsupportedClassVersionError: cn/support/cache/CacheType : Unsupported major.minor version 51.0 (unable to load class cn.support.cache.CacheType)
at org.apache.catalina.loader.WebappClassL
- 用多个线程处理1个List集合
362217990
多线程threadlist集合
昨天发了一个提问,启动5个线程将一个List中的内容,然后将5个线程的内容拼接起来,由于时间比较急迫,自己就写了一个Demo,希望对菜鸟有参考意义。。
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CountDownLatch;
public c
- JSP简单访问数据库
香水浓
sqlmysqljsp
学习使用javaBean,代码很烂,仅为留个脚印
public class DBHelper {
private String driverName;
private String url;
private String user;
private String password;
private Connection connection;
privat
- Flex4中使用组件添加柱状图、饼状图等图表
AdyZhang
Flex
1.添加一个最简单的柱状图
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
<?xml version=
"1.0"&n
- Android 5.0 - ProgressBar 进度条无法展示到按钮的前面
aijuans
android
在低于SDK < 21 的版本中,ProgressBar 可以展示到按钮前面,并且为之在按钮的中间,但是切换到android 5.0后进度条ProgressBar 展示顺序变化了,按钮再前面,ProgressBar 在后面了我的xml配置文件如下:
[html]
view plain
copy
<RelativeLa
- 查询汇总的sql
baalwolf
sql
select list.listname, list.createtime,listcount from dream_list as list , (select listid,count(listid) as listcount from dream_list_user group by listid order by count(
- Linux du命令和df命令区别
BigBird2012
linux
1,两者区别
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
- AngularJS中的$apply,用还是不用?
bijian1013
JavaScriptAngularJS$apply
在AngularJS开发中,何时应该调用$scope.$apply(),何时不应该调用。下面我们透彻地解释这个问题。
但是首先,让我们把$apply转换成一种简化的形式。
scope.$apply就像一个懒惰的工人。它需要按照命
- [Zookeeper学习笔记十]Zookeeper源代码分析之ClientCnxn数据序列化和反序列化
bit1129
zookeeper
ClientCnxn是Zookeeper客户端和Zookeeper服务器端进行通信和事件通知处理的主要类,它内部包含两个类,1. SendThread 2. EventThread, SendThread负责客户端和服务器端的数据通信,也包括事件信息的传输,EventThread主要在客户端回调注册的Watchers进行通知处理
ClientCnxn构造方法
&
- 【Java命令一】jmap
bit1129
Java命令
jmap命令的用法:
[hadoop@hadoop sbin]$ jmap
Usage:
jmap [option] <pid>
(to connect to running process)
jmap [option] <executable <core>
(to connect to a
- Apache 服务器安全防护及实战
ronin47
此文转自IBM.
Apache 服务简介
Web 服务器也称为 WWW 服务器或 HTTP 服务器 (HTTP Server),它是 Internet 上最常见也是使用最频繁的服务器之一,Web 服务器能够为用户提供网页浏览、论坛访问等等服务。
由于用户在通过 Web 浏览器访问信息资源的过程中,无须再关心一些技术性的细节,而且界面非常友好,因而 Web 在 Internet 上一推出就得到
- unity 3d实例化位置出现布置?
brotherlamp
unity教程unityunity资料unity视频unity自学
问:unity 3d实例化位置出现布置?
答:实例化的同时就可以指定被实例化的物体的位置,即 position
Instantiate (original : Object, position : Vector3, rotation : Quaternion) : Object
这样你不需要再用Transform.Position了,
如果你省略了第二个参数(
- 《重构,改善现有代码的设计》第八章 Duplicate Observed Data
bylijinnan
java重构
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusE
- struts2更改struts.xml配置目录
chiangfai
struts.xml
struts2默认是读取classes目录下的配置文件,要更改配置文件目录,比如放在WEB-INF下,路径应该写成../struts.xml(非/WEB-INF/struts.xml)
web.xml文件修改如下:
<filter>
<filter-name>struts2</filter-name>
<filter-class&g
- redis做缓存时的一点优化
chenchao051
redishadooppipeline
最近集群上有个job,其中需要短时间内频繁访问缓存,大概7亿多次。我这边的缓存是使用redis来做的,问题就来了。
首先,redis中存的是普通kv,没有考虑使用hash等解结构,那么以为着这个job需要访问7亿多次redis,导致效率低,且出现很多redi
- mysql导出数据不输出标题行
daizj
mysql数据导出去掉第一行去掉标题
当想使用数据库中的某些数据,想将其导入到文件中,而想去掉第一行的标题是可以加上-N参数
如通过下面命令导出数据:
mysql -uuserName -ppasswd -hhost -Pport -Ddatabase -e " select * from tableName" > exportResult.txt
结果为:
studentid
- phpexcel导出excel表简单入门示例
dcj3sjt126com
PHPExcelphpexcel
先下载PHPEXCEL类文件,放在class目录下面,然后新建一个index.php文件,内容如下
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
if (PHP_SAPI == 'cli')
die('
- 爱情格言
dcj3sjt126com
格言
1) I love you not because of who you are, but because of who I am when I am with you. 我爱你,不是因为你是一个怎样的人,而是因为我喜欢与你在一起时的感觉。 2) No man or woman is worth your tears, and the one who is, won‘t
- 转 Activity 详解——Activity文档翻译
e200702084
androidUIsqlite配置管理网络应用
activity 展现在用户面前的经常是全屏窗口,你也可以将 activity 作为浮动窗口来使用(使用设置了 windowIsFloating 的主题),或者嵌入到其他的 activity (使用 ActivityGroup )中。 当用户离开 activity 时你可以在 onPause() 进行相应的操作 。更重要的是,用户做的任何改变都应该在该点上提交 ( 经常提交到 ContentPro
- win7安装MongoDB服务
geeksun
mongodb
1. 下载MongoDB的windows版本:mongodb-win32-x86_64-2008plus-ssl-3.0.4.zip,Linux版本也在这里下载,下载地址: http://www.mongodb.org/downloads
2. 解压MongoDB在D:\server\mongodb, 在D:\server\mongodb下创建d
- Javascript魔法方法:__defineGetter__,__defineSetter__
hongtoushizi
js
转载自: http://www.blackglory.me/javascript-magic-method-definegetter-definesetter/
在javascript的类中,可以用defineGetter和defineSetter_控制成员变量的Get和Set行为
例如,在一个图书类中,我们自动为Book加上书名符号:
function Book(name){
- 错误的日期格式可能导致走nginx proxy cache时不能进行304响应
jinnianshilongnian
cache
昨天在整合某些系统的nginx配置时,出现了当使用nginx cache时无法返回304响应的情况,出问题的响应头: Content-Type:text/html; charset=gb2312 Date:Mon, 05 Jan 2015 01:58:05 GMT Expires:Mon , 05 Jan 15 02:03:00 GMT Last-Modified:Mon, 05
- 数据源架构模式之行数据入口
home198979
PHP架构行数据入口
注:看不懂的请勿踩,此文章非针对java,java爱好者可直接略过。
一、概念
行数据入口(Row Data Gateway):充当数据源中单条记录入口的对象,每行一个实例。
二、简单实现行数据入口
为了方便理解,还是先简单实现:
<?php
/**
* 行数据入口类
*/
class OrderGateway {
/*定义元数
- Linux各个目录的作用及内容
pda158
linux脚本
1)根目录“/” 根目录位于目录结构的最顶层,用斜线(/)表示,类似于
Windows
操作系统的“C:\“,包含Fedora操作系统中所有的目录和文件。 2)/bin /bin 目录又称为二进制目录,包含了那些供系统管理员和普通用户使用的重要
linux命令的二进制映像。该目录存放的内容包括各种可执行文件,还有某些可执行文件的符号连接。常用的命令有:cp、d
- ubuntu12.04上编译openjdk7
ol_beta
HotSpotjvmjdkOpenJDK
获取源码
从openjdk代码仓库获取(比较慢)
安装mercurial Mercurial是一个版本管理工具。 sudo apt-get install mercurial
将以下内容添加到$HOME/.hgrc文件中,如果没有则自己创建一个: [extensions] forest=/home/lichengwu/hgforest-crew/forest.py fe
- 将数据库字段转换成设计文档所需的字段
vipbooks
设计模式工作正则表达式
哈哈,出差这么久终于回来了,回家的感觉真好!
PowerDesigner的物理数据库一出来,设计文档中要改的字段就多得不计其数,如果要把PowerDesigner中的字段一个个Copy到设计文档中,那将会是一件非常痛苦的事情。