Spring day04笔记(SVN讲解和回顾昨天知识)
spring day03回顾
事务管理
- 基于xml配置
|
1.配置事务管理器 jdbc:DataSourceTransactionManager hibernate:HibernateTransactionManager 2.事务通知(详情、属性) <tx:advice id="" transaction-manager=""> <tx:attributes> <tx:method name="add*"> <tx:method name="update*"> <tx:method name="delete*"> <tx:method name="find* read-only="true"> 3. AOP编程,ABCD--> ABC <aop:config> <aop:advisor advice-ref="txAdvice" pointcut="execution(* com..*.*(..))"> |
- 基于注解
|
xml 配置 1.事务管理器 2.将配置事务管理器交予spring <tx:annotation-driven transaction-manager="...."> 目标类 @Transactional 类 | 方法 |
整合Junit
@RunWith(SpringJunit4RnnerClass.class)
@ContextConfiguration(locations="classpath:...xml")
@Autowired 注入
@Test 测试
整合web
web.xml 配置
1.确定xml位置
<context-param>
name:contextConfigLocation
value:classpath:...xml
2.加载xml文件,配置监听器
ContextLoaderListener
整合
1. hibernate po (domain、bean)
2.dao层:
需要HibernateTemplate 相当于session操作PO类 --> 必须提供setter方法,让spring注入,xml配置模板
save() update delete saveOrUpdate find
继承HibernateDaoSupport,需要注入SessionFactory,底层自动创建模板
dao方法中 this.getHibernateTemplate()
3.service 层,spring配置
properties <context:property-placeholder location>
配置数据源:ComboPooledDataSource
配置SessionFactory:LocalSessionFactoryBean
事务管理
4.web层 ,aciton
struts.xml <action name="" class="全限定类名"> 前面看到一位struts,底层使用spring
默认与spring整合之后,按照【名称】自动注入
spring day04 -- spring day07 ,案例(小项目)
day04: SVN 、搭建环境(完成PO类)
day05: 基本功能(struts拦截器、hibernate关联获取)
day06: 复杂操作(查询+分页+条件、ajax级联操作)
day07: 重写--工具 (BaseDao、BaseAction)
SVN
版本控制
什么版本控制
- 版本控制(Revision Control):是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。也是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。
版本控制软件
- CVS(Concurrent Versions System)代表协作版本系统或者并发版本系统,是一种版本控制系统,方便软件的开发和使用者协同工作。
- VSS ( Visual Source Safe )只能在windows下,作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理
- Git是用于Linux内核开发的版本控制工具。它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge tracing)能力。
www.github.org
。。。。。。
- SVN(Subversion ),是一个开放源代码的版本控制系统,采用了分支管理系统,它的设计目标就是取代CVS。
SVN特点
|
体系结构

安装

- 测试安装

- 检查path系统环境变量

创建仓库
- 格式:cmd> svnadmin create 路径

- 仓库目录结构

- 注意:创建仓库时,目录必须是空的 ,及新建文件夹
启动
- 格式:cmd> svnserve -d -r 仓库的路径
-d后台执行
-r版本库的根目录
启动时,指定"仓库路径"不同,分类:多仓库和单仓库
- 多仓库【掌握】

启动:svnserve -d -r 仓库父目录 ,表示启动时多仓库
例如:svnserve -d -r G:\repository\svn
访问:svn://localhost:3690/bbs
- 单仓库

启动:svnserve -d -r 仓库的根 ,表示启动时单仓库
例如:svnserve -d -r G:\repository\svn\bbs
访问:svn://localhost:3690
- 将操作注册成操作系统的"服务",开机启动。
1."运行",services.msc 打开"服务"
2. 删除"服务"

3. 注册"服务"

|
sc create svn binpath= "D:\java\Subversion\bin\svnserve.exe --service -r G:\repository\svn" displayname= "SVN-Service" start= auto depend= Tcpip |
4. 启动或停止"服务"

操作【掌握 思想】

checkout
- 格式:svn checkout 服务器地址 下载地址

commit
- 格式:svn commit 资源
问题1:没有纳入版本控制

使用add子命令 添加到本地版本库

问题2:没有编写日志

采用 -m 参数设置日志信息

问题3:没有权限

修改权限,设置匿名访问
G:\repository\svn\bbs\conf\svnserve.conf

update
- 格式: svn update

图形化:TortoiseSVN 安装

- 安装成功之后,所有的操作都是"右键"
svn权限
- 权限需要3个配置文件

- svnserve.conf
开启认证

确定账号配置文件位置

确定认证配置文件位置

- passwd 账号配置 (一行一个账号,账号用户名和密码组成,使用等号分隔)

- authz 认证配置文件
配置组 , 格式:组名 = 用户1 ,用户2,....

认证细节配置
多仓库
[bbs:/] --> 确定仓库名称 。[bbs:/doc] 给bbs仓库的doc目录配置权限
@itheima = rw --> 给itheima组设置权限。
read ('r') ,read-write ('rw') ,or no access ('').
user3 = r --> 给user3 指定权限
*= --> 其他用户没有权限

