1. 程式人生 > >web學習之部落格小專案(登入註冊模組)

web學習之部落格小專案(登入註冊模組)

這個小專案採用的框架是struts2+spring3+hibernate3  

將action與hibernate整合到spring中

剛入手時,還是沒有層次性,想到什麼就先寫什麼,寫完之後再回頭看時覺得之前自己是怎麼想的怎麼會那樣做敲打

就我個人而言,我覺得開發步驟應該是:

1、明確需求和目的,確定開發環境與框架

2、建立工程,匯入相應的jar包與配置檔案。在這個專案中配置檔案主要是applicationContext.xml、struts.xml、jdbc.properties、web.xml等

jar包主要包括以下幾個部分

Struts2的jar包:

* struts2框架解壓路徑/apps/struts2-blank.war/WEB-INF/lib/*.jar

* struts2框架解壓路徑/lib/struts2-spring-plugin-2.3.15.3.jar

* struts2框架解壓路徑/lib/struts2-json-plugin-2.3.15.3.jar

Spring的jar包:

* Spring開發基本jar包

* spring框架解壓路徑/lib/spring-beans-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-context-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-core-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-expression-3.2.0.RELEASE.jar

* spring框架依賴包解壓路徑/com.springsource.org.apache.commons.logging-1.1.1.jar

* spring框架依賴包解壓路徑/com.springsource.org.apache.log4j-1.2.15.jar

* Spring的AOP開發(Aspectj)

* spring框架解壓路徑/lib/spring-aop-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-aspects-3.2.0.RELEASE.jar

* spring框架依賴包解壓路徑/com.springsource.org.aopalliance-1.0.0.jar

* spring框架依賴包解壓路徑/com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar

* Spring的JDBC支援、事務管理、整合Hibernate

* spring框架解壓路徑/lib/spring-jdbc-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-tx-3.2.0.RELEASE.jar

* spring框架解壓路徑/lib/spring-orm-3.2.0.RELEASE.jar

* Spring整合web專案:

* spring框架解壓路徑/lib/spring-web-3.2.0.RELEASE.jar

* Spring整合Junit單元測試:

* spring框架解壓路徑/lib/spring-test-3.2.0.RELEASE.jar

Hibernate框架jar包:

* hibernate框架解壓路徑/hibernate3.jar

* hibernate框架解壓路徑/lib/required/*.jar

* hibernate框架解壓路徑/lib/jpr/*.jar

* hibernate框架整合log4j

* slf4j-log4j12-1.7.2.jar

* 資料庫驅動包

* c3p0連線池jar包.

3、資料庫的建立

4、jsp頁面的建立

5、action、service、dao層的開發

以下是登入、註冊頁面的樣式(比較簡陋尷尬



註冊與登入都配有相應的前後臺校驗,樣式簡陋了點,之後還會進行潤色。

註冊成功後3秒跳轉到登入頁面,登入成功3秒後跳轉到部落格個性化設定模組,後續會講到。

public class Login extends ActionSupport implements ModelDriven<User>{
	private User user = new User();
	private UserService userService;
	private HttpServletRequest request = ServletActionContext.getRequest();
	public void setUserService(UserService userService) {
		this.userService = userService;
	}
	public User getModel() {
		// TODO Auto-generated method stub
		return user;
	}
	public String login() throws Exception {
		if(userService.loginUser(user))
		{
			ActionContext.getContext().getSession().put("username", user.getUsername());
			request.setAttribute("url", "user/getBlogInfo.action");
			request.setAttribute("info", "登入成功");
			return SUCCESS;
		}else {
			request.setAttribute("url", "login.jsp");
			request.setAttribute("info", "登入失敗");
			return ERROR;
		}
	}
}
public class Register extends ActionSupport implements ModelDriven<User>{
		private User user = new User();
		private UserService userService;
		private HttpServletRequest request = ServletActionContext.getRequest();
		public void setUserService(UserService userService) {
			this.userService = userService;
		}
		public User getModel() {
			return user;
		}
		public String register() throws Exception {
			if(userService.registerUser(user))
			{
				return SUCCESS;
			}else {
				return ERROR;
			}
		}
}

程式碼沒有采用註解方式開發,後續打算改為註解。

小白寫的小專案,還存在很多問題和待完善的地方,望各位看了後提出意見建議大笑