貝貝爸爸的程序人生

          關(guān)注Seam、BPM
          posts - 23, comments - 10, trackbacks - 0, articles - 32
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          2011年5月31日

          今天興致來了,說要在家搞搞平臺(tái)的東西,nnd,竟然遇到了莫名其妙的mysql亂碼問題,其實(shí)不是mysql的問題,是jdbc數(shù)據(jù)源的鏈接沒有指明字符集的問題,記下來備用:<datasource jta="false" jndi-name="java:jboss/datasources/MySqlDS" pool-name="bdp" enabled="true" use-java-context="true" use-ccm="true">
                              <connection-url>jdbc:mysql://localhost:3306/bdp-dev?useUnicode=true&amp;characterEncoding=utf8</connection-url>
                              <driver>com.mysql</driver>
                              <pool>
                                  <min-pool-size>10</min-pool-size>
                                  <max-pool-size>100</max-pool-size>
                                  <prefill>true</prefill>
                                  <use-strict-min>false</use-strict-min>
                                  <flush-strategy>FailingConnectionOnly</flush-strategy>
                              </pool>
                              <security>
                                  <user-name>root</user-name>
                              </security>
                              <statement>
                                  <prepared-statement-cache-size>32</prepared-statement-cache-size>
                                  <share-prepared-statements>true</share-prepared-statements>
                              </statement>
                          </datasource>

          posted @ 2012-05-19 01:40 貝貝爸爸 閱讀(779) | 評(píng)論 (0)編輯 收藏

          今天在處理zTree的時(shí)候,無意間遇到一個(gè)很好的插件,可以將array對(duì)象轉(zhuǎn)換為json對(duì)象,真的很好用哦,呵呵。
          var thing = {plugin: 'jquery-json', version: 2.3};

          var encoded = $.toJSON( thing );
          // '{"plugin":"jquery-json","version":2.3}'
          var name = $.evalJSON( encoded ).plugin;
          // "jquery-json"
          var version = $.evalJSON(encoded).version;
          // 2.3
          像上面那樣用就行了,很容易進(jìn)行請(qǐng)求間的參數(shù)傳遞。
          項(xiàng)目地址為:http://code.google.com/p/jquery-json/

          posted @ 2012-05-10 13:45 貝貝爸爸 閱讀(1086) | 評(píng)論 (1)編輯 收藏

           cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys

          posted @ 2012-04-26 14:45 貝貝爸爸 閱讀(398) | 評(píng)論 (0)編輯 收藏

          nnd,今天搞了快2個(gè)小時(shí),總是無法解決ldap支持的其他屬性返回問題,因?yàn)橹芭渲玫氖?.3.5版本,現(xiàn)在最新的版本是3.4.11,原來的配置竟然無法使用了,原來是因?yàn)樵黾臃?wù):
          <bean id="serviceRegistryDao" class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl">
          導(dǎo)致無法返回principal的其他屬性到客戶端,其實(shí)象這樣配置即可:<bean id="attributeRepository"
            class="org.jasig.services.persondir.support.ldap.LdapPersonAttributeDao">
            <property name="contextSource" ref="contextSource" />
            <property name="baseDN" value="ou=users,${ldap.basePath}" />
            <property name="requireAllQueryAttributes" value="true" />
            <!--
            Attribute mapping beetween principal (key) and LDAP (value) names
            used to perform the LDAP search.  By default, multiple search criteria
            are ANDed together.  Set the queryType property to change to OR.
            
          -->
            <property name="queryAttributeMapping">
              <map>
                <entry key="username" value="uid" />
              </map>
            </property>
           
            <property name="resultAttributeMapping">
              <map>
              <!-- Mapping beetween LDAP entry attributes (key) and Principal's (value) -->
              <entry key="name" value="userName"/>
              <entry key="uid" value="userId"/>
              </map>
            </property>
          </bean>

              <bean id="serviceRegistryDao" class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl">
                  <property name="registeredServices">
                      <list>
                          <bean class="org.jasig.cas.services.RegisteredServiceImpl">
                              <property name="id" value="0" />
                              <property name="name" value="HTTP" />
                              <property name="description" value="Only Allows HTTP Urls" />
                              <property name="serviceId" value="http://**" />
                              <property name="evaluationOrder" value="10000001" />
                              <property name="ignoreAttributes" value="true" />
                          </bean>
                                          ………………
                                  </list>
                          </property>
                  </bean>
          如上所示,其中注冊(cè)的服務(wù)registeredServices
          默認(rèn)是不允許返回其他屬性到客戶端的!!!!!,真的是很坑爹啊,不過,配置一下ignoreAttributes即可,也可以指定allowedAttributes
          如下:
          <property name="allowedAttributes">
              <list>
                      <value><!-- your attribute key --></value>
              </list>
          </property>

          posted @ 2012-04-25 23:12 貝貝爸爸 閱讀(1341) | 評(píng)論 (0)編輯 收藏


          cat /boot/grub2/grub.cfg |grep Fedora
          grub2-set-default "Fedora Linux, with Linux 3.1.0-5.fc16.i686"
          grub2-editenv list
          grub2-mkconfig -o /boot/grub2/grub.cfg

          posted @ 2012-04-20 08:50 貝貝爸爸 閱讀(379) | 評(píng)論 (0)編輯 收藏

          #
          contrib / completion / git-completion.bash

          #
           Source the git bash completion file
          if [ -f ~/.git-completion.bash ]; then
              source ~/.git-completion.bash
              GIT_PS1_SHOWDIRTYSTATE=true
              PS1='[\u@\h:\W $(__git_ps1 "(%s)")]$ '
          fi

          posted @ 2012-04-04 09:26 貝貝爸爸 閱讀(852) | 評(píng)論 (0)編輯 收藏

          http://www.secondpersonplural.ca/jqgriddocs/index.htm

          posted @ 2012-03-29 05:05 貝貝爸爸 閱讀(200) | 評(píng)論 (0)編輯 收藏

          http://junv.sinaapp.com/1955.html

          posted @ 2012-03-21 17:22 貝貝爸爸 閱讀(284) | 評(píng)論 (0)編輯 收藏

          http://www.navicat.com/en/download/download.html
          NAVJ-W56S-3YUU-MVHV



          posted @ 2012-03-19 17:25 貝貝爸爸 閱讀(328) | 評(píng)論 (0)編輯 收藏

          今天調(diào)試了一天,所有的步驟都正確,可最后到了web下載,卻總是404錯(cuò)誤,好心zzq網(wǎng)友幫著一起定位和解決問題,可依然沒有找到原因,偶爾的一個(gè)google搜索,發(fā)現(xiàn)是因?yàn)闆]有sudo啟動(dòng)nginx。。。。
          真tmd扯淡了。

          posted @ 2012-03-18 20:13 貝貝爸爸 閱讀(364) | 評(píng)論 (0)編輯 收藏

          https://gist.github.com/2066974

          posted @ 2012-03-18 08:26 貝貝爸爸 閱讀(265) | 評(píng)論 (0)編輯 收藏

          系統(tǒng)環(huán)境
          CentOS6.2
          #step 1. download libevent https://github.com/downloads/libevent/libevent/libevent-2.0.17-stable.tar.gz
          $ ./configure
          $ make
          $ make verify   # (optional)
          $ sudo make install
          $ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5
          #step 2. download FastDFS source package and unpack it,
          $ ./make.sh
          $ ./make.sh install
          #step 3. edit/modify the config file of tracker and storage
          #step 3.1.
          $ vim /etc/fdfs/tracker.conf
          ## base_path=??
          ## reserved_storage_space = 1GB
          #step 3.2
          $ vim /etc/fdfs/storage.conf
          ## base_path=/home/yuan/fastdfs/storage
          ## path(disk or mount point) count, default value is 1
          ## store_path_count=1
          ## store_path#, based 0, if store_path0 not exists, it's value is base_path
          ## the paths must be exist
          ## store_path0=/home/yuan/fastdfs0
          ## tracker_server=host:port
          #step 4 cp the start shell into /etc/init.d
          $ cd FastDFS
          $ cp init.d/fdfs_trackerd /etc/init.d
          $ cp init.d/fdfs_storaged /etc/init.d
          #step 5 mkdir the trackerd base path and storaged base path
          $ mkdir /home/yuan/fastdfs
          $ mkdir /home/yuan/fastdfs0
          #step 6 start trackerd service
          $/sbin/service fdfs_trackerd start
          ###$/sbin/service fdfs_trackerd status
          ###$fdfs_trackerd (pid 11441) is running...
          #step 7 start storaged service
          $/sbin/service fdfs_storaged start
          ###$/sbin/service fdfs_storaged status
          ###$fdfs_storaged (pid 11553) is running...
          #step 8. run test program
          #step 8.1. vim /etc/fdfs/client.conf
          ###base_path=/home/yuan/fastdfs
          ###tracker_server=192.168.0.197:22122
          #step 8.2 run test program
          $/usr/local/bin/fdfs_test /etc/fdfs/client.conf upload /usr/include/stdlib.h
          #step 9 monitor fdfs
          $/usr/local/bin/fdfs_monitor /etc/fdfs/client.conf

          posted @ 2012-03-17 16:38 貝貝爸爸 閱讀(772) | 評(píng)論 (0)編輯 收藏

          可能后面會(huì)遇到同一臺(tái)服務(wù)器,安裝多個(gè)jboss實(shí)例的問題,那顯然的問題可能就是端口沖突問題,怎么辦?
          1、修改各個(gè)配置文件的端口配置
          2、最簡(jiǎn)單的方法是,啟動(dòng)是指明端口綁定步長(zhǎng),例如:-Djboss.socket.binding.port-offset=100

          posted @ 2012-03-04 20:40 貝貝爸爸 閱讀(469) | 評(píng)論 (0)編輯 收藏

          mvn deploy:deploy-file -Dfile=target/web-3.1.0-SNAPSHOT-api.jar -Durl=http://repo.yongtai.com.cn/nexus/content/repositories/snapshots/ -DrepositoryId=nexus-snapshots -DpomFile=pom.xml -Dpackaging=jar -Dclassifier=api

          posted @ 2012-02-22 12:02 貝貝爸爸 閱讀(234) | 評(píng)論 (0)編輯 收藏

          今天又在centos下折騰呢,呵呵,不過這次的環(huán)境是mac下安裝centos的虛擬機(jī),mac環(huán)境和linux環(huán)境還是很大區(qū)別,至少無法安裝我想要的FastDFS環(huán)境,著實(shí)有點(diǎn)無法接受,所以只能安裝虛擬機(jī)了。
          ssh centos后,主要安裝遇到了如下問題:
          1、gcc-c++沒有安裝,會(huì)導(dǎo)致安裝pcre的時(shí)候,報(bào)c++編譯器沒找到,直接安裝:yum install gcc-c++即可
          2、zlib包無法找到,安裝:yum install zlib-devel即可
          3、error while loading shared libraries: libpcre.so.1:[root@bogon nginx-1.0.12]# ldd $(which /usr/local/nginx/sbin/nginx)
              linux-vdso.so.1 =>  (0x00007fff7e9db000)
              libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe4629d0000)
              libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fe462799000)
              libpcre.so.1 => not found//確實(shí)沒找到
              libz.so.1 => /lib64/libz.so.1 (0x00007fe462582000)
              libc.so.6 => /lib64/libc.so.6 (0x00007fe4621e1000)
              /lib64/ld-linux-x86-64.so.2 (0x00007fe462bfa000)
              libfreebl3.so => /lib64/libfreebl3.so (0x00007fe461f7e000)
              libdl.so.2 => /lib64/libdl.so.2 (0x00007fe461d7a000)
          [root@bogon nginx-1.0.12]# cd /lib64/

          [root@bogon lib64]# ln -s libpcre.so.0.0.1 libpcre.so.1
          [root@bogon lib64]# ldd $(which /usr/local/nginx/sbin/nginx)
              linux-vdso.so.1 =>  (0x00007fff4d7ff000)
              libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb06f13e000)
              libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fb06ef07000)
              libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fb06ecda000)
              libz.so.1 => /lib64/libz.so.1 (0x00007fb06eac4000)
              libc.so.6 => /lib64/libc.so.6 (0x00007fb06e723000)
              /lib64/ld-linux-x86-64.so.2 (0x00007fb06f368000)
              libfreebl3.so => /lib64/libfreebl3.so (0x00007fb06e4c0000)
              libdl.so.2 => /lib64/libdl.so.2 (0x00007fb06e2bc000)

          posted @ 2012-02-19 07:49 貝貝爸爸 閱讀(2112) | 評(píng)論 (0)編輯 收藏

          這篇文章獻(xiàn)給天下兒童的父母。
               老農(nóng)民的智慧和知識(shí)分子的尷尬:
              很多沒有上過學(xué)的老農(nóng)民培養(yǎng)出了優(yōu)秀的孩子,不少有知識(shí)、高學(xué)歷的城里人卻把孩子管出諸多毛病,甚至培養(yǎng)出問題孩子,為什么?老農(nóng)民沒知識(shí)但有智慧,城里人有知識(shí)但沒智慧。(知識(shí)不等于智慧。)
              智慧的老農(nóng)民三句話就培養(yǎng)出了好孩子:
              第一句話:“孩子,爸媽沒本事,你要靠自己了。”不包辦,把責(zé)任還給孩子,讓孩子擁有了責(zé)任心。
              第二句話:“孩子,做事先做人,一定不能做傷害別人的事情。”講德行,告訴孩子做人的標(biāo)準(zhǔn)。
              第三句話:“孩子,撒開手闖吧,實(shí)在不行,回家來還有口飯吃。”無私的愛,無盡的愛!
              看看一些城里人怎么把孩子教育出問題的:
              第一句話:“寶貝,你 好好學(xué)習(xí)就行了,其他的事情爸爸媽媽來辦!”剝奪了孩子負(fù)責(zé)任的權(quán)利,培養(yǎng)出了沒有責(zé)任心的孩子。
              第二句話:“寶貝,出去不能吃虧,別人打你一定要還手!”基本的做人準(zhǔn)則都沒有教對(duì),可能培養(yǎng)出“缺德”的孩子。
              第三句話:“我告訴你,你要是再不好好學(xué)習(xí),長(zhǎng)大沒飯吃別來找我!”有條件的愛,根本不是真愛。
              只要擁有智慧,每一位家長(zhǎng)都能把孩子培養(yǎng)成才,而智慧與知識(shí)和學(xué)歷并不相關(guān)!

          posted @ 2011-08-06 22:47 貝貝爸爸 閱讀(279) | 評(píng)論 (0)編輯 收藏

          原文A successful Git branching model
          In this post I present the development model that I’ve introduced for all of my projects (both at work and private) about a year ago, and which has turned out to be very successful. I’ve been meaning to write about it for a while now, but I’ve never really found the time to do so thoroughly, until now. I won’t talk about any of the projects’ details, merely about the branching strategy and release management.
          這篇文章,將介紹所有一年前我工作中或者個(gè)人項(xiàng)目的開發(fā)模型,這個(gè)模型已經(jīng)被證明是十分有用的(successfull)。我老早就想寫一些關(guān)于這個(gè)模型的文章,但是總是抽不出時(shí)間。在這篇文章中,我將不會(huì)介紹項(xiàng)目的詳細(xì)情況,僅僅對(duì)分支的策略和發(fā)布管理作一個(gè)介紹。

          It focuses around Git as the tool for the versioning of all of our source code.
          我們將圍繞這使用Git作為所有項(xiàng)目源碼的版本控制工具。
          • 為何選擇GIT?
          For a thorough discussion on the pros and cons of Git compared to centralized source code control systems, see the web. There are plenty of flame wars going on there. As a developer, I prefer Git above all other tools around today. Git really changed the way developers think of merging and branching. From the classic CVS/Subversion world I came from, merging/branching has always been considered a bit scary (“beware of merge conflicts, they bite you!”) and something you only do every once in a while.
          關(guān)于Git作為集中的源碼控制系統(tǒng)的優(yōu)缺點(diǎn),可以查看一下鏈接,關(guān)于這個(gè)話題,有激烈的爭(zhēng)論。作為一個(gè)開發(fā)者,與其他版本控制工具相比,我更喜歡Git,Git真正的改變了開發(fā)者關(guān)于合并和分支的思考(think)。我曾經(jīng)也用過CVS、svn,分支和合并,真的很讓人頭疼(合并時(shí)產(chǎn)生的沖突),因此,有時(shí)你每次只能做一會(huì)工作(個(gè)人理解:因?yàn)閟vn這種版本控制庫(kù)只有一個(gè)服務(wù)倉(cāng)庫(kù),涉及公共資源,只能鎖定編輯)

          But with Git, these actions are extremely cheap and simple, and they are considered one of the core parts of your daily workflow, really. For example, in CVS/Subversion books, branching and merging is first discussed in the later chapters (for advanced users), while in every Git book, it’s already covered in chapter 3 (basics).
          但是對(duì)于Git來說,做這樣的工作(分支、合并),太簡(jiǎn)單!它真的可以作為你日常工作流程中最核心的部分。例如,在有關(guān)CVS/svn的書籍中,分支和合并要放到最后一章才會(huì)闡述(針對(duì)高級(jí)用戶),然后在Git相關(guān)的書籍中,首先就先跟你闡述分支和合并(第3章)。

          Enough about the tools, let’s head onto the development model. The model that I’m going to present here is essentially no more than a set of procedures that every team member has to follow in order to come to a managed software development process.
          關(guān)于這個(gè)工具的介紹,我們不再贅述,現(xiàn)在我們回到開發(fā)模式的話題上來。這個(gè)模型,基本上和每個(gè)開發(fā)團(tuán)隊(duì)管理軟件開發(fā)流程是類似的。
          • 分布而集中
          The repository setup that we use and that works well with this branching model, is that with a central “truth” repo. Note that this repo is only considered to be the central one (since Git is a DVCS, there is no such thing as a central repo at a technical level). We will refer to this repo as origin, since this name is familiar to all Git users.
          我們使用這個(gè)分支模型很好工作的倉(cāng)庫(kù),是真正意義上的中央倉(cāng)庫(kù)。這個(gè)倉(cāng)庫(kù)是唯一的中央倉(cāng)庫(kù)(因?yàn)镚it本身就是分布式版本控制系統(tǒng)DVCS,所以這沒有技術(shù)問題)。我們稱這樣一個(gè)中央倉(cāng)庫(kù)為origin,所有Git用戶都知道origin這個(gè)名稱。
          Each developer pulls and pushes to origin. But besides the centralized push-pull relationships, each developer may also pull changes from other peers to form sub teams. For example, this might be useful to work together with two or more developers on a big new feature, before pushing the work in progress to origin prematurely. In the figure above, there are subteams of Alice and Bob, Alice and David, and Clair and David.
          每個(gè)開發(fā)者,都可以從origin獲得(pull)資源,同時(shí)也能推送(push)到origin。除此之外,每個(gè)開發(fā)者可以從其他開發(fā)者那里獲得資源,以此組建自己的一個(gè)小組。例如,當(dāng)我們要開發(fā)一個(gè)大的新功能時(shí),我們將和其他人一起協(xié)作,在提交到中央倉(cāng)庫(kù)origin之前,我們需要小組內(nèi)部能夠互相協(xié)作,這將是十分有用的。上圖中,Alice和Bob是一個(gè)小組,同時(shí)Alice和David是一個(gè)小組,Clair和David又是一個(gè)小組。
          Technically, this means nothing more than that Alice has defined a Git remote, named bob, pointing to Bob’s repository, and vice versa.
          從技術(shù)實(shí)現(xiàn)上講,這無非是在Alice的項(xiàng)目里,定義了一個(gè)指向Bot的遠(yuǎn)程鏈接而已(git remote add bob git@bobserver bob.git),反之也是一樣,如此簡(jiǎn)單!!
          • 主要的分支
          At the core, the development model is greatly inspired by existing models out there. The central repo holds two main branches with an infinite lifetime:
          中央倉(cāng)庫(kù)有2個(gè)主要的分支,這些分支將一直存在:
            • master
            • develop
          The master branch at origin should be familiar to every Git user. Parallel to the master branch, another branch exists called develop.
          中央倉(cāng)庫(kù)的master分支已經(jīng)為所有Git用戶熟知,與master分支并行的另外一個(gè)分支,我們稱之為develop。
          We consider origin/master to be the main branch where the source code of HEAD always reflects a production-ready state.
          我們稱origin/master為主要分支,因?yàn)榉种У腍EAD指向的源碼總是反映了一個(gè)可以發(fā)布的產(chǎn)品狀態(tài)(production-ready)。

          We consider origin/develop to be the main branch where the source code of HEAD always reflects a state with the latest delivered development changes for the next release. Some would call this the “integration branch”. This is where any automatic nightly builds are built from.
          我們稱origin/develop為主要分支,因?yàn)榉种У腍EAD指向的源碼,總是反映了下次發(fā)布前最新提交的開發(fā)代碼。有些人稱之為“集成分支”(integration barnch),因?yàn)槲覀兊拿客碜詣?dòng)構(gòu)建都是基于此分支進(jìn)行的。(例如hudson,可以做自動(dòng)構(gòu)建工作)。
          When the source code in the develop branch reaches a stable point and is ready to be released, all of the changes should be merged back into master somehow and then tagged with a release number. How this is done in detail will be discussed further on.
          當(dāng)develop分支的源碼穩(wěn)定并且準(zhǔn)備發(fā)布,所有的改變應(yīng)該合并(merge)到master分支,同時(shí)做一個(gè)發(fā)布版本的標(biāo)簽(tag),我們將在后面討論這個(gè)細(xì)節(jié)。
          Therefore, each time when changes are merged back into master, this is a new production release by definition. We tend to be very strict at this, so that theoretically, we could use a Git hook script to automatically build and roll-out our software to our production servers everytime there was a commit on master.
          因此,當(dāng)每一次將所有更改合并回master時(shí),將會(huì)產(chǎn)生一個(gè)新的可以發(fā)布的產(chǎn)品狀態(tài)。我們往往對(duì)于這個(gè)操作的控制是比較嚴(yán)格的,每當(dāng)往master分支提交時(shí),我們可以使用Git的hook來自動(dòng)構(gòu)建和轉(zhuǎn)出到產(chǎn)品服務(wù)器上。
          • 輔助分支

          posted @ 2011-07-06 12:34 貝貝爸爸 閱讀(539) | 評(píng)論 (0)編輯 收藏

          首先,需要配置mail-service.xml
          <?xml version="1.0" encoding="UTF-8"?>
          <!-- $Id: mail-service.xml 62350 2007-04-15 16:50:12Z dimitris@jboss.org $ -->
          <server>

            
          <!-- ==================================================================== -->
            
          <!-- Mail Connection Factory                                              -->
            
          <!-- ==================================================================== -->

            
          <mbean code="org.jboss.mail.MailService"
                   name
          ="jboss:service=Mail">
              
          <attribute name="JNDIName">java:/Mail</attribute>
              
          <attribute name="User">bpm</attribute>
              
          <attribute name="Password">*****</attribute>
              
          <attribute name="Configuration">
                
          <!-- A test configuration -->
                
          <configuration>
                  
          <!-- Change to your mail server prototocol -->
                  
          <property name="mail.store.protocol" value="pop3"/>
                  
          <property name="mail.transport.protocol" value="smtp"/>

                  
          <!-- Change to the user who will receive mail  -->
                  
          <property name="mail.user" value="bpm"/>
                  
          <property name="mail.smtp.auth" value="true"/>

                  
          <!-- Change to the mail server  -->
                  
          <property name="mail.pop3.host" value="**pop3服務(wù)器地址**"/>

                  
          <!-- Change to the SMTP gateway server -->
                  
          <property name="mail.smtp.host" value="***smtp服務(wù)器地址***"/>
                  
                  
          <!-- The mail server port -->
                  
          <property name="mail.smtp.port" value="25"/>
                  
                  
          <!-- Change to the address mail will be from  -->
                  
          <property name="mail.from" value="bpm@eontime.com.cn"/>

                  
          <!-- Enable debugging output from the javamail classes -->
                  
          <property name="mail.debug" value="false"/>
                
          </configuration>
              
          </attribute>
              
          <depends>jboss:service=Naming</depends>
            
          </mbean>

          </server>

          其次新建一個(gè)jsp頁面mail2.jsp,作為測(cè)試
          <%@page contentType="text/html"%>
          <%@ page import="javax.mail.*,javax.mail.internet.*, javax.activation.*, javax.naming.InitialContext" %> 
          <h3>Test JbsssMail DB</h3> 
          <%
          String toAddress
          =request.getParameter("MailTo");
          String fromAddress
          =request.getParameter("MailFrom");
          String subject
          =request.getParameter("MailSubject");
          String content
          =request.getParameter("MailContent");
          InitialContext ctx 
          = new InitialContext(); 
          Session sessions 
          = (Session) ctx.lookup("java:/Mail");
          if(toAddress!=null &&!toAddress.equals("")){ 
          try{
           MimeMessage msg 
          = new MimeMessage(sessions);
           msg.setFrom(
          new InternetAddress(fromAddress));
           msg.setRecipients(javax.mail.Message.RecipientType.TO,toAddress);
           msg.setSubject(subject);
           msg.setSentDate(
          new java.util.Date());
           Multipart multipt 
          = new MimeMultipart();
           MimeBodyPart msgbody 
          = new MimeBodyPart();
           msgbody.setContent(content,
          "text/plain");
           multipt.addBodyPart(msgbody);
           msg.setContent(multipt);
           Transport.send(msg);
           System.out.println(
          "SendMail OK!");
          }
          catch(MessagingException e)
          {
           e.printStackTrace();
          }
          }
          %> 
          <HTML>
          <BODY BGCOLOR="white">
          <form METHOD="POST" ACTION="mail2.jsp">
           
          <table CELLSPACING="0" CELLPADDING="3" BORDER="1" WIDTH="474">
              
          <tr>
                
          <td width="150"><div align="left">From :</small></td>
                
          <td width="324"><input TYPE="TEXT" name="MailFrom" value=""></td>
              
          </tr>
              
          <tr>
                
          <td width="150"><div align="left">To :</small></td>
                
          <td width="324"><input TYPE="TEXT" name="MailTo" value=""></td>
              
          </tr>
              
          <tr>
                
          <td width="150"><div align="left">Subject :</small></td>
                
          <td width="324"><input TYPE="TEXT" name="MailSubject" value=""></td>
              
          </tr>
              
          <tr>
                
          <td width="150"><div align="left">Content :</small></td>
                
          <td width="324"><TEXTAREA cols=50 name="MailContent" rows=8></TEXTAREA></td>
              
          </tr>
              
          <tr>
                
          <td></td>
                
          <td colspan="2" width="474"><input TYPE="Submit"></td>
              
          </tr>
           
          </table>
          </form>
          </BODY>
          </HTML>

          posted @ 2011-06-25 22:44 貝貝爸爸 閱讀(472) | 評(píng)論 (0)編輯 收藏

          git的分支處理模型,真的很爽,但關(guān)于如何對(duì)git的分支進(jìn)行管理?最近有網(wǎng)友給我提到了git flow,呵呵,按照我的理解,應(yīng)該是git的一個(gè)最佳實(shí)踐吧,原文A successful Git branching model對(duì)git的分支模型作了闡述,以下我對(duì)該文章進(jìn)行自己的翻譯和理解,聊以日后學(xué)習(xí),首先先看一下下面這個(gè)圖:
          git flow將git的分支主要分為2類:主要分支和支持分支
          • 主要分支
            • master:永遠(yuǎn)處在產(chǎn)品可以發(fā)布(production ready)狀態(tài)
            • develop: 當(dāng)前最新的開發(fā)狀態(tài)
          • 支持分支
            • Feature branches: 開發(fā)新的功能,從develop分支出來,完成開發(fā)、測(cè)試后,merge回develop。
            • Release branches: 準(zhǔn)備發(fā)布版本的分支,該分支只修復(fù)bug,完成后,merge回develop和master。
            • Hotfix branches: 來不及等待下個(gè)版本的發(fā)布,但又要馬上修復(fù)bug的情況,從master分支出來,完成開發(fā)、測(cè)試后,merge回master和develop。

          posted @ 2011-05-31 09:44 貝貝爸爸 閱讀(683) | 評(píng)論 (1)編輯 收藏

          主站蜘蛛池模板: 丰镇市| 四川省| 潼南县| 怀柔区| 贡觉县| 漳平市| 古浪县| 瓦房店市| 且末县| 上虞市| 武义县| 六盘水市| 鄯善县| 介休市| 务川| 白玉县| 玉树县| 田东县| 宣城市| 阜新市| 汝阳县| 图们市| 鄂温| 临高县| 将乐县| 镇安县| 江华| 孟津县| 子洲县| 苏尼特右旗| 垦利县| 班戈县| 晋中市| 云梦县| 平凉市| 乌恰县| 读书| 义乌市| 贵溪市| 三门县| 龙海市|