Struts2增删改查

还是老话,学习MVC框架一阶段后最好的实践方法就是自己写一套增删改查

环境:jdk1.7 tomcat7 struts2

应用的jar包:

这是required包里的,自己加了个日志包。

目录:

以下贴代码:

package Action;

import java.util.List;
import java.util.Map;

import org.apache.struts2.interceptor.RequestAware;

import Dao.StudentDao;
import Model.Student;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;

public class studentAction extends ActionSupport implements ModelDriven
  
   ,RequestAware{
	private Map
   
     request;
	private Student student;
	public String add(){
		StudentDao.addStudent(student);
		List
    
      list = StudentDao.getList();
		request.put("list", list);
		return "add";
	}
	public String delete(){
		StudentDao.deleteStudent(student.getId());
		List
     
       list = StudentDao.getList();
		request.put("list", list);
		return "delete";
	}
	public String update(){
		student = StudentDao.getStudent(student.getId());
		request.put("student", student);
		return "update";
	}
	public void setRequest(Map
      
        request) {
		// TODO Auto-generated method stub
		this.request = request;
	}

	public Student getModel() {
		// TODO Auto-generated method stub
		student =  new Student();
		return student;
	}
}


//dao层
package Dao;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import Model.Student;

public class StudentDao {
	private static Map
       
         map; static{ map = new HashMap
        
         (); } public StudentDao(){ } public static void addStudent(Student student){ if(map.containsKey(student.getId())) { updateStudent(student); return; } map.put(student.getId(), student); } public static void deleteStudent(String id){ if(map.containsKey(id)) map.remove(id); else return; } public static void updateStudent(Student student){ map.put(student.getId(), student); } public static Student getStudent(String id){ return map.get(id); } public static List
         
           getList(){ List
          
            list = new ArrayList
           
            (); Set
            
             
              > set = map.entrySet(); Iterator
              
               
                > it =set.iterator(); while(it.hasNext()){ list.add(it.next().getValue()); } return list; } } //model package Model; public class Student { private String id; private String name; private String age; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } } 
               
              
             
            
           
          
         
        
       
      
     
    
   
  
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>



  
    学生信息管理
     href="<%=path %>/css/index.css" rel="stylesheet">
  
  
	
   
Student_id
Student_name
Student_age
<%@include file="list.jsp" %> <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Student_idStudent_nameStudent_ageeditdelete
${student.id }${student.name }${student.age }
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> edit Student href="<%=path%>/css/index.css" rel="stylesheet">
Student_id
Student_name
Student_age

   

   
  
    	
 	
    
        
     
      struts2
     
        
     
      org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
     
    
    

    
    
        
     
      struts2
     
        
     
      /*
     
    
    

   



   



   

    
    
    
    
    
    
	
    
    
		
		
     
     
		
     
			
      
       /index.jsp
      
			
      
       /student.jsp
      
		
     
      
    
    


   


//css
@charset "utf-8";
.all{
	width:600px;
	margin: 0 auto;
	margin-top:200px;
}

.student_add{
	width:600px;
}
.student_add table{
	width:600px;
}



.student_list{
	width:600px;
}

.student_list table{
	width:600px;
}

.student_list table tr:HOVER{
	background: #eee;
}


ps:顺便提一提jsp:include 和 @include的区别:
前者支持传参数,即动态编译,后者静态编译
两者最重要区别的就是前者是先编译后包含,后者是先包含后编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值