`
sdh88hf
  • 浏览: 69809 次
  • 性别: Icon_minigender_1
  • 来自: 绍兴
社区版块
存档分类
最新评论

Web开发学习6添加liqiubase

阅读更多
开发过程中经常碰到数据库更改的情况,在日常环境下如果每位开发人员连接的都是同一个库,那问题不算太大,修改代码上传后仅需修改该公共库即可,但是如果连的是本地个人的库那必须要把修改的sql语句发给其他开发者各自进行修改,这个工作是非常繁琐的;

liqiubase帮我们做了这些事情,通过xml配置的方式来增加修改表,添加数据等等操作,下面直接进入配置代码示例
首先需引入liqiubase的核心包
liquibase-core-1.9.5.jar

liqiubase的配置启用很简单,只需在spring配置文件中添加以下代码集合

 <!-- 配置liqiubase -->
	<bean id="liquibase" class="liquibase.spring.SpringLiquibase">  
        <property name="dataSource" ref="dataSource" />  
        <property name="changeLog" value="classpath:changelog.xml" /> 
    </bean>


dataSource是spring管理数据源,数据源指向一个库,liqiubase就是通过该数据源对库进行操作

然后就配置数据库操作了,比如我要创建一张权限表,我创建一个permissions.xml引入到spring


<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9 http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd">
	<changeSet author="admin" id="permissions-10005">
        <createTable tableName="permissions">  
            <column name="id" type="bigint">  
                <constraints nullable="false" primaryKey="true" />  
            </column>  
            <column name="name" type="varchar(32)" />
            <column name="actionurl" type="varchar(256)" /> 
            <column name="jsurl" type="varchar(256)" />
            <column name="level" type="int" />
            <column name="parentid" type="bigint"/>
            <column name="ordernum" type="int" defaultValue="0"/>  
        </createTable>
        
        <insert tableName="permissions">
        	<column name="id" value="1"/>  
            <column name="name" value="用户管理" />
            <column name="level" value="1" />
            <column name="parentid" value="-1"/>
            <column name="ordernum" value="1"/>
        </insert>
</changeSet>
</databaseChangeLog>

主要的标签就是changeSet每一次数据库操作就是一个changeSet,注意id不能重复
liqiubase会在我们库里面建几张它自己的表,当每次应用启动应用会去查id对应的changeSet是否被执行过,如果未执行就执行一遍然后记录.当其他开发人员下载到你的数据库操作配置后,liqiubase在他的库上发现你上次的changeSet没被执行过,就会执行一次

liqiubase对于统一管理数据库构建是非常方便的,平时上班空闲时都会自己搞搞例子,有时候要带回家做的话只需带走程序代码就行,到家里的电脑创建一个库就行,表结构和初始数据的创建都由liqiubase来搞定了,这就是一次配置终身受用啊.而且我个人比较喜欢用hibernate,hibernate的其中一个优点就是跨数据库,但如果构建数据库的语句已经写死了还怎么更改数据库呢
分享到:
评论

相关推荐

    Struts 2 Web开发学习实录

    Struts 2 Web开发学习实录

    PHP Web开发学习实录

    《PHP Web开发学习实录》

    ASP.NET WEB开发学习实录-----源码.rar

    这个"ASP.NET WEB开发学习实录-----源码.rar"压缩包显然包含了某位开发者或者教师在教授ASP.NET Web开发过程中积累的源代码和相关材料,可能是为了帮助学习者理解ASP.NET的核心概念和实际应用。 首先,我们来看ASP...

    Python Web开发学习实录高清PDF(附书本全部源代码)

    Python Web开发学习实录高清PDF(附书本全部源代码),适合学习Python,Python是目前流行的动态脚本语言之一。本书共15章,由浅入深、全面系统地介绍了使用Python语言进行程序开发的知识和技巧。

    Ruby on Rails Web开发学习实录 高清扫描版 pdf

    Ruby on Rails Web开发学习实录.pdf

    python web开发实录源代码

    "Python Web开发实录源代码"是针对这一主题的学习资料,通常包含一系列的示例项目和练习,旨在帮助开发者通过实践掌握Web开发的关键概念和技术。 首先,Python作为服务器端编程语言,其简洁的语法和强大的库支持...

    Delphi+Web前端开发教程基于TMS+WEB+Core框架.pdf

    Delphi Web前端开发教程是针对想要使用TMS WEB Core框架创建Web应用程序的开发者,无论你是初学者还是高级开发者,本教程都提供了丰富的学习资源。TMS WEB Core框架是Delphi世界中的一大创新,它允许开发者使用...

    Java Web 整合开发 完全自学手册 源代码

    《Java Web 整合开发 完全自学手册》是一本深度探讨Java Web技术的书籍,由白广元编著。这本书旨在帮助读者全面掌握Java Web应用程序的开发技能,从基础到高级,涵盖了一系列核心概念和技术。通过源代码的学习,读者...

    Tomcat与Java Web开发技术详解(第2版)及其源码

    《Tomcat与Java Web开发技术详解》还可作为高校相关专业学生学习Java Web开发的参考书,以及企业Java Web培训教材,也可作为SUN公司的SCWCD(SUN Certified Web Component Developer)认证的辅导教材。

    PHP和MySQL Web开发(原书第4版)带书签

    前段时间学习PHP 下了个PHP和MySQL Web开发(原书第4版)高清版,有将近200M,PDF文档不过没有书签,花了一天的时间将书签添加上去了,精确到了三级目录。 我没有权限上传200M的文件,所以放到百度空间了,下载后是...

    阿里web前端开发手册.pdf

    "阿里web前端开发手册" 阿里web前端开发手册是一份详细的前端开发规范,涵盖了项目命名、目录命名、JS、CSS、SCSS、HTML、PNG 文件命名等多个方面的命名规范。下面是本手册中的一些重要知识点: 1. 命名规范: 在...

    大华摄像头二次开发web3.0控件开发包

    大华摄像头二次开发web3.0控件开发包 dhassistant.h dhnetsdk.dll dhnetsdk.h dhnetsdk.lib NetSDK-Cut-Version2.xlsx index.htm readme.txt webplugin.exe 二次开发使用 WEB32网页调用接口说明.doc 网络sdk...

    C#web开发者指南教程PDF(含源代码),很适合入门学习C#web制作web应用程序。附带源代码。

    总的来说,《C# Web开发者指南教程》是一本全面的指南,不仅适合完全没有编程背景的初学者,也适合有一定基础想要深入学习C# Web开发的读者。通过这本书,你可以学习到构建高效、可靠的Web应用所需的所有基础知识,...

    Tomcat与Java Web开发技术详解 孙卫琴 源码

    《Tomcat与Java Web开发技术详解(第2版)》结合最新的Tomcat 6版本,详细介绍了开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方...

    大华摄像头web3.0二次开发webplugin

    【大华摄像头Web3.0二次开发WebPlugin详解】 大华摄像头Web3.0二次开发WebPlugin是一款专为开发者设计的工具,旨在帮助用户利用Web技术进行摄像头的高级功能定制和扩展。它允许开发者通过浏览器插件的方式,接入...

    web前端开发技术储久良第三版答案

    这本书旨在帮助学习者深入理解Web前端开发的核心概念和技术,通过解决实际问题来巩固理论知识。 一、HTML基础 HTML(超文本标记语言)是网页制作的基础,它定义了网页的结构。储久良第三版教材中的答案可能包括各种...

    C#Web应用程序入门经典

    图书类型:pdg 本书探讨了Web应用程序开发中所涉及的... 本书适用于熟悉c#语言、使用C#语言进行过桌面应用程序开发,或使用ASP、PHP技术进行过web开发,并且希望学习使用NET和C#语言从事web开发的程序员。

    Tomcat与Java Web开发技术详解 第二版配套光盘源码

    《Tomcat与Java Web开发技术详解》第二版是一本深入...总的来说,这个源代码包为读者提供了一个全面的学习资源,覆盖了从基础到进阶的Java Web开发知识,有助于读者在实践中提升技能,成为一名熟练的Java Web开发者。

    Tomcat与Java Web开发技术详解(第2版).pdf

    《Tomcat与Java Web开发技术详解(第2版)》是一本深入探讨Java Web应用程序部署和运行环境的权威指南。本书主要围绕Apache Tomcat服务器展开,涵盖了从基础概念到高级特性的全方位讲解,旨在帮助读者掌握Java Web...

    java web开发实战1200例 第二卷 源码

    《Java Web开发实战1200例(第2卷)》以开发人员在项目开发中经常遇到的问题和必须掌握的技术为核心,介绍了应用Java Web进行程序开发的各个方面的知识和技巧,主要内容包括流行组件应用、数据库应用、图表统计、Ajax...

Global site tag (gtag.js) - Google Analytics