⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pubnoteaction.java

📁 这是《Struts开发入门与项目实践》的源代码
💻 JAVA
字号:
package StudyNote;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import javax.servlet.ServletContext;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;

import java.util.*;
import javax.servlet.http.*;
import org.apache.struts.validator.DynaValidatorForm;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;

public final class PubNoteAction extends Action{  
	public ActionForward execute(
		ActionMapping mapping,
		ActionForm form,
		HttpServletRequest request,  
		HttpServletResponse response) throws Exception {
			
   		DynaValidatorForm noteForm = (DynaValidatorForm) form;         
		String title = (String)noteForm.get("title");
		String content = (String)noteForm.get("content");
		String talker = (String)noteForm.get("talker");
		
        HttpSession session = request.getSession();
		Vector noteList = new Vector();
		
   		ServletContext context = servlet.getServletContext();
		DataSource dataSource = 
			(DataSource)context.getAttribute(Constants.DATASOURCE_KEY);
						
        DB db = new DB(dataSource);
        
		String PageForward;
		Note note=new Note();
		note.setTitle(title);
		note.setContent(content);
		note.setTalker(talker);
		
		ActionMessages errors = new ActionMessages();
   		String username=(String)session.getAttribute(Constants.LOGIN_USERNAME_KEY);
        
		//避免重复提交
		if (!isTokenValid(request)){
			PageForward="toNoteMain";					
 			saveToken(request);  
 		}
		else {
 			resetToken(request);  //避免重复提交
			
			if (username==null){
            	errors.add(ActionMessages.GLOBAL_MESSAGE,
                           new ActionMessage("errors.accessDeny"));
				if (!errors.isEmpty()) {
					saveErrors(request, errors);
				} 
 				PageForward="toWrong";  
			}
        	else if (note.Insert(db)){
				noteList = Note.SearchNoteTitle(db,0);
				session.setAttribute(Constants.NOTE_LIST_KEY,noteList);
				PageForward="toNoteMain";					
			}
			else{
            	errors.add(ActionMessages.GLOBAL_MESSAGE,
                           new ActionMessage("errors.insertFail"));
				if (!errors.isEmpty()) {
					saveErrors(request, errors);
				} 
 				PageForward="toWrong";  
			}
		}
   		
		db.close();
	   	return (mapping.findForward(PageForward));					
 	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -