版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PublicCMSV4.0
二次開發(fā)手冊
目錄
第——章PublicCMS介紹1
1.概述1
2.授權(quán)協(xié)議1
3.獲取PublicCMS1
4.目錄結(jié)構(gòu)2
第二章開發(fā)工具集成3
1.Maven工程導(dǎo)入3
2.普通工程導(dǎo)入6
3.開發(fā)工具配置9
4.工程配置14
5.工程調(diào)試14
6.工程發(fā)布20
7.工程運行23
第三章二次開發(fā)23
1.工程代碼簡介23
2.Hibernate實體自動生成24
3.邏輯代碼及頁面自動生成33
4.Mybatis代碼自動生成36
第四章服務(wù)支持37
1.免費支持37
第一章PublicCMS介紹
i.概述
PublicCMS采用2020年最新主流JAVA技術(shù)開發(fā);完全開源,架構(gòu)科學(xué),SE。友好,輕
松支撐千萬數(shù)據(jù)、千萬PV;目前已經(jīng)擁有全球0.0002%的用戶,諸多明星網(wǎng)站案例。提供
免費版本產(chǎn)品、免費技術(shù)支持,為您快速建站,建設(shè)大規(guī)模站點提供強大驅(qū)動,也是企業(yè)級
項目產(chǎn)品原型的良好選擇。
PublicCMS同時支持動態(tài)站點,靜態(tài)站點的建設(shè)。
PublicCMS支持多站點建設(shè),各個站點之間數(shù)據(jù)、模板完全分離。
2.授權(quán)協(xié)議
一、授權(quán)許可
1.1您可以免費修改、復(fù)制、分發(fā)本軟件及本軟件的源碼
1.2您可以免費獲得的基于免費協(xié)議的授權(quán)文件,并獲得非商業(yè)用途的使用權(quán)限,非商業(yè)
用途限個人用戶使用
1.3商業(yè)用途用戶允許不超過3個月的試用,試用期間,基于本軟件開發(fā)的頁面必須在顯
著位置添加PoweredbyPublicCMS標(biāo)識,并保留產(chǎn)品中的授權(quán)及l(fā)ogo等標(biāo)識
1.4在將本軟件用作商業(yè)用途時,需要取得軟件版權(quán)方商業(yè)使用授權(quán),授權(quán)單位應(yīng)為最終
使用產(chǎn)品的用戶單位
1.5已獲得商業(yè)授權(quán)的用戶可以使用、復(fù)制、修改、分發(fā)本軟件(含源碼)及包含本軟件(含
源碼)的產(chǎn)品
1.6該協(xié)議僅對當(dāng)前版本有效,歷史已發(fā)布版本請參照軟件發(fā)布時附帶的授權(quán)協(xié)議
二、版權(quán)
2.1該軟件版權(quán)歸PublicCMS官方所有
三、免責(zé)聲明
3.1本軟件及所附帶的文件是作為不提供任何明確的或隱含的賠償或擔(dān)保的形式提供的
3.2用戶出于自愿而使用本軟件,您必須了解使用本軟件的風(fēng)險,在尚未購買產(chǎn)品技術(shù)服
務(wù)之前,我們不承諾提供任何形式的技術(shù)支持、使用擔(dān)保,也不承擔(dān)任何因使用本軟件而產(chǎn)
生問題的相關(guān)責(zé)任
3.獲取PublicCMS
PublicCMS源碼托管
GITEE:https:〃/sanluan/PublicCMS
GITHUB:https:〃/sanluan/PublicCMS
】)
4.目錄結(jié)構(gòu)
data/publiccms
publiccms-parent
?publiccms-parent為PublicCMS源碼工程
?data/publiccms為PublicCMS數(shù)據(jù)目錄
早錄中包含以下子目錄
indexes
task
template
web
其中indexes目錄為數(shù)據(jù)全文索引文件,由系統(tǒng)自動生成,task目錄為任務(wù)計劃腳本,
template為模板文件目錄,web為靜態(tài)化文件和資源文件存放目錄
{2}
第二章開發(fā)工具集成
導(dǎo)入到開發(fā)工具中后,您可以自由的編譯和修改PublicCMS源碼,進行二次開發(fā)等。以下步
驟Eclipse為例,下載地址https:〃www.eclipse.orR/downloads/
1.Maven工程導(dǎo)入
4.01操作步驟
>首先選擇File菜單中的lmport(導(dǎo)入)
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
>在彈出的導(dǎo)入對話框中選擇Maven->ExistingMavenProjects(導(dǎo)入已有的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完成工程導(dǎo)入
{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.普通工程導(dǎo)入
4.02操作步驟
>在publiccms-parent目錄中執(zhí)行mvneclipse:eclipse命令或gradIeeclipse命令,生成
eclipse配置
>首先選擇File菜單中的lmport(導(dǎo)入)
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
在彈出的導(dǎo)入對話框中選擇General->ExistingProjectsintoWorkspace(導(dǎo)入已有的工程)
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完成工程導(dǎo)入
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.開發(fā)工具配置
開發(fā)工具配置選項是為了您更好的對publicCMS進行開發(fā),并保持代碼風(fēng)格的一致性
3.01導(dǎo)入格式化文件(可選)
選擇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
使用相似的步驟導(dǎo)入js.xml到JavaScript->CodeStyle->Formatter中
3.02字符編碼設(shè)置
工程的編碼都是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驗證設(shè)置
eclipse的代碼驗證并不能驗證html和freemarker混合等語法,并會誤報錯誤,取消勾選以
下Validator,有助于發(fā)現(xiàn)真正的錯誤信息
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開發(fā)工具插件(可選)
FreeMarker編輯器Eclipse插件被包含在jbosstools中
/ibosstools/updates/stable/(需要選擇IDE版本)
圖Install
AvailableSoftware
Checktheitemsthatyouwishtoinstall.
Workwith:JBossTools4.1-Core-StableReleaseUpdateSite-/jbosstools/updates/stable/kepler▼Add...
通過過濾選擇FreeMarkerIDE插件安裝
需要注意的是該插件更新較慢,而且不是非常穩(wěn)定,對于FreeMarker比較熟悉的人員來說,
{-}
它并不能加快開發(fā)速度,因此只建議FreeMarker的初學(xué)者或?qū)reeMarker指令不熟悉的開
發(fā)人員使用
4.工程配置
工程配置文件在src/main/resources目錄下
perties為CMS配置文,牛
配置項描述備注
cms.filePathCMS數(shù)據(jù)目錄的絕對路徑
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任務(wù)計劃線程數(shù)
cms.multipart.maxUploadSize上傳文件文件大小最大值
其中cms.filePath配置項可以在啟動時使用-Dcms.filePath參數(shù)制定
如果數(shù)據(jù)目錄中instalLIock不存在或者數(shù)據(jù)庫信息配置錯誤,則訪問程序后默認跳轉(zhuǎn)到安裝
引導(dǎo)界面,根據(jù)界面提示填寫數(shù)據(jù)庫信息,并選擇初始化數(shù)據(jù)庫或升級數(shù)據(jù)庫。您也可以自
己選擇手動初始化或者升級數(shù)據(jù)庫。
數(shù)據(jù)庫初始化腳本在src/main/resources/initialization/sql/目錄下;數(shù)據(jù)庫升級
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024至2030年中國通風(fēng)網(wǎng)行業(yè)投資前景及策略咨詢研究報告
- 年度脂環(huán)烴競爭策略分析報告
- 2025屆江蘇省江陰初級中學(xué)高二物理第一學(xué)期期末教學(xué)質(zhì)量檢測模擬試題含解析
- 2025屆浙江省杭州七縣區(qū)物理高一上期中復(fù)習(xí)檢測模擬試題含解析
- 2025屆青海省海南市物理高一上期末統(tǒng)考試題含解析
- 2025屆重慶市育仁中學(xué)物理高二第一學(xué)期期中聯(lián)考模擬試題含解析
- 2025屆遼寧省營口市物理高二第一學(xué)期期中調(diào)研模擬試題含解析
- 西藏拉薩市那曲第二高級中學(xué)2025屆物理高三第一學(xué)期期中聯(lián)考試題含解析
- 2025屆浙江省嘉興市重點名校物理高一上期中綜合測試模擬試題含解析
- 福建省南安一中2025屆物理高一上期末聯(lián)考模擬試題含解析
- 創(chuàng)新創(chuàng)業(yè)實訓(xùn)智慧樹知到期末考試答案章節(jié)答案2024年西安理工大學(xué)
- 2024屆宜賓市九年級語文上學(xué)期期中考試卷附答案解析
- 大學(xué)生國家安全教育智慧樹知到期末考試答案2024年
- 2024繼續(xù)教育《醫(yī)學(xué)科研誠信與醫(yī)學(xué)了研究倫理》答案
- 硫磺安全技術(shù)說明書MSDS
- 國開電大《工程數(shù)學(xué)(本)》形成性考核作業(yè)5答案
- 鉆井常用計算公式
- 混凝土澆筑監(jiān)理旁站記錄(完整)
- 創(chuàng)傷的救治流程PPT課件
- 上公司財務(wù)風(fēng)險分析與防范——以蘇寧云商為例
- 價值觀考核評定表
評論
0/150
提交評論