单仓库
[/] -->单仓库的根 [/doc] 单仓库doc目录

TortoiseSVN 常见图标

myeclipse svn 插件
安装插件

如果3个都不能使用,直接换eclipse
- 安装方式1:直接复制

eclipse插件规范
eclipse 目录
| -- features目录
| -- plugins 目录
- 方式2:使用link文件
将插件解压到任意目录(不含中文、空格),在myeclipse/dropins目录添加一个link文件
文件名:自定义
文件扩展名:link
文件内容:
path = 插件完整目录,需要指定到eclipse,即可以看到(features 、 plugins)
例如:
path=D:\\java\\MyEclipse\\MyEclipse 10\\svn\\eclipse
path=D:/java/MyEclipse/MyEclipse 10/svn/eclipse
- 方式3:在线安装
- 安装成功标志

操作
svn目录规范


trunk ,主线,用于存放程序整个进度
branches ,分支,例如:bug修复、特殊功能等
tags,标签(版本),此目录下的内容不能修改
Spring day04笔记(SVN讲解和回顾昨天知识)的更多相关文章
- 2.《Spring学习笔记-MVC》系列文章,讲解返回json数据的文章共有3篇,分别为:
转自:https://www.cnblogs.com/ssslinppp/p/4528892.html 个人认为,使用@ResponseBody方式来实现json数据的返回比较方便,推荐使用. 摘要 ...
- 1.《Spring学习笔记-MVC》系列文章,讲解返回json数据的文章共有3篇,分别为:
转自:https://www.cnblogs.com/ssslinppp/p/4528892.html [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://w ...
- 3.《Spring学习笔记-MVC》系列文章,讲解返回json数据的文章共有3篇,分别为:
转自:https://www.cnblogs.com/ssslinppp/p/4528892.html 概述 在文章:<[Spring学习笔记-MVC-3]SpringMVC返回Json数据-方 ...
- 【Spring学习笔记-MVC-9】SpringMVC数据格式化之日期转换@DateTimeFormat
作者:ssslinppp 1. 摘要 本文主要讲解Spring mvc数据格式化的具体步骤: 并讲解前台日期格式如何转换为java对象: 在之前的文章<[Spring学习笔记-MVC ...
- 【Spring学习笔记-MVC-4】SpringMVC返回Json数据-方式2
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- 【Spring学习笔记-MVC-3.1】SpringMVC返回Json数据-方式1-扩展
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- Spring读书笔记——bean解析
前情回顾 上篇<Spring读书笔记--bean加载>我们从代码角度介绍了有哪些类负责解析XML文件,又是如何一步步从XML格式脱变成我们熟悉的bean的,直到DefaultBeanDef ...
- spring学习笔记(一) Spring概述
博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书. 强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring ...
- 【Spring学习笔记-MVC-13.2】Spring MVC之多文件上传
作者:ssslinppp 1. 摘要 前篇文章讲解了单文件上传<[Spring学习笔记-MVC-13]Spring MVC之文件上传>http://www.cnblogs.co ...
随机推荐
- 在window上安装pandas
之前在ubuntu上安装pandas,用的easy_install.这次在window上同样方法装遇到"unable to find vcvarsall.bat",看一些网上帖子好 ...
- BZOJ 4034 BIT & Dfs序
调了恒久突然发现输出优化忘记带负号了.. 就是差分树状数组维护Dfs序即可. #include <iostream> #include <cstring> #include & ...
- windows server 2008 r2 切换windows 7主题方法
1. 打开Powershell 里 Cmdlets 管理角色和功能Import-Module servermanager 2. 安装桌面体验Add-WindowsFeature Desktop-Exp ...
- ssh连接linux服务器只显示-bash-4.1#不显示路径解决方法
ssh连接linux服务器只显示-bash-4.1#不显示路径时,我们只需要修改 ~/.bash_profile文件,如果不存在这个文件,那么新建一个,增加内容 export PS1='[\u@\ ...
- json_decode时含有中文是解码问题(json_decode返回为null)
function myDecode($str){ $str = substr(str_replace('\"','"',json_encode($str)),1,-1); retu ...
- R读取数据的错误
使用R读取数据的时候遇到这种错误: invalid multibyte string at '<fd>' 解决方法就是: tbl <- read.delim("dir/fi ...
- Maven生命周期详解
来源:http://juvenshun.iteye.com/blog/213959 Maven强大的一个重要的原因是它有一个十分完善的生命周期模型(lifecycle),这个生命周期可以从两方面来理解 ...
- python数据结构与算法——快速排序
快速排序通过不断将数列分段,使得较小的数在左边的序列,较大的数在右边的序列,不断重复此过程实现排序效果.通过设置两个哨兵不断的找两个序列的较小数,较大数,并把左右的数据互换,实现对数据从粗到细的排序. ...
- codeforces mysterious present 最长上升子序列+倒序打印路径
link:http://codeforces.com/problemset/problem/4/D #include <iostream> #include <cstdio> ...
- LeetCode() Min Stack 不知道哪里不对,留待。
class MinStack { public: MinStack() { coll.resize(2); } void push(int x) { if(index == coll.size()-1 ...