2010年3月4日 由 飞扬轻狂
没有评论 »
尝试多样化安装
== 安装并了解 Ant ==
Ant Helloworld
- http://blog.fallseir.com/2010/03/ant-helloworld/
== 配置 Air Ant 样例 ==
1、移动文件到项目指定的位置
2、配置build.xml
# 设置SDK_HOME 为安装的Air的路径
3、测试helloworld
> ant test
4、生成数字签名
> ant keystore
# 密码设置为 samplePassword
5、打包项目
> ant package
# 在控制台输入数字签名密码 samplePassword
# air安装包 在release目录中
——————————————-
build.xml 文件内容
<project>
<!-- SDK properties -->
<property name="SDK_HOME" value="D:\Program Files\Adobe\AdobeAIRSDK"/>
<property name="ADL" value="${SDK_HOME}/bin/adl.exe"/>
<property name="ADT.JAR" value="${SDK_HOME}/lib/adt.jar"/>
<!-- Project properties -->
<property name="PROJ_ROOT_DIR" value="."/>
<property name="APP_NAME" value="helloworld"/>
<property name="APP_ROOT_DIR" value="${PROJ_ROOT_DIR}/src/html"/>
<property name="APP_ROOT_FILE" value="${APP_NAME}.html"/>
<property name="APP_DESCRIPTOR" value="${PROJ_ROOT_DIR}/${APP_NAME}-app.xml"/>
<property name="AIR_NAME" value="${APP_NAME}.air"/>
<property name="release" location="${PROJ_ROOT_DIR}/release"/>
<property name="assets" location="${PROJ_ROOT_DIR}/src/assets"/>
<property name="STORETYPE" value="pkcs12"/>
<property name="KEYSTORE" value="sampleCert.p12"/>
<target name="init" depends="clean">
<mkdir dir="${release}"/>
</target>
<target name="test">
<exec executable="${ADL}">
<arg value="${APP_DESCRIPTOR}"/>
<arg value="${APP_ROOT_DIR}"/>
</exec>
</target>
<target name="keystore" depends="init">
<java jar="${ADT.JAR}" fork="true" failonerror="true">
<arg value="-certificate"/>
<arg value="-cn"/>
<arg value="SelfSigned"/>
<arg value="1024-RSA"/>
<arg value="sampleCert.p12"/>
<arg value="samplePassword"/>
</java>
</target>
<target name="package" depends="init">
<java jar="${ADT.JAR}" fork="true" failonerror="true">
<arg value="-package"/>
<arg value="-storetype"/>
<arg value="${STORETYPE}"/>
<arg value="-keystore"/>
<arg value="${KEYSTORE}"/>
<arg value="${release}/${AIR_NAME}"/>
<arg value="${APP_DESCRIPTOR}"/>
<arg value="-C"/>
<arg value="${APP_ROOT_DIR}"/>
<arg value="${APP_ROOT_FILE}"/>
<arg value="-C"/>
<arg value="${assets}"/>
<arg value="icons"/>
</java>
</target>
<target name="clean" description="clean up">
<delete dir="${release}"/>
</target>
</project>
2010年3月3日 由 飞扬轻狂
1条评论 »
使用Ant快速开始一个Helloworld程序
== 安装ant ==
1)、 下载最新版本的ant
2)、 安装ant
* 将ant安装包解压到安装目录
本文使用ant版本为 apache-ant-1.8.0
安装位置为 D:\Program Files\apache-ant-1.8.0
* 配置环境变量
添加变量 ANT_HOME = D:\Program Files\apache-ant-1.8.0
更新变量 PATH 在原有值后面添加 ;%ANT_HOME%\bin
* 测试
在命令行下输入 ant -v 查看ant版本
== 运行 Helloworld for java ==
* 编写 Helloworld.java
位置 E:\learn\ant\helloworld\src\oata\Helloworld.java
package oata;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
* 编译并运行HelloWorld程序
# 创建目标路径
> mkdir \a build\classes
# 编译java源文件
> javac -sourcepath src -d build\classes src\oata\HelloWorld.java
# 执行helloworld程序
> java -cp build\classes oata.HelloWorld
# 构建 jar 文件
## 创建 jar 描述文件
> echo Main-Class: oata.HelloWorld>myManifest
## 打包jar文件
> mkdir build\jar
> jar cvfm build\jar\HelloWorld.jar myManifest -C build\classes .
## 通过jar 文件运行 helloworld 程序
> java -cp build\jar\HelloWorld.jar oata.HelloWorld
== 使用 ant 脚本 编译并执行 helloworld 程序 ==
- E:\learn\ant\helloworld\build.xml
<project>
<target name="clean">
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="build/classes"/>
<javac srcdir="src" destdir="build/classes"/>
</target>
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
<manifest>
<attribute name="Main-Class" value="oata.HelloWorld"/>
</manifest>
</jar>
</target>
<target name="run">
<java jar="build/jar/HelloWorld.jar" fork="true"/>
</target>
</project>
* 执行Ant脚本
# 执行ant脚本,编译打包并运行helloworld程序
> ant compile jar run
# 查看Ant项目中可用的Target
> ant -p
—————-
== 优化后的Ant脚本 ==
<project name="HelloWorld" basedir="." default="main">
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="main-class" value="oata.HelloWorld"/>
<target name="clean">
<delete dir="${build.dir}"/>
</target>
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
<target name="run" depends="jar">
<java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>
</target>
<target name="clean-build" depends="clean,jar"/>
<target name="main" depends="clean,run"/>
</project>
参考:Hello World with Ant
2010年3月2日 由 飞扬轻狂
没有评论 »
使用AIR快速开始一个Helloworld程序
关键步骤:
1、安装AIR环境
2、安装SDK
3、构建Helloworld项目
4、安装并测试Helloworld项目
==========================================
具体细节:
1、安装AIR环境
* 到Adobe下载AIR环境
* 安装AIR环境 ,本文使用的是 Adobe AIR 1.5.3.9130 版本
————————————————–
2、安装SDK
* 到Adobe下载SDK
* 将下载到的SDK包解压并放置到运行目录
本文下载的SDK版本为 adt version “1.5.3.9120″
本文SDK安装目录为 D:\Program Files\Adobe\AdobeAIRSDK
* 配置环境变量 将AIR SDK的工作路径添加到 PATH 变量中,(使adt和adl可以在任意目录以短路径方式启动)
PATH = [... 保持原有的PATH值不变];D:\Program Files\Adobe\AdobeAIRSDK\bin
————————————————–
3、构建Helloworld项目
* 创佳Helloworld项目
1)、创建Helloworld目录
本文全路径为 e:\learn\AIR\Helloworld
进入 Helloworld ,开始构建 helloworld 应用
除非明确说明 否则之后描述的文件和路径都是相对于此路径开始
2)、创建项目描述文件 HelloWorld-app.xml
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/1.5">
<id>examples.html.HelloWorld</id>
<version>0.1</version>
<filename>HelloWorld</filename>
<initialWindow>
<content>HelloWorld.html</content>
<visible>true</visible>
<width>400</width>
<height>200</height>
</initialWindow>
</application>
3)、创建应用界面 HelloWorld.html
<html>
<head>
<title>Hello World</title>
<script type="text/javascript" src="AIRAliases.js"></script>
<script type="text/javascript">
function appLoad(){
air.trace("Hello World");
}
</script>
</head>
<body onLoad="appLoad()">
<h1>Hello World</h1>
</body>
</html>
4)、测试应用
* 打开 cmd 并 cd 进入应用目录
* 运行命令 adl HelloWorld-app.xml
* > 系统将调用AIR运行时,启动一个400×200的窗口应用并呈现Helloworld字符
* > 系统在控制台输出 Hello World 字符
————————————————–
4、安装并测试Helloworld项目
1)、生成自签名证书和密钥对
* 运行命令 adt –certificate -cn SelfSigned 1024-RSA sampleCert.pfx samplePassword
* 系统将在当前目录生成密钥文件 sampleCert.pfx
2)、创建 AIR 安装文件
* 运行命令 adt -package -storetype pkcs12 -keystore sampleCert.pfx HelloWorld.air
HelloWorld-app.xml HelloWorld.html AIRAliases.js
* 根据系统提示输入密钥文件的密码 samplePassword
* 系统将根据 helloworld-app.xml 的描述生成AIR应用程序,并将helloworld.html 和 airaliases.js 当作附加资源嵌入AIR应用程序中
3)、安装 Helloworld 应用
* 双击 helloworld.air 或在命令行下执行 hellowrold.air 命令
* 系统调用本地的air运行时环境解释helloworld.air并开始应用安装
* 根据系统提示进行安装
4)、当安装完成后,通过双击helloworld的快捷方式或到安装目录打开helloworld.exe 即可运行helloworld应用
————————————————–
参考:
* 使用 AIR SDK 创建第一个基于 HTML 的 AIR 应用程序http://help.adobe.com/zh_CN/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7ecc.html
——————————————
资源:
* 使用 HTML 和 Ajax 开发 Adobe AIR 1.5 应用程序
* 针对 HTML 开发人员的 AIR 语言参考
* Flex 3.2 语言参考
* Adobe AIR 开发人员中心
2010年2月21日 由 飞扬轻狂
没有评论 »
– 飞扬的认知,2010-02-21, http://blog.fallseir.com/2010/02/about_crm
一、什么是CRM
CRM(Customer Relationship Management)客户关系管理
CRM 是一个围绕客户为中心的,通过IT手段,来增进客户沟通,提升客户关怀,从而影响客
户决策,并最终达到创利目的的企业经营策略。
其中的IT手段,通常指通过CRM系统来收集、分析和反馈客户行为数据,来更便利的实现同客户
的沟通和更有效的进行客户行为分析。
二、CRM 的组成
通常的CRM系统包含客户交互和行为分析两大部分。
1、客户交互
用于收集客户信息,记录客户行为日志,及对进行客户关怀和解答客户提问;
客户交互系统由电话呼叫中心(CTI)、短信(SMS)、邮件(EMAIL)、线上应用(WEB Site)、
及即时通讯(IM)等一切可能的方式整合在一起来实现同用户的交互,并收集用户行为。
2、行为分析
结合业务逻辑对客户行为日志进行分析,来为客户提供更具针对性的客户关怀;
通过对客户群体的行为日志进行统计,来评估往期的业务效果和指导未来的产品决策。
三、CRM 系统的成本
1、系统支持的交互平台、方式和规模
不同的交互平台(CTI、SMS、EMail、WEB Site、IM、…)及平台上的不同的实现方式(
人工客服、自助服务、主题活动、客户交流、客户关怀、…) 会有不同的效果的成本。
例如,一个极端的例子是一部电话通过全人工实现的电话客服和通过CTI实现的带有自助服务的
电话呼叫中心都被称作客服电话,用于进行客户服务和客户关怀。
2、系统支持的行为分析策略、数量和数据量级
分析策略需要根据不同的业务逻辑和客户行为数据进行定制,策略的个数和分析的行为数据量级
会对严重的影响到系统的结构和组织方式。
比如,从100条售后客户行为中找到来自北京的有跨地域维修记录的用户要比从1,000,000条客户
行为中分析更容易(大数据量的查找需要进行预处理才能达到可以接受的速度)。
四、CRM 系统的实施的前提
1、了解当前业务环境,分析业务领域并确认需求方向,规模
2、客观描述当前IT环境,以便系统可以尽可能的整合现有IT资源
3、确认需求和远景,确定必要的需求和可能的需求(圈地和画饼)
简单来说 CRM 就是通过同客户的交互对客户信息进行收集,并围绕对客户行为分析进行经营的策略。
CRM系统只是用于完成CRM的一个工具,前端的界面只是表象,卖点也许应该更直接的围绕这个工具
能直接或间接的为企业带来多少利润和加强了多少客户体验。
2009年6月2日 由 飞扬轻狂
没有评论 »
freebsd 7.2
根据提示进行安装 并选择最小安装
在进行系统配置时
* 关闭ssh外的所有服务
* 配置ip地址 配置时区
* 添加普通用户用来远程连接ssh,设置组为 wheel 这样可以使用su访问root
* 设置管理员密码
开启用户的su权限,使用su命令的用户必须存在与wheel组中
# pw groupmod wheel -m username
检查用户是否正确的添加到组中
# pw groupshow wheel
mount cdrom 映射光驱
# ll /dev/acd*
> acd0t01
# cd /cdrom
# touch CDROM-NOT-mounted-mcd.txt
# mount -t cd9660 /dev/acd0t01 /cdrom
- python
安装python
# cd /cdrom/packages
# pkg_add -p/home/app/python25 /cdrom/packages/python/python25-2.5.4_1.tbz
映射命令
# ln -s /home/app/python25/bin/python /usr/local/bin/python
– require
bsddb databases/py-bsddb
gdbm databases/py-gdbm
sqlite3 databases/py-sqlite3
tkinter x11-toolkits/py-tkinter
# pkg_add -p/home/app/sqlite3 /cdrom/packages/databases/sqlite3-3.6.11.tbz
映射错误的链接库
# ln -s /home/app/sqlite3/lib/libsqlite3.so.8 /usr/local/lib/libsqlite3.so.8
# cd /usr/local/lib/
# ln -s libsqlite3.so.8 libsqlite3.so
映射命令
# ln -s /home/app/sqlite3/bin/sqlite3 /usr/local/bin/sqlite3
- emacs 安装emacs编辑器
# pkg_add -p/home/app/emacs /cdrom/packages/editors/emacs-22.3.tbz
# ln -s /home/app/emacs/bin/emacs /usr/local/bin/emacs
解除绑定的光驱
#umount /cdrom
注:通过pkg_add 自动获取安装包
# pkg_add -r python
-r 选项将导致pkg程序自动从配置的packages网络镜像获取指定应用最新的安装包
[:p] –飞扬.轻狂 [fallseir.lee]
http://fallseir.livejournal.com
http://feed.feedsky.com/fallseir