Public CMS V4二次开发手册_第1页
Public CMS V4二次开发手册_第2页
Public CMS V4二次开发手册_第3页
Public CMS V4二次开发手册_第4页
Public CMS V4二次开发手册_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PublicCMSV4.0

二次开发手册

目录

第——章PublicCMS介绍1

1.概述1

2.授权协议1

3.获取PublicCMS1

4.目录结构2

第二章开发工具集成3

1.Maven工程导入3

2.普通工程导入6

3.开发工具配置9

4.工程配置14

5.工程调试14

6.工程发布20

7.工程运行23

第三章二次开发23

1.工程代码简介23

2.Hibernate实体自动生成24

3.逻辑代码及页面自动生成33

4.Mybatis代码自动生成36

第四章服务支持37

1.免费支持37

第一章PublicCMS介绍

i.概述

PublicCMS采用2020年最新主流JAVA技术开发;完全开源,架构科学,SE。友好,轻

松支撑千万数据、千万PV;目前已经拥有全球0.0002%的用户,诸多明星网站案例。提供

免费版本产品、免费技术支持,为您快速建站,建设大规模站点提供强大驱动,也是企业级

项目产品原型的良好选择。

PublicCMS同时支持动态站点,静态站点的建设。

PublicCMS支持多站点建设,各个站点之间数据、模板完全分离。

2.授权协议

一、授权许可

1.1您可以免费修改、复制、分发本软件及本软件的源码

1.2您可以免费获得的基于免费协议的授权文件,并获得非商业用途的使用权限,非商业

用途限个人用户使用

1.3商业用途用户允许不超过3个月的试用,试用期间,基于本软件开发的页面必须在显

著位置添加PoweredbyPublicCMS标识,并保留产品中的授权及logo等标识

1.4在将本软件用作商业用途时,需要取得软件版权方商业使用授权,授权单位应为最终

使用产品的用户单位

1.5已获得商业授权的用户可以使用、复制、修改、分发本软件(含源码)及包含本软件(含

源码)的产品

1.6该协议仅对当前版本有效,历史已发布版本请参照软件发布时附带的授权协议

二、版权

2.1该软件版权归PublicCMS官方所有

三、免责声明

3.1本软件及所附带的文件是作为不提供任何明确的或隐含的赔偿或担保的形式提供的

3.2用户出于自愿而使用本软件,您必须了解使用本软件的风险,在尚未购买产品技术服

务之前,我们不承诺提供任何形式的技术支持、使用担保,也不承担任何因使用本软件而产

生问题的相关责任

3.获取PublicCMS

PublicCMS源码托管

GITEE:https:〃/sanluan/PublicCMS

GITHUB:https:〃/sanluan/PublicCMS

】)

4.目录结构

data/publiccms

publiccms-parent

•publiccms-parent为PublicCMS源码工程

•data/publiccms为PublicCMS数据目录

早录中包含以下子目录

indexes

task

template

web

其中indexes目录为数据全文索引文件,由系统自动生成,task目录为任务计划脚本,

template为模板文件目录,web为静态化文件和资源文件存放目录

{2}

第二章开发工具集成

导入到开发工具中后,您可以自由的编译和修改PublicCMS源码,进行二次开发等。以下步

骤Eclipse为例,下载地址https:〃www.eclipse.orR/downloads/

1.Maven工程导入

4.01操作步骤

>首先选择File菜单中的lmport(导入)

SBJavaEE-Eclipse

FileEditNavigateSearchProjectRunWindov

NewAlt+Shift+N>

OpenFile...

CloseCtrl+W

CloseAllCtrl+Shift+W

SaveCtrl+S

SaveAs...

SaveAllCtrl+Shift+S

Revert

Move...

HRename...F2

RefreshF5

ConvertLineDelimitersTo>

Print..Ctrl+P

SwitchWorkspace>

Restart

①Import...

ZExport...

PropertiesAlt+Enter

Exit

