栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Struts增删改

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Struts增删改

一.新建maven项目步骤

 2.导入jar包依赖


  4.0.0
  com.zy
  maven_2
  war
  0.0.1-SNAPSHOT
  maven_2 Maven Webapp
  http://maven.apache.org
   
    UTF-8
    1.8
    1.8
    3.7.0

    
    
    8.0.19
    
    4.12
    4.0.0
    2.9.3
    1.2
    1.1.2
    8.0.47
    1.9.3
    1.6.1
    1.1.6
2.5.13
  
  
  
  
			org.apache.struts
			struts2-core
			${struts2-core.version}
		
		
    
      jaxen
      jaxen
      ${jaxen.version}
    

    
      dom4j
      dom4j
      ${dom4j.version}
    


    
      commons-beanutils
      commons-beanutils
      ${commons-beanutils.version}
    

    
    
      mysql
      mysql-connector-java
      ${mysql.version}
    

    
      junit
      junit
      ${junit.version}
      test
    

    
      javax.servlet
      javax.servlet-api
      ${servlet.version}
      provided
    

    
      com.fasterxml.jackson.core
      jackson-databind
      ${jackson.version}
    
    
      com.fasterxml.jackson.core
      jackson-core
      ${jackson.version}
    
    
      com.fasterxml.jackson.core
      jackson-annotations
      ${jackson.version}
    

    
      jstl
      jstl
      ${jstl.version}
    
    
      taglibs
      standard
      ${standard.version}
    
    
      org.apache.tomcat
      tomcat-jsp-api
      ${tomcat-jsp-api.version}
    

    
      org.projectlombok
      lombok
      1.18.10
      provided
    

    
      com.belerweb
      pinyin4j
      2.5.0
    

    
      com.github.davidcarboni
      encrypted-file-upload
      2.1.0
    
  


  
    maven_2
    
    
    
				org.apache.maven.plugins
				maven-compiler-plugin
				3.7.0
				
					1.8
					1.8
					UTF-8
				
			
    
    
  

3.导入一些帮助类

 ②.以及分页的tld文件




    
  zking 1.1 core library
  zking core
  1.1
  zking
  http://jsp.veryedu.cn
  
 
  
    page
    com.zking.tag.PageTag
    JSP
    
        pageBean
        true
        true
    
  
  

二.Struts的增删改查

1.新建实体类(要与数据库一致噢)

package com.zy.entity;

public class Clz {
	private int cid;
	private String cname;
	private String cteacher;
	private String pic;
	public int getCid() {
		return cid;
	}
	public void setCid(int cid) {
		this.cid = cid;
	}
	public String getCname() {
		return cname;
	}
	public void setCname(String cname) {
		this.cname = cname;
	}
	public String getCteacher() {
		return cteacher;
	}
	public void setCteacher(String cteacher) {
		this.cteacher = cteacher;
	}
	public String getPic() {
		return pic;
	}
	public void setPic(String pic) {
		this.pic = pic;
	}
	public Clz() {
		// TODO Auto-generated constructor stub
	}
	public Clz(int cid, String cname, String cteacher, String pic) {
		super();
		this.cid = cid;
		this.cname = cname;
		this.cteacher = cteacher;
		this.pic = pic;
	}
	@Override
	public String toString() {
		return "Clz [cid=" + cid + ", cname=" + cname + ", cteacher=" + cteacher + ", pic=" + pic + "]";
	}
	
}

2.dao方法

package com.zy.dao;

import java.util.List;

import com.zy.crud.util.baseDao;
import com.zy.crud.util.PageBean;
import com.zy.entity.Clz;

public class ClzDao  extends baseDao{
	
	public List list(Clz clz, PageBean pageBean) throws Exception {
		// TODO Auto-generated method stub
		String sql="select * from t_struts_class where 1=1";
		int cid = clz.getCid();
		if(cid!=0) {
			sql+=" and cid="+cid;
		}
		return super.executeQuery(sql, Clz.class, pageBean);
	}


	public void add(Clz t ) throws Exception {
		// TODO Auto-generated method stub
		String sql="insert into t_struts_class values(?,?,?,?) ";
		super.executeUpdate(sql, t,new String[] {"cid","cname","cteacher","pic"});
	}
	
