首页  »   J2EE

j2ee技术累积

网友分享于:2013-09-07  浏览:0次
j2ee技术积累

索引

目录

  1. J2EE 技术积累
    1. JBoss4.x的数据源配置
    2. CVS服务器的搭建
    3. CVS的一些技巧

 

J2EE 技术积累

 

JBoss4.x的数据源配置

oracle数据源的配置记录,其他数据源类似,配置文件名稍有不同,比如mysql则为mysql-ds.xml,以下为oracle的配置记录:

  • 拷贝%JBOSS_HOME%\docs\examples\jca\oracle-ds.xml文件到对应domain下的deploy目录
  • 修改%JBOSS_HOME%\server\default\deploy\uuid-key-generator.sar\META-INF目录下的jboss-service.xml文件,将DefaultDS修改为实际配置的JNDI名称
  • 修改%JBOSS_HOME%\server\default\deploy\ejb-deployer.xml文件,将DefaultDS修改为实际配置的JNDI名称
  • 拷贝%ORALCE_HOME%\ora92\jdbc\lib目录下的ojdbc14.jar到%JBOSS_HOME%\server\default\lib目录

假设上面配置的JNDI名称为:pandoraDS,在应用中通过spring的配置方式来访问数据源的,如下:

切换行号显示
   1 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
   2     <property name="jndiName" value="java:/pandoraDS"/>
   3 </bean>

 

CVS服务器的搭建

在Linux9以及Linux ES3上直接内置了cvs,以下是在linux9上记录的cvs服务器端安装步骤:

  • 查看是否安装cvs

 

#rpm -qa | grep cvs

注:一般安装在/usr/bin/cvs,如果未安装到www.cvshome.org下载一个最新的rpm安装即可

  • 建立cvs用户组,便于管理cvs用户

 

#groupadd cvs 
  • 建立cvs组的cvsroot用户和所属的目录

 

#useradd -g cvs -G cvs -d /home/cvsroot cvsroot 
  • 为cvsroot用户添加密码

 

#passwd cvsroot 
  • 改变/home/cvsroot的目录属性

 

#chmod 775 /home/cvsroot 
  • 初始化cvs源代码库,此操作生成目录/home/cvsroot/CVSROOT,其下为一些初始化文件

 

#cvs -d /home/cvsroot init 
  • 创建可以登陆cvs服务的用户及密码,需要创建文件passwd

 

#vi /home/cvsroot/CVSROOT/passwd
weiqiong:xxxxxx:cvsroot
chenxu:xxxxxx:cvsroot

此文件的意思是weiqiong和chenxu两个用户可以登陆cvs服务器,登陆后其权限为用户cvsroot的权限 注:cvs用户和服务器用户是可以不一样的

  • xxxxxx为密码,由以下文件生成:

 

#vi /home/cvsroot/passwdgen.pl

 

#!/usr/bin/perl
srand (time());
my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt ($plaintext, $salt);
print "${crypttext}\n"; 

将文件的属性修改为可以执行: chmod 755 passwdgen.pl

  • 如果需要密码为:test,则敲入:

 

#./passwdgen.pl "test"

回车即可得到加密密码,用其替换passwd文件中的xxxxxx

  • 加入cvs服务(如果缺省有cvs服务,就可以不用加)

 

#vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service 
  • 使用的是xinetd方式,所以在xinetd.d目录下添加需要启动的服务:

 

#cd /etc/xinetd.d
#vi cvspserver

 

service cvspserver
{
  disable = no
  flags = REUSE
  socket_type = stream
  wait = no
  user = root
  server = /usr/bin/cvs
  server_args = -f --allow-root=/home/cvsroot pserver
  log_on_failure += USERID
}

注:如果有多个repository的话,按照下面的方式修改: server_args = -f --allow-root=/home/cvsroot --allow-root=/home/ncrroot pserver 然后添加对应的用户ncrroot,让该用户的根是/home/ncrroot passwd的最后为新建的用户名ncrroot

  • 重新启动xinetd:

 

#/etc/rc.d/init.d/xinetd restart 
  • 检查cvspserver服务是否已经启动

 

#netstat -l | grep cvspserver
tcp 0 0 *:cvspserver *:* LISTEN 
  • 测试:

 

#cvs -d :pserver:[email protected]:/home/cvsroot login

敲入命令回车后提示输入xiajx的密码,你按照自己设置的密码输入 如果没有什么错误信息出现就是成功了(我的机器IP地址是192.168.100.92,也可以用localhost).

PS:如果是迁移原有cvs的repository的话,只需要将原有的repository整个拷贝到/home/cvsroot中即可.

 

CVS的一些技巧

CVS会对它内部的关键字自动更新,如$date$放在文件中每当commit时它会自动记录日期, 加入这些关键字再我们的文档或代码里就可以自动记录相关信息,关键字如下:

  • $Id$:关键字
  • $Log$:你所提供的修改日志信息。
  • $Author$:存入该版本的作者。
  • $Locker$:该版本的加锁者
  • $State$:该版本的状态 Exp(试验版), Stabe(稳定版), Rel(发行版).缺省是Exp
  • $Date$:该版本存入的时间,使用UTC时间格式。
  • $Revision$:该版本的版本号
  • $RCSfile$:RCS文件名
  • $Source$:RCS全路径名
  • $Name$:取回该版本的符号名
  • $Header$:相当于$ Source $$ Revision$$Date$$Author $$State$$Locker$的组合

 

相关解决方案

最新解决方案