>在弹出的导入对话框中选择Maven->ExistingMavenProjects(导入已有的Maven工程)

SBImport

Select

ImportExistingMavenProjects

Selectanimportwizard:

typefiltertext

>令JavaEE

7后Maven

L2ICheckoutMavenProjectsfromSCM

LJExistingMavenProjects

IJ4InstallordeployanartifacttoaMavenrepository

MJMaterializeMavenProjectsfromSCM

>已Oomph

>昌Plug-inDevelopment

>后RemoteSystems

>bRun/Debug

>&SVN

>&Tasks

Next>Cancel

>rootdirectory(跟目录)选择publiccms-parent目录

36nportMavenProjects□X

MavenProjects

SelectMavenprojects

>Advanced

<BackCancel

点击finsh完成工程导入

{5}

S3ImportMavenProjects□X

MavenProjects

SelectMavenprojects

RootDirectory:D:\repositories\PublicCMS\publiccms-parentBrowse-

Projects:

70/pom.xmlcom.publiccms:publiccms-parent:V4.0.190312:pomSelectAll

0publiccms/pom.xmlcom.publiccms:publiccms:V4.0.190312:war

0publiccms-core/pom.xmlcom.publiccms:publiccms-core:V4.0.190312:jarDeselectAll

0publiccms-common/pom.xmlcom.publiccms:publiccms-common:V4.0.190312SelectTree

0publiccms-oauth/pom.xmlcom.publiccms:publiccms-oauth:V4.0.190312jar

0publiccms-redis/pom.xmlcom.publiccms:publiccms-redis:V4.0.190312:jarDeselectTree

Qpubliccms-j2cache/pom.xmlcom.publiccms:publiccms-j2cache:V4.0.190312yar

Refresh

Qpubliccms-analyzer/pom.xmlcom.publiccms:publiccms-analyzer:V4.0.190312:j

PlAddproject(s)toworkingset

publiccms-parentv

►Advanced

<BackNextFinishCancel

2.普通工程导入

4.02操作步骤

>在publiccms-parent目录中执行mvneclipse:eclipse命令或gradIeeclipse命令,生成

eclipse配置

>首先选择File菜单中的lmport(导入)

SBJavaEE-Eclipse

FileEditNavigateSearchProjectRunWindov

NewAlt+Shift+N>

OpenFile...

CloseCtrl+W

CloseAllCtrl+Shift+W

团SaveCtrl+S

SaveAs...

噫SaveAllCtrl+Shift+S

Revert

Move...

陷Rename...F2

W)RefreshF5

ConvertLineDelimitersTo>

@Print..Ctrl+P

SwitchWorkspace>

Restart

wImport...

Export...

PropertiesAlt+Enter

Exit

在弹出的导入对话框中选择General->ExistingProjectsintoWorkspace(导入已有的工程)

SBImport□X

Select

Createnewprojectsfromanarchivefileordirectory.

3

Selectanimportsource:

typefiltertext

v&General

期ArchiveFile

ExistingProjectsintoWorkspace

口FileSystem

口Preferences

》&CVS

>0EJB

>Git

>0Gradle

>bGrails

>&Install

>&JavaEE

Next>|FinishCancel

uixems

ASelectrootdirectory(选择跟目录),浏览选择publiccms-parent目录

SBnport□X浏览文件夹

ImportProjectsSelectrootdirectoryoftheprojectstoimport

SelectadirectorytosearchforexistingEclipseprojects.二

pRepositories

@Selectrootdirectory:□

□codemirror-freemarker

OSelectarchivefile:□dwz-for-Public-CMS

□MicroProfile

Projects:

PublicCMS

>

.g*

SelectAll>

data

DeselectAll>doc

>publiccms-parent

Refresh

PublicCMS-preview

publiccms-parent

文件夹(F):

新建文件夹(M)

Options

I~~ICI

>勾选Searchfornestedprojects,点击finsh完成工程导入

SBImport□X

ImportProjects

SelectadirectorytosearchforexistingEclipseprojects.