	public void del( Clz t) throws Exception {
		// TODO Auto-generated method stub
		String sql="delete from t_struts_class where cid=?";
		super.executeUpdate(sql, t,new  String[] {"cid"});
	}
	
	public void edit( Clz t) throws Exception {
		// TODO Auto-generated method stub
		String sql="update  t_struts_class set cname=?,cteacher=?,pic=? where cid=?";
		super.executeUpdate(sql, t,new String[] {"cname","cteacher","pic","cid"});
	}
}

3.子控制器

①.建立baseAction的原因:

           1.编码习惯问题,容易出现大小写配置错误

           2.每个子控制器都要实现对应接口,拿到request和respons对象

           3.向前端页面反馈的数据变量不统一 

package com.zy.crud.util;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

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

public abstract class baseAction extends ActionSupport implements ServletRequestAware,ServletResponseAware,ModelDriven{
	protected  HttpServletRequest req;
	protected  HttpServletResponse resp;
	protected  HttpSession session;
	//1.编码习惯问题,容易出现大小写配置错误
	protected static final String LIST="list";
	protected static final String TOLIST="toList";
	protected static final String TOEDIT="toEdit";
	//2.每个子控制器都要实现对应接口,拿到request,response对象
	@Override
	public void setServletResponse(HttpServletResponse arg0) {
		this.resp=arg0;
		
		
	}
	
	@Override
	public void setServletRequest(HttpServletRequest arg0) {
		this.req=arg0;
		this.session=arg0.getSession();
	}
	
	//3.向前端页面反馈的数据变量不统一
	protected Object result;
	protected Object msg;
	protected int code;
	public Object getResult() {
		return result;
	}

	public void setResult(Object result) {
		this.result = result;
	}

	public Object getMsg() {
		return msg;
	}

	public void setMsg(Object msg) {
		this.msg = msg;
	}

	public int getCode() {
		return code;
	}

	public void setCode(int code) {
		this.code = code;
	}
	

}

②. ClzAction继承baseAction

package com.zy.web;

import com.opensymphony.xwork2.ActionSupport;
import com.zy.crud.util.baseAction;
import com.zy.crud.util.PageBean;
import com.zy.dao.ClzDao;
import com.zy.entity.Clz;

public class ClzAction extends baseAction{
	private Clz clz=new Clz();
	private ClzDao clzDao=new ClzDao();
	
	

	public String list() throws Exception {
	PageBean pageBean=new PageBean();
	pageBean.setRequest(req);
	this.result=this.clzDao.list(clz, pageBean);
	this.req.setAttribute("result", result);
	this.req.setAttribute("pageBean", pageBean);
		return LIST;
	}
	

	public String toEdit() throws Exception {
		int cid = clz.getCid();
		if(cid!=0) {
			this.result=this.clzDao.list(clz,null).get(0);
			this.req.setAttribute("result", result);
		}
		return TOEDIT;
	}
	

	public String add() throws Exception {
	this.clzDao.add(clz);
		return TOLIST;
	}
	
	
	public String del() throws Exception {
		this.clzDao.del(clz);
		return TOLIST;
	}
	
	
	public String edit() throws Exception {
		this.clzDao.edit(clz);
		return TOLIST;
	}
	
	
	@Override
	public Clz getModel() {
		// TODO Auto-generated method stub
		return clz;
	}

}

4. struts-sy.xml配置




	
	
 
	/bookEdit.jsp
	 
	
	
	 
	/bookEdit.jsp
	 
	
	 
	/clzList.jsp
	/clzEdit.jsp
	/clz_list
	 
	
	

5.web.xml中配置的核心过滤器StrutsPrepareAndExecuteFilter;



  Archetype Created Web Application

struts
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter



struts
*.action



6.clzList.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ taglib uri="http://jsp.veryedu.cn" prefix="z"%>	
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>	






列表

.page-item input {
	padding: 0;
	width: 40px;
	height: 100%;
	text-align: center;
	margin: 0 6px;
}

.page-item input, .page-item b {
	line-height: 38px;
	float: left;
	font-weight: 400;
}

.page-item.go-input {
	margin: 0 10px;
}



	
新增
ID 名字 教员 图片 操作
${b.cid } ${b.cname} ${b.cteacher } ${b.pic } 修改 删除

7.clzEdit.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




的编辑界面


id:
title:
cteacher:

8.运行结果

①主页样式

 ②.增加样式

 ③.修改样式

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329096.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号