springboot+mybatis+dorado整合

springboot+mybatis+dorado整合

前面已经整合过springboot+mybatis,这里实在已经整合好springboot+mybatis的基础上整合dorado的,如果不会整合springboot+mybatis可以看看我之前的博文。

目录

1.eclipse集成dorado插件
2.下载集成dorado需要的依赖包
3.导入依赖包
4.工程WEB-INF目录下创建dorado-home目录并配置
5.更新dorado规则

目录说明:按照目录上面的步骤顺序做在过程中可以边集成边调试。

1.eclipse集成dorado插件

这个因为我使用的是公司提供的eclipse,eclipse已经集成好dorado插件了,如果不会的可以百度一下eclipse如何集成dorado插件。集成成功后在eclipse里面创建新项目会有dorado项目。没集成之前是不可以创建dorado项目的。特别说明我们可以创建单独的dorado项目,单独的springboot项目,单独的maven项目。这里旨在集成这些东西。

2.下载集成dorado需要的依赖包

依赖包目录如下:
dorado-core.jar
dorado-skin-blue-sky.jar
dorado-skin-concise-red.jar
dorado-skin-daybreak.jar
cglib.jar
commons-beanutils.jar
commons-collections.jar
commons-jexl.jar
commons-lang.jar
ehcache-core.jar
jackson-core-asl.jar
jackson-mapper-asl.jar
javassist.jar
spring-context-support.jar

具体jar包的版本可以参考下图:
这里写图片描述
注意:这里的springboot+mybatis工程的名称和上次创建好的工程名称不一样,这里使用的工程只是在名称上修改了,其他的还是不变。也就是说只要你已经创建好一个springboot+mybatis的框架好后这里的整合dorado就可以用你的框架去整合。

3.导入依赖包
3.1新建lib目录

在你下载好相关jar包后,在你的工程的根目录也就是你的项目名右键新建一个文件夹,名称为lib,把你下载好的jar包放在lib文件夹下如图:
这里写图片描述

3.2导入依赖包

