Java的待辦事項管理申請。 DHBW Karlsruhe的基於Web的數據庫應用程序的學校項目。
這是Java中實現的服務器端MVC Web應用程序的一個示例。該應用程序在“ Jakarta Enterprise Edition”(以前為“ Java Enterprise Edition”)上設置,因此在專門設計的應用程序服務器中運行。所有應用程序邏輯均由服務器實現,因此為應用程序的每個URL模式調用了完全服務器生成的HTML頁面並在瀏覽器中顯示。
在開發過程中,我們使用了專門配置的Tomee服務器。德比數據庫用作數據庫。兩者都包含在我們的文件中上傳到項目交付的文件。該應用使用Maven作為構建工具和軟件包管理。通過這種方式,雅加達所需的API,但沒有進一步的依賴性。該應用程序的源代碼的結構如下:
使用以下開發工具:
在JustDoit.common.jpa.user和Justdoit.common.ejb.userbean的類中,實現了用戶管理。該應用程序在數據庫中管理一個單獨的表,其中保存了用戶,密碼和分配的用戶組。
但是,身份驗證和授權是由應用程序服務器進行的,必須相應地配置。這意味著應用程序服務器必須知道用戶保存哪些表。這是基於文件/Web Pages/WEB-INF/web.xml中的設置。
有一些特定的設置需要允許需要的操作。最後,以下行是
<realm-name>justdoit</realm-name>
分配了該領域。對於具有用戶,密碼和權限的任何數據庫而言,領域只是一個不錯的術語。
在Tomee中,這是通過conf/server.xml配置文件中的以下幾行進行的:該領域的定義由文件/Web Pages/META-INF/context.xml中的以下行完成。
<Realm
className = "org.apache.catalina.realm.DataSourceRealm"
dataSourceName = "Default-Database-Unmanaged"
userTable = "justdoit.justdoit_user"
userNameCol = "username"
userCredCol = "password_hash"
userRoleTable = "justdoit.user_group"
roleNameCol = "groupname"
>
<CredentialHandler
className = "org.apache.catalina.realm.MessageDigestCredentialHandler"
algorithm = "SHA-256"
/>
</Realm>
dataSourceName連接中提到的數據庫連接必須定義為文件conf/tomee.xml中的以下內容:
<Resource id="Derby-Sample-Managed" type="javax.sql.DataSource">
JdbcDriver = org.apache.derby.jdbc.ClientDriver
JdbcUrl = jdbc:derby://localhost:1527/sample
UserName = app
Password = app
JtaManaged = true
</Resource>
<Resource id="Derby-Sample-Unmanaged" type="javax.sql.DataSource">
JdbcDriver = org.apache.derby.jdbc.ClientDriver
JdbcUrl = jdbc:derby://localhost:1527/sample
UserName = app
Password = app
JtaManaged = false
</Resource>
該示例基於NetBeans的一部分的Derby示例數據庫。
電子郵件運輸是使用Javamail API實施的。所需設置的一部分保存在JSON文件中: src/main/resources/mailConfig.json
{
"from": "",
"host": "",
"port": "",
"username": "",
"password": ""
}
from :應顯示為發送者地址的地址。host :郵政出口性別(SMTP服務器)的地址port :輸出服務器的端口(SMTP服務器)username :郵件提供商帳戶的用戶名password :郵件提供商的帳戶密碼該項目以創意共享名稱4.0國際許可
©2018-2019AndréGöller,Tim Schneider,Ansgar Lichter