前言
首先声明,本次搭建框架使仿照ibase4J的架构进行搭建,结合了自己的一些理解做了一些修改,基本上都是复用ibase4J所采用的框架和代码。开此博客的目的是为了让自己以及大家更了解ibase4J的框架和代码,同时也能增加大家动手能力。博客主要为已经有一些java知识,但是还没有大坚果框架的同学学习,如果水平比较高的可以自行阅读ibase4j的源码。
正文
1.使用工具
1.1.必须安装
JDK1.8,maven 3.0.4,eclipse。
1.2.后期逐步安装
redis,mysql,zookeeper,nginx
2.创建maven项目
2.1项目模块划分
ibase4J的架构将框架分为web控制模块、facade接口模块、service业务逻辑模块以及common模块。因为这里主要讲后端分布式框架,所以这里不涉及前端部分。
- web控制模块:主要是对访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。
- facade接口模块:负责模块间调用参数,返回参数的封装。
- service业务逻辑模块:处理业务逻辑,对数据库的调用等。
- common模块:负责公共代码和配置部分。
2.2创建maven项目
jdk和maven的安装配置就不在讲解,网上很多教程,可自行查询。
创建maven主项目,选择new-》maven project 选择创建简单项目,点击下一步。
按照提示填写项目信息,注意这里的packaging必须选择pom
如果在创建项目一直显示99%,建议你拔掉网线再创建项目,至于为什么会这样,大概应该是伟大的墙的原因吧。
删除调项目里面多余的文件和文件夹,保留pom文件即可。
编辑pom文件,在project节点下添加下面这段代码,这段代码的作用是指定maven变异的jdk版本。
<build>
<finalName>${project.name}</finalName>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>*</include>
<include>*/*</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<testIncludes>
<testInclude>none</testInclude>
</testIncludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jdeps-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<goals>
<goal>jdkinternals</goal>
<goal>test-jdkinternals</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
2.3创建maven模块项目.
web模块,service模块,common模块创建web3.0项目,facade则只需要创建普通java项目即可。
web3.0项目创建。
new-》project-》maven-》maven module,填写模块名称点击下一步
选择webapp,点击下一步,最后完成。
现在创建完成的是web2.3项目,我们需要将他修改为maven3.0
修改maven母,模块项目下的.setting文件夹下的org.eclipse.wst.common.project.facet.core.xml文件。将jdk版本修改为1.8,web版本修改为3.0。
在eclipse中找到项目项目的web.xml文件,修改头部为下面部分代码:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
最后右键单击项目,选择maven,单机update project。ok,web3.0模块就完成了。至于jsp的报错,大家自己参考。jsp报错是因为没有jar包,自行把jar包引入或者删除即可。
最后一步就是将maven module项目的pom.xml文件中的groupId 和 version去掉即可消除警告。
注意项目的common模块,pom文件的packaging字段应该修改为jar。如果修改该字段maven update
project过后出现下面警告:Path Location Type Classpath entry
org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER will not be exported
or published. Runtime ClassNotFoundExceptions may result.
修改base项目的.classpath文件,修改如下
<classpathentry exported="true" kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
</attributes>
</classpathentry>
到这里我们四个模块项目都已经搭建出来了
代码下载
下一篇我们将使用maven构建多个运行环境,并运行程序。