Pages

2015年9月29日 星期二

有什麼軟體可以將硬碟裡的檔案匯出成樹狀清單?

Windows 就有內建.

執行 tree c:\ >c:\tree.txt

就可以在你的 C 槽根目錄下找到 tree.txt 這檔案, 內容就是你要的.

mrkt 的程式學習筆記: 給 ASP.NET MVC 初學者 - 兩種主要 View Engine 的對照

mrkt 的程式學習筆記: 給 ASP.NET MVC 初學者 - 兩種主要 View Engine 的對照: 現在開發 ASP.NET MVC 網站的 View 主要都已經是用 Razor View Engine,Razor View Engine 是 ASP.NET MVC 3 發表時所推出的,而 ASP.NET MVC 一開始出來的兩個版本主要是 WebForm View Engin...

Web Matrix (Part 2) ASP.NET Razor資料庫應用程式開發

資料來源

其實Razor並不算是一種新的語言,它在@符號後面所接的其實都還是C#語法。而且ASP.NET Razor對於ASP.NET MVC有著很密切的關係,它之所以出現是為了改進ASP.NET MVC的View的程式撰寫風格,也許不要說是改進,也可以當作多了一種View的撰寫方式。在Web Matrix所提供的ASP.NET Razor可以說是個預覽版,未來的ASP.NET MVC 3會含括此功能在裡面。
而關於 ASP.NET Razor 的設計目標有下面幾個:
  • 希望程式碼撰寫是一連貫,一氣呵成的。
  • 學習門檻低,容易上手
  • 不是一套新的程式語言,希望使用既有的ASP.NET/C#基礎即可快速的上手。
  • 使用任一種純文字檔編輯器都可進行開發。
  • 也支援使用Visual Studio 2010來開發,使用Visual Studio 2010強大的Intellisense的支援。
  • 同樣可進行View的Unit Test。
OK!再回到筆者今天的主題,先使用這個預覽的版本來體驗一下資料庫應用程式的開發方式,就順著下面的步驟來時做看看。
1.首先是先安裝OData Helper 1.0元件,這是存取資料庫必要的元件,請開啟Admin畫面將OData Helper 1.0安裝進來。
圖(一)、安裝OData Helper 1.0元件
image