@Selectrootdirectory:D:\repositories\PublicCMS\publiccms-7Browse...

OSelectarchivefile:Browse...

Projects:

旦publiccms(D:\repositories\PublicCMS\publiccms-parent\puSelectAll

0publiccms-analyzer(D:\repositories\PublicCMS\publiccms-i:

DeselectAll

口publiccms-common(D:\repositories\PublicCMS\publiccms-

0publiccms-core(D:\repositories\PublicCMS\publiccms-pare

Refresh

旦publiccms-j2cache(D:\repositories\PublicCMS\publiccms-p

0publiccms-oauth(D:\repositories\PublicCMS\publiccms-par

叼publiccms-parent(D:\repositories\PublicCMS\publiccms-pa

0publiccms-redis(D:\repositories\PublicCMS\publiccms-pan

<>

Options

I^ISearchfornestedproject^

l~~lCopyprojectsintoworkspace

□Hideprojectsthatalreadyexistintheworkspace

Workingsets

□AddprojecttoworkingsetsNew...

Workingsets:▼Select..

<BackNextFinishCancel

3.开发工具配置

开发工具配置选项是为了您更好的对publicCMS进行开发,并保持代码风格的一致性

3.01导入格式化文件(可选)

选择Window菜单下的Preferences菜单项

WindowHelp

NewWindow|

Editor>一

工HideToolbar

OpenPerspective>

ShowView>

CustomizePerspective...

SavePerspectiveAs...

ResetPerspective...

ClosePerspective

CloseAllPerspectives

Navigation>

WebBrowser>

Preferences

展开到Java->CodeStyle->Formatter选项卡点击Import按钮

10)

Preferences□X

Formatter9▼O▼▼

>General

ConfigureProjectSpecificSettings...

>Ant

Activeprofile:

>DataManagement

EditBoxEclipse[built-in]▼Edit..

FreeMarker

New...Import...ExportAll...

>Gradle

>GradleEnlDE

>GroovyPreview:

>Help/**A

HQLeditor*Asamplesourcefileforthecodeformatter

>Install/Update

*/

vJava

:反编译器

>Appearancepackagemypackage;

>BuildPath

7CodeStyleimportjava.util.LinkedList;

CleanUp

CodeTemplatepublicclassMylntStack{

FormatterprivatefinalLinkedListfStack;

OrganizeImpo

>CompilerpublicMyIntStack(){

>Debug

fStack=newLinkedList。;

Editor

>InstalledJREs}

JUnit

PropertiesFilesEcpublicintpop(){

>JavaEEreturn((Integer)fStack.removeFirst()

>JavaPersistence)

>JavaScript

>JBossToolspublicvoidpush(intelem){

JDTWeavingfStack.addFirst(newInteger(elem));v

>Maven<>

>Mylyn

RestoreDefaultsApply

©OK]Cancel

1

选择java.xml文件

ConfiaureProjectSoecificSettinas...

data>PublicCMS>doc>CodeFormattersv0^^'CodeFormatters"

0==▼Gl

名称人修改日期类型大小

□javajcml2015/9/2820:13XML文档31KB

□js.xml2015/9/2820:13XML文档30KB

使用相似的步骤导入js.xml到JavaScript->CodeStyle->Formatter中

3.02字符编码设置

工程的编码都是UTF-8格式

SBPropertiesforpubliccms-admin-by-maven□X

[typefiltertextResource9▼

:Resource

Path:/publiccms-admin-by-maven

Builders

Type:Project

Coverage

Location:E:\temp\publiccms-admin-by-maven

DeploymentAssembly

淬月日下午

HibernateSettingsLastmodified:20110812:29:58

JavaBuildPathTextfileencoding

>JavaCodeStyleOInheritedfromcontainer(GBK)

>JavaCompiler@Other:一

>JavaEditor

□Storetheencodingofderivedresourcesseparately

JavadocLocation

>MavenNewtextfilelinedelimiter

ProjectArchives@Inheritedfromcontainer(Windows)

ProjectFacets

OOtherWindows

ProjectReferences

Run/DebugSettings

TargetedRuntimes

>TaskRepository

TaskTags

>Validation

WildText

>XDoclet

RestoreDefaultsApply

OK]Cancel

12)

3.03验证设置

eclipse的代码验证并不能验证html和freemarker混合等语法,并会误报错误,取消勾选以

下Validator,有助于发现真正的错误信息

Client-sideJavaScript

HTMLSyntaxValidator

JavaScriptValidation

JSPContentValidator

XMLValidator

SfiPreferences

typefiltertextValidation

.•General

>Ant

>OoudFoundry0AllowprojectstooverridethMepreferencesettings

CodeRecommenders口SuspendAIIvalidators

DataManagementQSaveallmodifiedresourcesautomaticallypriortovalidating

EdrtBox0Show•confirmationdialogwh«nptrformingm»nualvalid«tions

■"Grille(STS)Theselectedyalidatorswillrunwf)envalidationisperformed:

VafidatorManualBuildS<Ringf

>Help

ApplicationClient(IJC)V»Kd«tor£)0

HQLeditor

CiasspathDependencyValidator0H

InstaH/Update

■--ideJavaScript*□3~~

••Javaw

>JavaEEConnector(1.0,1.5)Validator£0

>JavaPersistenceDTOValidatorsr

>JavaScriptEJB(IJC-2*Validatorg0

--JBossToolsEJB3J(ValidatorxP

>JSONEnterpriseApplication(IJC)Validatori团

''MavenFace*HTMLValidatoru

■Mylyn

HTMLSyntaxValidatorM-□

>0<xnphJavaScriptValidations□

>Plug-inDevelopmentJAXBValidatorj0

RemoteSystem,

JBOMTookProjectVafidatore0

Run/DebugJPAValidatorH

®

JSFApplicationConfigurationValida—0

StortExplorer?

KfViewValidator团

>Team囹

JSONVaEdatorw

>Terminaln

J$PConte«KValidator□

VaSdationM

JSPSyntaxValidator

>Web

■­WebS«rvicet

EnableAllDisableAll

>XML

QffmltfApply

OK]Cancel

3.04开发工具插件(可选)

FreeMarker编辑器Eclipse插件被包含在jbosstools中

/ibosstools/updates/stable/(需要选择IDE版本)

图Install

AvailableSoftware

Checktheitemsthatyouwishtoinstall.

Workwith:JBossTools4.1-Core-StableReleaseUpdateSite-/jbosstools/updates/stable/kepler▼Add...

通过过滤选择FreeMarkerIDE插件安装

需要注意的是该插件更新较慢,而且不是非常稳定,对于FreeMarker比较熟悉的人员来说,

{-}

它并不能加快开发速度,因此只建议FreeMarker的初学者或对FreeMarker指令不熟悉的开

发人员使用

4.工程配置

工程配置文件在src/main/resources目录下

perties为CMS配置文,牛

配置项描述备注

cms.filePathCMS数据目录的绝对路径

cms.masterSitelds管理站点ID多个ID以半角逗号分隔

cms.defaultSiteld默认站点ID

cms.tokenizerFactory分词器名称keyword,letteclowercase,

whitespace,edgengram,

ngram,pathhierarchy,pattern,

classic,standard,ax29urlemail,

thai,Wikipedia,hmmchinese

cms.task.threadCount任务计划线程数

cms.multipart.maxUploadSize上传文件文件大小最大值

其中cms.filePath配置项可以在启动时使用-Dcms.filePath参数制定

如果数据目录中instalLIock不存在或者数据库信息配置错误,则访问程序后默认跳转到安装

引导界面,根据界面提示填写数据库信息,并选择初始化数据库或升级数据库。您也可以自

己选择手动初始化或者升级数据库。

数据库初始化脚本在src/main/resources/initialization/sql/目录下;数据库升级

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论