搭建XJAVA架构的WEB服务
步骤1:创建Web工程(可跳过)
在Eclipse中创建Web工程。对已有项目的改造可跳过此步骤。
菜单路径Eclipse -> File -> New -> Project…。具体就不细说了,相信大家都会。
目录结构如下图
步骤2:引用Jar包
全部引用的jar包可在xjava.jar/META-INF/maven/org/hy/common/xjava/pom.xml配置中找到,
下面罗列出核心引用包的列表。
名称 | 用途说明 | 必要? |
hy.common.base.jar | 基础类库 | 是 |
hy.common.file.jar | 文件类库 | 是 |
xjava.jar | XJava核心类库 | 是 |
hy.common.db.jar | 关系型数据库的操作类库 | 数据库操作必要 |
hy.common.tpool.jar | 线程池、定时任务类库 | XSQL组功能必要 |
hy.common.net.jar | 云通讯类库 | 集群管理、云计算必要 |
fel.jar | 轻量高效的表达式计算引擎 | 数据库操作必要 |
json-smart.jar | 高性能的Json类库 | 是 |
其它相关包的依赖可在相关开源项目中找到。
将所需的jar包放在工程的lib目录下,或者创建路径引用方式引入到项目中。
步骤3:添加Xml配置文件
在WEB-INF目录下添加如下XML配置文件,配置文件名称可变,并不是内定的。列表中的XML配置是参考样例,具体工程应按自身情况制定。
名称 | 用途说明 | 必要? |
sys.Config.xml | 整个工程的配置参数。用户自行定义的。 | 否 |
startup.Config.xml | 启动加载XML列表的配置。 | 是 |
sys.DB.Config.xml | 数据库连接池配置。 | 数据库操作必要 |
job.Config.xml | 定时任务配置。 | 否 |
步骤4:添加Js类库(管理、部署、监控、分析时可选)
在WEB-INF目录下添加如下diff、jquery、jsoneditor-3.1.2三个目录,它们可在下面的地址中下载:
https://github.com/HY-ZhengWei/XJava
添加上面三个Js类库后,XJava构架下的Web服务将有能力启动如下功能:
1. XML配置热加载、
2. 重建数据库对象、
3. 集群部署、
4. XSQL运行监控(包括异常SQL)、
5. 多线程运行监控、
6. 主机服务CPU、内存监控、
7. 定时任务监控、
8. 数据库连接池组控制、
9. XJava对象及缓存数据分析、
10. Web资源管理器。
上面功能将依赖Js类库。
配置成功后可通过地址http://IP:端口/Web服务名称/analyses打开管理页面。步骤4还没有配置完成呢。
步骤5:添加初始化Listener类
在项目合适的包中添加InitConfig.jara类,它的名称可变,不是内定的。用于Web项目启动时初始所有XML配置,构建XJava对象池、数据库连接池等。
点击InitConfig.java类名称下载。其Java代码可自行调整,此处只是参考样例。
步骤6:添加Web.xml启动配置
在WEB-INF/web.xml中添加如下内容。
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
参考样例见
https://github.com/HY-ZhengWei/XFlowWeb/blob/master/WebRoot/WEB-INF/web.xml
步骤7:启动验证
到此即配置完成。启动输出如下绿色文字的日志内容(内容仅限参考,每个项目均不一样),并且不报错,即为搭建XJava架构成功。
1. 五月 18, 2018 4:07:20 下午 org.apache.catalina.core.AprLifecycleListener init
2. 信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Software\Java\jdk1.7.0_55\bin;C:\windows\Sun\Java\bin;C:\windows\system32;C:\windows;D:\Software\Java\jdk1.7.0_55\jre\bin;D:/Software/Java/jdk1.7.0_55/bin/../jre/bin/server;D:/Software/Java/jdk1.7.0_55/bin/../jre/bin;D:/Software/Java/jdk1.7.0_55/bin/../jre/lib/amd64;D:\Software\oracle\product\11.2.0\dbhome_1\bin;.;D:\Software\Java\jdk1.7.0_55\bin;C:\windows\system32;C:\windows;D:\Software\OpenSSH\bin;C:\windows\system32\wbem;D:\Software\Microsoft SQL Server Share\100\Tools\Binn\;D:\Software\Microsoft SQL Server\100\Tools\Binn\;D:\Software\Microsoft SQL Server\100\DTS\Binn\;D:\Software\Microsoft SQL Server Share\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;D:\Software\Microsoft SQL Server Share\100\DTS\Binn\;C:\windows\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\MIT\Kerberos\bin;D:\Software\TortoiseSVN\bin;C:\Program Files\Git\cmd;D:\apache-maven-3.3.9\bin;D:\Software\IBM\SQLLIB\BIN;D:\Software\IBM\SQLLIB\FUNCTION;D:\Software\IBM\SQLLIB\SAMPLES\REPL;;D:\Software\Docker Toolbox;D:\Software\eclipse;;.
3. 五月 18, 2018 4:07:20 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin
4. 警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:XFlowWeb' did not find a matching property.
5. 五月 18, 2018 4:07:20 下午 org.apache.coyote.AbstractProtocol init
6. 信息: Initializing ProtocolHandler ["http-bio-80"]
7. 五月 18, 2018 4:07:20 下午 org.apache.coyote.AbstractProtocol init
8. 信息: Initializing ProtocolHandler ["ajp-bio-8009"]
9. 五月 18, 2018 4:07:20 下午 org.apache.catalina.startup.Catalina load
10. 信息: Initialization processed in 1229 ms
11. 五月 18, 2018 4:07:20 下午 org.apache.catalina.core.StandardService startInternal
12. 信息: Starting service Catalina
13. 五月 18, 2018 4:07:20 下午 org.apache.catalina.core.StandardEngine startInternal
14. 信息: Starting Servlet Engine: Apache Tomcat/7.0.47
15. Loading sys.Config.xml
16. load finish.
17. Loading startup.Config.xml
18. load finish.
19. log4j:WARN No appenders could be found for logger (com.mchange.v2.log.MLog).
20. log4j:WARN Please initialize the log4j system properly.
21. Loading sys.DB.Config.xml
22. load finish.
23. Loading sys.Config.xml
24. load finish.
25. Loading startup.Config.xml
26. load finish.
27. Loading dbCreate/create.01.Common.xml
28. Loading dbCreate/create.02.Template.xml
29. Loading dbCreate/create.03.Flow.xml
30. Loading dbCreate/create.03.FlowHistory.xml
31. Loading db/db.ActivityInfo.xml
32. Loading db/db.ActivityParticipants.xml
33. Loading db/db.ActivityRoute.xml
34. Loading db/db.ActivityRouteParticipants.xml
35. Loading db/db.ActivityType.xml
36. Loading db/db.FlowFutureOperator.xml
37. Loading db/db.FlowInfo.xml
38. Loading db/db.FlowLastOperator.xml
39. Loading db/db.Process.xml
40. Loading db/db.ProcessParticipants.xml
41. Loading db/db.Template.xml
42. Loading dbGroup/db.FlowProcess.xml
43. load finish.
44. Loading job.Config.xml
45. load finish.
46. Loading job.Config.xml
47. load finish.
48. 五月 18, 2018 4:07:27 下午 org.apache.catalina.core.ApplicationContext log
49. 信息: Initializing Spring root WebApplicationContext
50. 五月 18, 2018 4:07:27 下午 org.apache.catalina.startup.HostConfig deployDirectory
51. 信息: Deploying web application directory D:\apache-tomcat-7.0.47\webapps\ROOT
52. 五月 18, 2018 4:07:28 下午 org.apache.coyote.AbstractProtocol start
53. 信息: Starting ProtocolHandler ["http-bio-80"]
54. 五月 18, 2018 4:07:28 下午 org.apache.coyote.AbstractProtocol start
55. 信息: Starting ProtocolHandler ["ajp-bio-8009"]
56. 五月 18, 2018 4:07:28 下午 org.apache.catalina.startup.Catalina start
57. 信息: Server startup in 7257 ms
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