打开你工程的pom.xm,在文件夹中吧刚刚创建好的依赖全部添加进去,下面贴出我的整个pom.xml内容,前面部分是整合springboot+mybatis的依赖包,后面部门有注解为整合dorado开始的地方下面的都是整合dorado需要的一些依赖包,这里整合dorado的依赖包基本是最简的。如下代码:
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>cn.idatatech</groupId>
    <artifactId>springDorado</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>springDorado</name>
    <description>合并spring+mybatis+dorado</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!-- 配置mybatis依赖包 -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

        <!-- 添加阿里巴巴数据源依赖包 druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.0.29</version>
        </dependency>

        <!-- 配置mysql驱动 -->
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-java-5.1.41-bin</artifactId>
            <version>5.1.41</version>
            <systemPath>${basedir}/lib/mysql-connector-java-5.1.41-bin.jar</systemPath>
            <scope>system</scope>
        </dependency>

        <!--配置支持jsp-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <!-- 引入jsp中jstl包的支持 -->
        <dependency>
              <groupId>javax.servlet</groupId>
              <artifactId>jstl</artifactId>
              <version>1.2</version>
        </dependency>
        <dependency>  
            <groupId>org.apache.tomcat.embed</groupId>  
            <artifactId>tomcat-embed-jasper</artifactId>  
        </dependency>

        <!-- 配置dom4j,对xml文件解析支持 -->
        <!-- 也可以配置saxon解析,这里主要用来解析mapper.xml文件 -->
        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1</version>
        </dependency>

        <!-- =================================配置dorado============================================= -->
        <!-- dorado 7 -->
        <dependency>
            <groupId>com.bstek.dorado</groupId>
            <artifactId>dorado-core</artifactId>
            <version>7.6.0-SNAPSHOT</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/dorado-core.jar</systemPath>
        </dependency>

        <!-- commons-lang3 常用工具类 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang-2.6</artifactId>
            <version>2.6</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/commons-lang-2.6.jar</systemPath>
        </dependency>

        <!-- commons-jexl -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-jexl-2.1.1</artifactId>
            <version>2.1.1</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/commons-jexl-2.1.1.jar</systemPath>
        </dependency>

        <!-- commons-collections -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections-3.2.1</artifactId>
            <version>3.2.1</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/commons-collections-3.2.1.jar</systemPath>
        </dependency>

        <!-- spring-context-support -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support-3.2.0.RELEASE</artifactId>
            <version>3.2.0</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/spring-context-support-3.2.0.RELEASE.jar</systemPath>
        </dependency>

        <!-- javassist -->
        <dependency>
            <groupId>javassist</groupId>
            <artifactId>javassist-3.12.1.GA</artifactId>
            <version>3.12.1</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/javassist-3.12.1.GA.jar</systemPath>
        </dependency>

        <!-- ehcache-core -->
        <dependency>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache-core-2.6.3</artifactId>
            <version>2.6.3</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/ehcache-core-2.6.3.jar</systemPath>
        </dependency>

        <!-- commons-beanutils皮肤依赖包 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-beanutils-1.8.3</artifactId>
            <version>1.8.3</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/commons-beanutils-1.8.3.jar</systemPath>
        </dependency>

        <!-- dorado-skin-blue-sky皮肤依赖包 -->
        <dependency>
            <groupId>com.bstek.dorado</groupId>
            <artifactId>dorado-skin-blue-sky-1.0.31</artifactId>
            <version>1.0.31</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/dorado-skin-blue-sky-1.0.31.jar</systemPath>
        </dependency>

        <!-- dorado-skin-red皮肤依赖包 -->
        <dependency>
            <groupId>com.bstek.dorado</groupId>
            <artifactId>dorado-skin-concise-red-1.0.65</artifactId>
            <version>1.0.65</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/dorado-skin-concise-red-1.0.65.jar</systemPath>
        </dependency>

        <!-- dorado-skin-daybreak皮肤依赖包 -->
        <dependency>
            <groupId>com.bstek.dorado</groupId>
            <artifactId>dorado-skin-daybreak-1.0.35</artifactId>
            <version>1.0.35</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/dorado-skin-daybreak-1.0.35.jar</systemPath>
        </dependency>

        <!-- jackson-core-asl解析与序列化 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core-asl-1.9.11</artifactId>
            <version>1.9.11</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/jackson-core-asl-1.9.11.jar</systemPath>
        </dependency>

        <!-- jackson-mapper -->
        <dependency>
            <groupId>com.fasterxml.jackson.map</groupId>
            <artifactId>jackson-mapper-asl-1.9.11</artifactId>
            <version>1.9.11</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/jackson-mapper-asl-1.9.11.jar</systemPath>
        </dependency>

        <!-- net.sf.cglib -->
        <dependency>
            <groupId>net.sf.cglib</groupId>
            <artifactId>cglib-2.2.2</artifactId>
            <version>2.2.2</version>
            <scope>system</scope>
            <systemPath>${basedir}/lib/cglib-2.2.2.jar</systemPath>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

配置好后右键工程,选择maven->update project,这样就更新完成你的maven依赖包了(可以到你工程下的maven dependencies目录下看看刚刚导入的那些jar包有没有导入进去)。

4.工程WEB-INF目录下创建dorado-home目录并配置

在工程的src/main/webapp的WEB-INF目录下新建一个文件夹,命名为dorado-home.添加相关配置,最好不要这么干,我的做法是新创建一个dorado项目,然后把dorado项目的相同路径下的dorado-home拷贝一份放在自己的WEB-INF目录下。目录结构如下图:
这里写图片描述
各个文件代码如下:
app-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jee="http://www.springframework.org/schema/jee"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="
            http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
            http://www.springframework.org/schema/tx
            http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
            http://www.springframework.org/schema/jee
            http://www.springframework.org/schema/jee/spring-jee-3.0.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context-3.0.xsd"
>
</beans>

components-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:d="http://www.bstek.com/dorado/schema"
       xsi:schemaLocation="
           http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
           http://www.bstek.com/dorado/schema
           http://www.bstek.com/dorado/schema/spring-dorado-7.0.xsd"