2.點選左下方的Database,Web Matrix此時會切換到資料庫功能的頁籤。若預設一開始您也是選擇Empty Site,在沒有改名子的情況下,會有一個Empty Site.sdf的SQL Compact資料庫。請在Tables的節點選滑鼠右鍵"New Table"或點選上方的工具列的 New Table建立一個Employes的Table,並同時建立[id]、Name、Title 等三個欄位,如圖二。
圖(二)、建立SQL Compact 資料庫
image
3.接著任一建立幾筆資料,如圖三。
圖(三)、任一建立三筆資料
image
4.回到Files頁籤,並新增一個EmployeesList.cshtml 程式檔案,並撰寫如下程式。要注意的地方是,如果要撰寫多行的Razor,可以使用 @{.. } 包起來,而在這個大括號中,
  • 的HTML的Tag還是會直接被丟回前端,不會處理。只有@開頭的會在Server Side處理完畢再丟回用戶端。
    圖(四)、撰寫ASP.NET Razor的 foreach,列出所有員工資料
    image
    註:這裡先不考慮Web Form的做法。如果使用ASP (但使用.NET的功能) 寫法可能是這樣:
       1:  <%@ Page Language="C#" %>


       2:  <%


       3:      SqlConnection cnn = new SqlConnection("Data source=.;Initial Catalog=Empty Site;UID=sa;password=testxxx");


       4:      SqlCommand cmd = new SqlCommand("select * from Employees", cnn);


       5:      SqlDataAdapter SqlDA = new SqlDataAdapter(cmd);


       6:  %>


       7:  <!DOCTYPE html>


       8:  <html lang="en">


       9:      <head>


      10:          <meta charset="utf-8" />


      11:          <title></title>


      12:      </head>


      13:      <body>


      14:          <form id="form1" runat="server">


      15:          <div>


      16:              <h1>員工資料檔</h1>


      17:              <ul>


      18:                  <%


      19:                  DataSet ds = new DataSet();


      20:                  SqlDA.Fill(ds, "Employees");


      21:                  DataTable dtEmp = ds.Tables["Employees"];


      22:                  foreach(DataRow q in dtEmp.Rows){ %>


      23:                      <li><%=q.id %>. <%=@q.Name %></li>


      24:                  <%


      25:                  }


      26:                  %>


      27:              </ul>


      28:          </div>


      29:          </form>


      30:      </body>


      31:  </html>






    5.點選上方工具列的 Run—> Internet Explorer,即可看見執行結果。


    圖(五)、執行結果


    image


    如何! ASP.NET Razor是不是非常的容易,使用既有所學的即可輕易上手。如同前面所提的,編譯器會很聰明的將 ,
  • 2015年9月22日 星期二

    VFP-Visual FoxPro 資料參考網站


    VFP-Visual FoxPro 資料參考網站

    繁體

    VFP 愛用者社區 http://vfp.sunyear.com.tw/index.php

    簡體

     梅子Visual FoxPro論壇 http://www.mzvfp.com/

    英文

    http://vfpx.codeplex.com/

    http://www.news2news.com/vfp/index.php

    http://www.foxite.com/

    網易學院

    這裡有許多不錯的線上學習課程

    http://tech.163.com/school


    2015年9月21日 星期一

    中文特殊字問題

    這是行政院所做的網站,有將特殊字進行造字

    只要連上下列網站

    http://www.cns11643.gov.tw/

    下載

    全字庫單機版轉碼工具(Windows版)

    如果該網站還有找不到的字,可以申請造字

    這樣一來就可以達到網路書同文的境界

    LDAP and Active Directory user examples

    資料來源
    The examples described here has been shared by OpenKM users and should be taken with care.

    Jboss LDAP example 1

    LDAP Structure
    dc=fr
       dc=soc
          ou=groups
             cn=UserRole, objectClass=posixGroup, memberUid = jack, memberUid = joe
             cn=AdminRole, objectClass=posixGroup, memberUid = jack
          ou=people
             ou=intern
                cn = jack, objectClass=inetOrgperson, uid = jack
                cn = joe, objectClass=inetOrgperson, uid = joe
    Configuration parameters
    principal.adapter=com.openkm.principal.LdapPrincipalAdapter
    principal.database.filter.inactive.users=true
    principal.ldap.mail.attribute=mail
    principal.ldap.mail.search.base=ou=intern,ou=users,dc=soc,dc=fr
    principal.ldap.mail.search.filter=(&(objectClass=inetOrgPerson)(cn={0}))
    principal.ldap.referral=follow
    principal.ldap.role.attribute=cn
    principal.ldap.role.search.base=ou=groups,dc=soc,dc=fr
    principal.ldap.role.search.filter=(objectClass=posixGroup)
    principal.ldap.roles.by.user.attribute=cn
    principal.ldap.roles.by.user.search.base=ou=groups,dc=soc,dc=fr
    principal.ldap.roles.by.user.search.filter=(memberUid={0})
    principal.ldap.security.credentials?xxxxxx
    principal.ldap.security.principal=cn=admin,dc=soc,dc=fr
    principal.ldap.server=ldap://192.168.xxx.xxx:389
    principal.ldap.user.attribute=cn
    principal.ldap.user.search.base=ou=intern,ou=users,dc=soc,dc=fr
    principal.ldap.user.search.filter=(objectClass=inetOrgPerson)
    principal.ldap.users.by.role.attribute=memberUid
    principal.ldap.users.by.role.search.base=ou=groups,dc=soc,dc=fr
    principal.ldap.users.by.role.search.filter=(&(objectClass=posixGroup)(cn={0}))
    system.login.lowercase=true
    login-config.xml
     name="OpenKM">
       >
           code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required" >
              name="java.naming.provider.url">ldap://192.168.xxx.xxx:389
    > name="java.naming.security.authentication">simple> name="bindDN">cn=admin,dc=soc,dc=fr> name="bindCredential">******> name="baseCtxDN">ou=intern,ou=users,dc=soc,dc=fr> name="baseFilter">(uid={0})> name="rolesCtxDN">ou=groups,dc=soc,dc=fr> name="roleFilter">(memberUid={0})> name="roleAttributeID">cn> name="roleAttributeIsDN">false> name="roleRecursion">-1> name="searchScope">SUBTREE_SCOPE> name="allowEmptyPasswords">false> > > >

    中國IT實驗室


    http://itlab.idcquan.com/

    中國IT實驗室

    Jbpm3.0在JBoss上的安装、部署及迁移

    資料來源

    由于国内对JBPM的研究较少,我们在研究该工作流研究后特把本手册公布出来,希望对大家有所帮助,手册由陆义平整理主要包括如下几点:
       1.  如何在一个干净的JBoss服务器上安装Jbpm3.0
       2.  如何将原Jbpm3.0缺省的数据库从HyperSonic改为MySql
       3.  如何发布流程包到mysql数据库,
       4.  如何部署原Jbpm3.0自带的Web应用例子。

    1        安装之前的准备工作

    1.1           JBoss 4.0.2

    Jbpm3.0压缩包中预先配置好工作流引擎的JBoss应用服务器的版本为4.0.2,因此我们先安装好一个干净的JBoss 4.0.2(可从http://www.jboss.com/products/jbossas/downloads下载),假定我们安装在D:/dev/java/jboss-4.0.2(我们定义此目录为#{jboss.home},后同)JBoss自带了3种配置的服务器,我们可以在#{jboss.home}/server目录下面发现3个目录:minimal, default, all. 我们的jbmp server configuration将参考default server configuation模板而建立。

    1.2           Mysql

    在本手册中我们用到的Mysql版本是4.1.13。(可从http://www.mysql.com获得)

    1.3           jbpm3.0压缩包

    完整的jbpm3.0压缩包jbpm-starters-kit-with-eclipse-3.0.zip可从http://www.jboss.com/products/jbpm/downloads获得。

    2        新建jbpm配置

    2.1

    #{jboss.home}/server目录下新建一个目录jbpm,将default目录下所有文件和目录copyjbpm下。

    2.2

    删除jbpm/deploy目录下的以下目录和文件(去掉不必要的模块,加快jbpm启动和运行速度):
    /jboss-aop.deployer
    /jboss-ws4ee.sar
    /management
    bsh-deployer.xml
    hsqldb-ds.xml
    jboss-ha-local-jdbc.rar
    jboss-ha-xa-jdbc.rar
    monitoring-serve.xml
    properties-service.xml
    schedule-manager-service.xml
    scheduler-service.xml
    uuid-key-generator.sar

    2.3

    删除jbpm/deploy/jms目录下的以下文件:
    hqldb-jdbc2-server.xml
    hsqldb-jdbc-state-service.xml
    jbossmq-destinations-service.xml
    同时将下面两个文件copyjms目录下(右键复制后粘贴到jms目录下):

    3        创建jbpm数据库

    上面我们配置好了一个jbpm server configuration,下面我们将要为jbpm server configuration创建一个mysql数据库来存放jbpm系统表,同时将jboss下的jbpm server configuration所引用的数据源指向我们创建的mysql数据库。执行下列步骤前保证mysql已经启动。
          

    3.1           新建一个数据库

    打开mysql的命令行客户端,创建一个数据库名为jbpm3
    CREATE DATABASE jbpm3;
    USE jbpm3;

    3.2           创建jbpm系统表

    jbpm完整压缩包的jbpm-db/build/mysql/scripts目录下我们可以找到4sql脚本文件,执行其中的mysql.create.sql,这样我们就创建了jbpm所需要的系统表。

    3.3           创建Web例子用户

    创建web应用例子中所需要的4个用户
    INSERT INTO JBPM_ID_USER VALUES(1,'U','cookie monster','cookie.monster@sesamestreet.tv','crunchcrunch');
    INSERT INTO JBPM_ID_USER VALUES(2,'U','ernie','ernie@sesamestreet.tv','canthereyoubert,theresabananainmyear');
    INSERT INTO JBPM_ID_USER VALUES(3,'U','bert','bert@sesamestreet.tv','ernie,theresabananainyourear');
    INSERT INTO JBPM_ID_USER VALUES(4,'U','grover','grover@sesamestreet.tv','mayday mayday');

    3.4           deploy Mysql数据源

    下面我们将HyperSonic数据源替换成Mysql数据源
    首先将mysqljdbc驱动程序(文件名为mysql-connector-java-3.1.7-bin.jar,可以在jbpm3.0的完整压缩包的jbpm-db/mysql/lib目录下找到)copy#{jboss.home}/server/jbpm/lib目录下,
    然后将下面的文件copy#{jboss.hom}/server/jbpm/deploy目录下,请注意修改该xml文件中的数据库用户名和口令
    这样我们就将原来JBoss所指向的HyperSonic数据源替换成Mysql的数据源了。

    4        部署jbpm服务包

    #{jboss.home}/server/jbpm/deploy目录下新建jbpm.sar目录,将下面的sar文件(标准zip格式)展开在jbpm.sar目录下
    展开后的目录结构如下图所示

    5        Recompile&depploy jbpm相关文件

    下面我们将重新编译和发布jbpm例程相关包,主要涉及到以下几个模块:
    l         Websale流程包(websale.par)。
    l         Websale应用例子(jbpm.war)。

    5.1           新建一个java project

    5.1.1 eclipse中新建一个java project,命名为myjbpm
    5.1.2 将下列两个目录copysrc目录下
    位于jbpm压缩包/jbpm/src/java.webapp下的org目录
    位于jbpm压缩包/jbpm/src/java.examples/org/jbpm下的websale目录(请删除WebsaleTest.java文件!
    5.1.3 myjbpm下新建一个目录lib,将下列jar文件copylib目录下:
    antlr-2.7.5H3.jar
    asm.jar
    bsh-2.0b2.jar
    cglib-2.1.jar
    commons-collections-2.1.1.jar
    commons-logging.jar
    dom4j.jar
    ehcache-1.1.jar
    hibernate3.jar
    javax.servlet.jar
    javax.servlet.jsp.jar
    jbpm-3.0.jar
    jbpm-identity-3.0.jar
    jta.jar
    mysql-connector-java-3.1.7-bin.jar
    lib目录下新建一个目录jsf,将下列jar文件copyjsf目录下:
    commons-beanutils-1.6.1.jar
    commons-digester-1.5.jar
    jstl-1.1.0.jar
    myfaces-1.0.9.jar
    myfaces-impl-1.0.9.jar
    myfaces-jsf-api-1.0.9.jar
    standard-1.1.2.jar

    5.1.4 myjbpm下新建一个目录resources,将下列目录copy到其下
    位于jbpm压缩包/jbpm/src/resources下的jbpm.war目录
    位于jbpm压缩包/jbpm/src/process.examples下的websale.par目录

    5.1.5 copy以下文件到myjbpm目录下
    请注意更改build.xmldeploy.dir的属性以及hibernate.cfg.xml中数据库的用户名和口令,打开build.xml文件并执行deploy.processdeploy.war两个目标对象。
    执行完成后,我们就将websale流程包和webapp应用例程部署完毕了

    6        运行jbpm server configuration

    在命令行模式切换到#{jboss.home}/bin目录下,运行下列命令
    run –c jbpm
    jboss启动成功后即可按照原来的模式运行web例程。

    7        调试web应用例程

    如果想debug刚才部署的web应用例程,可以按照以下步骤操作:

    7.1 安装JBoss-IDE plug-in for Eclipse

    Jboss-IDE plug-in可以从http://www.jboss.com/products/jbosside/downloads下载


    7.2 配置project debug环境