svn的使用
课程回顾:SSH三大框架整合
1. 回顾SSH开发需要的jar和配置文件
* Struts2框架
* web.xml和struts.xml
* Hibernate框架
* hibernate.cfg.xml
* Customer.hbm.xml
* Spring框架
* applicationContext.xml
* log4j.properties
* Spring框架整合JavaWEB
* 在web.xml配置监听器
2. Spring框架整合Struts2框架
* Action类由Struts2创建(按名称自动装配)
* Action类交给Spring创建(推荐的方式)
* strtus.xml的Action编写ID值
* 配置成多例的(不能忘记)
* 手动注入service
3. Spring框架整合Hibernate框架
* 带有hibernate.cfg.xml配置文件
* 需要使用LocalSessionFactoryBean对象来加载hibernate.cfg.xml配置文件,生成SessionFactory对象。
* 不带有hibernate.cfg.xml配置文件(推荐使用)
* 使用LocalSessionFactoryBean对象来加载
4. HibernateTemplate模板类的简单的使用
* Spring框架提供HibernateTemplate类,方便开发
* 以后再编写Dao层,都可以继承HibernateDaoSupport类(父类:提供HibernateTemplate,如果不想注入HibernateTemplate,可以注入SessionFactory)
5. 解决延迟加载的问题
* 产生了2个问题(第一个问题是jar冲突的问题,第二个问题no session的异常)
* 解决方案
* 在web.xml中配置过滤器OpenSessionInViewFilter
* 做SSH框架的整合的时候,直接拷贝web.xml就OK
今天课程内容
1. svn版本控制软件的安装和使用
SVN的概述和安装
技术分析之svn的概述
1. svn的概述
* SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。
* 互联网上很多版本控制服务已从CVS迁移到Subversion
* 说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
* 解决团队开发中的代码管理的问题
2. 如果没有svn,一般会遇到的问题
* 代码管理混乱
* 备份多个版本,占用磁盘空间大
* 解决代码冲突困难
* 容易引发BUG
* 难于追溯问题代码的修改人和修改时间
* 难于恢复至以前正确版本
* 无法进行权限控制
* 项目版本发布困难
* 使用SVN工具,就可以管理上述的这一类问题!!
3. 简单的术语
* 仓库
* 提交
* 检出/更新
4. 常用的版本的控制工具
* VSS、CVS、SVN、GIT
技术分析之svn的体系结构
1. 体系结构如图(看SVN的使用手册的图)
* SVN的仓库
* DB -- 使用数据库作为SVN的仓库
* FSFS -- 使用系统文件方式作为SVN的仓库
* SVN仓库的访问(SVN的服务器)
* 整合Apache形式:http协议访问仓库
* svnserve的方式:使用命令开启SVN的服务,使用SVN的协议访问
* SVN的客户端
* 命令行访问
* 图形化界面
技术分析之svn的安装
1. 双击Setup-Subversion-1.6.5.msi文件,注意自己的安装路径。点击next即可!!
* 安装完成后,打开DOS窗口,输入svnadmin --version 回车,查看是否安装成功!!
* 如果发现安装不成功,拷贝C:\Program Files (x86)\Subversion\bin路径,到环境变量的path配置一下就可以了!!
2. 可以了解一下svn安装后的目录结构
* bin -- 可执行的二进制文件
* iconv -- 字符集编码的文件
* licenses -- 许可证协议
* share -- 本地语言转换
技术分析之创建SVN的仓库(必须要先创建仓库,才能启动svn服务)
1. SVN已经安装完成了,下面需要创建SVN的仓库
* 在某一个盘下创建文件夹,随意创建。例如:在C盘下创建Repositories文件,一个仓库可以存放多个项目,在Repositories文件夹中再创建多个子文件夹。代表不同的项目
2. 可以使用命令的方式或者图形化界面的方式来创建
* 命令的方式:svnadmin create c:\Repositories\crm
3. 仓库创建好后,有如下的一些目录结构
* conf -- 配置文件(重点的配置文件)
* svnserve.conf -- SVN的配置文件
* passwd -- 用户名和密码的文件
* authz -- 权限认证的文件
* db -- 版本数据存储目录
* hooks -- 存放版本库勾子目录
* locks -- 存储库锁目录,用来跟踪库的访问者
4. 启动仓库
1. 启动仓库分成两种主要的形式
* 单仓库启动(只启动其中的一个仓库)
* 多仓库启动(启动所有的仓库)
2. 启动仓库的方式有三种
* 命令行启动
* 单仓库启动:
* svnserve -d -r C:\Repositories\crm
* 多仓库启动:
* svnserve -d -r C:\Repositories
* 使用批处理文件的方式启动,先创建一个批处理的文件,在该文件中复制如下命令
* 单仓库启动:
* svnserve -d -r C:\Repositories\crm
* 多仓库启动:
* svnserve -d -r C:\Repositories
* 在系统上注册服务的方式,以后只要电脑一开机就自动启动了,注意:以下命令不要复制错误了!!
* 命令:sc create SVN-Service binpath= "C:\Program Files (x86)\Subversion\bin\svnserve.exe --service -r C:\Repositories" displayname= "SVN-Service" start= auto depend= Tcpip
* 注意修改的地方1:C:\Program Files (x86)\Subversion\bin是自己的安装路径
* 注意修改的地方2:C:\Repositories创建的路径(多仓库启动的方式)
* 系统提示权限不足。使用管理员权限运行dos窗口
3. 总结:采用服务的方式启动仓库和如果删除服务
* 命令:sc create SVN-Service binpath= "C:\Program Files (x86)\Subversion\bin\svnserve.exe --service -r C:\Repositories" displayname= "SVN-Service" start= auto depend= Tcpip
* 如果想要删除服务:sc delete SVN-Service
SVN的客户端工具的使用
技术分析之安装图形画界面的工具
1. 在可视化工具文件夹中选择自己电脑的版本的安装软件,双击安装!
* 双击 TortoiseSVN-1.7.12.24070-x64-svn-1.7.9.msi 安装
2. 安装完成图形界面后,可以使用图形界面的方式创建仓库
3. 安装后重启电脑
技术分析之图形化界面的使用
1. 模拟两个人同时使用SVN的环境,使用图形界面进行文件的提交和更新的操作
2. 简单的操作
* 选择 svn checkout -- 检出(第一次都需要检出资料,和svn的服务器取得同步)
* svn的默认端口号是3690,使用协议:svn://localhost:3690/crm 来检出内容
* 创建文件,出现一个蓝色的 ? 号,说明该文件还没有被svn所管理,需要手动添加该文件。点击 add 完成添加
* 出现蓝色的 + 号,说明已经被svn管理了,但是没有与svn服务器同步
* 选中,右键点击提交,就可以与svn同步了
3. 如果没有提交成功,说明现在是没有权限的,可以先设置简单的权限
* 简单的设置权限的版本
* 1.打开crm的仓库
* 2.找到仓库:conf/svnserve.conf
* anon-access = write ---匿名用户可读,可写.
4. 其他人就可以来更新代码了
技术分析之设置权限
* 步骤一:找仓库中的conf/svnserve.conf
* 步骤二:修改配置文件
* anon-access = none -- 匿名用户没有权限。(取值:none/read/write)
* auth-access = write -- 认证用户有读写权限
* password-db = passwd -- 让passwd的文件生效
* authz-db = authz -- 让authz的文件生效
* 步骤三 :打开passwd文件:设置用户名和密码
xx=123
yy=123
* 步骤四 :打开authz文件:设置用户的权限
[groups]
crmGroup=xx,yy
[/]
@crmGroup=rw
* =
技术分析之解决代码冲突问题(冲突一定会存在,必须要会解决)
1. 两个人都修改了同一个文件,然后一个先提交了,后提交的用户就会产生冲突。
2. 后提交的人需要来解决冲突
* 先更新,然后删除掉多余的内容
* 再重新提交
技术分析之锁机制(了解)
1. 右键,选择get lock 加锁,提交后默认就解锁了!!
2. 可以选择仓库,释放锁
Eclipse中安装svn的插件安装和使用
技术分析之Eclipse中安装svn插件
1. 在Eclipse中安装svn的插件
* 先退出Eclipse
* 步骤一:下载site-1.10.11.zip
* 将其解压
* features
* plugins
* 步骤二:创建一个文件夹svn,将两个文件夹copy到svn路径下
* 步骤三:打开Eclipse安装路径:
* eclipse\dropins
* 步骤四:将svn的文件夹copy到dropins路径
* 步骤五:重新启动Eclipse
技术分析之Eclipse中使用SVN工具