>

</beans>

configure-debug.properties

view.clientSideCache.defaultMaxAge=0
core.classPathResourceReloadable=true

view.debugEnabled=true
view.showExceptionStackTrace=true
view.mergeJavaScript=false
view.mergeStyleSheet=false

view.useMinifiedJavaScript=false
view.useMinifiedStyleSheet=false
view.outputPrettyJson=true

core.supportsTempFile=false

configure.properties

core.runMode=debug

# encoding
view.javaScript.charset=utf-8
view.styleSheet.charset=utf-8

context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:d="http://www.bstek.com/dorado/schema"
       xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.bstek.com/dorado/schema http://www.bstek.com/dorado/schema/spring-dorado-7.0.xsd">
    <import resource="app-context.xml"/>
    <import resource="components-context.xml"/>

    <!-- 配置dorado模型文件的路径 -->
    <bean parent="dorado.dataConfigLoader">
        <property name="configLocation" value="classpath*:cn/idatatech/**/*.model.xml"/>
    </bean>

    <!-- 配置dorado视图文件的路径 -->
    <bean parent="dorado.viewConfigFactoryRegister">
        <property name="viewNamePattern" value="**"/>
        <property name="viewConfigFactory">
            <bean parent="dorado.xmlViewConfigDefinitionFactory">
                <property name="pathPrefix" value="WEB-INF/views"/>
                <property name="pathSubfix" value=".view.xml"/>
            </bean>
        </property>
    </bean>

    <!-- ???-->
    <bean parent="dorado.packagesConfigLoader">
        <property name="configLocation" value="classpath*:WEB-INF/dorado-home/packages-config.xml"/>
    </bean>

</beans>

packages-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <Patterns>
        <Pattern name="js" contentType="text/javascript" charset="UTF-8"
            mergeRequests='${configure["view.mergeJavaScript"]}' resourceSuffix=".js" />
        <Pattern name="css" contentType="text/css" charset="UTF-8"
            mergeRequests='${configure["view.mergeStyleSheet"]}' resourceSuffix=".css" />
        <Pattern name="res-js" contentType="text/javascript" charset="UTF-8"
                 mergeRequests="false" resourceSuffix=".js"
                 baseUri=">dorado/client/resources"/>
        <Pattern name="res-css" contentType="text/css" charset="UTF-8"
                 mergeRequests="false" resourceSuffix=".css"
                 baseUri=">dorado/client/resources"/>
    </Patterns>

    <Packages>
        <Package name="common" pattern="js"></Package>
    </Packages>
</config>

servlet-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jee="http://www.springframework.org/schema/jee"
       xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
</beans>

w3c-html4-template.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=IE8"/>
    #outputPageHeader()
</head>
<body style="margin:0; overflow:hidden">
<div id="doradoView" style="display:none"></div>
#outputPageFooter()
#outputException()
</body>
</html>

ok,到这里就可以更新dorado规则了,这行第5步。

5.更新dorado规则

右键项目名,选择更新dorado规则(如果没有集成dorado插件,这里就没有这个选项),过一会会提示更新dorado规则成功或者失败。如果更新成功,那么恭喜你已经完成springboot+mybatis+dorado框架的整合了,如果更新失败。这时候多半是因为导入依赖包的问题。仔细查看控制台打印的日志信息,看看是不是依赖包没有导进去(如果没有倒进依赖包,在进行maven->update project的时候你的pom.xml就会报错),如果提示找不到某些包下的类,那个你可以参照一个dorado项目的lib文件夹下的jar包,看看报错的找不到的那个类的包的名称在不在dorado项目的lib文件夹下(正常都有,我就是这么干的),把这个包拷贝到你的springboot项目的lib文件夹下,然后在pom.xml添加该包的依赖(添加过程可以仿照前面的依赖添加)。

注:如何创建一个dorado视图后成功访问将在后面继续,这里先记录到这里。上面的整合知识可以更新dorado配置规则,但是访问到dorado视图还没有配置。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值