how2j.cn

下载区
文件名 文件大小
ssh.rar 16m

解压rar如果失败,请用5.21版本或者更高版本的winrar

点击下载 winrar5.21

工具版本兼容问题
SSH的CRUD需要的步骤比较繁琐,无法在一个知识点讲清楚,所以。。。直接给出了我做好的CRUD 可运行项目



步骤 1 :

下载右上角的可运行项目

edit
下载右上角的可运行项目,部署成功后,访问地址:

http://127.0.0.1:8080/ssh/listProduct
下载右上角的可运行项目


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2020-04-26 为什么categorys = categorytService.list();在ProductAction中报空指针?
questionandresult




如题:
ProductAction:
package com.how2java.action;

import java.util.ArrayList;
import java.util.List;


import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.springframework.beans.factory.annotation.Autowired;

import com.how2java.pojo.Category;
import com.how2java.pojo.Product;
import com.how2java.service.CategoryService;
import com.how2java.service.ProductService;

@Namespace("/")
@ParentPackage("struts-default")
@Results({@Result(name = "listJSP",location = "/product/list.jsp"),
    @Result(name="listProductAction",type ="redirect",location = "listProduct"),
    @Result(name = "editJSP",location = "/product/edit.jsp")})
public class ProductAction {
	@Autowired
	ProductService productService;
	CategoryService categorytService;
	List<Product> products;
	Product product;
	List<Category> categorys;
	Category category;
	
	
	
	@Action("listProduct")
	public String list() {
		
		categorys = categorytService.list();
		
		if(null!=category){
			category = categorytService.get(category.getId());
			products = new ArrayList(  category.getProducts());
			return "listJSP";
		}
		else{
			products = productService.list();
			return "listJSP";	
		}	
	}
	
	public void list1() {
		categorys = categorytService.list();
		for(Category p:categorys) {
			System.out.println(p.getName());
		}
	}
	
	@Action("addProduct")
	public String add() {
		productService.add(product);
		return "listProductAction";
	}
	@Action("deleteProduct")
	public String delete() {
		productService.delete(product);
		return "listProductAction";
	}
	@Action("updateProduct")
	public String update() {
		productService.update(product);
		return "listProductAction";
	}
	@Action("editProduct")
	public String edit(){
		product = productService.get(product.getId());
		return "editJSP";
	}


	public List<Product> getProducts() {
		return products;
	}

	public void setProducts(List<Product> products) {
		this.products = products;
	}

	public List<Category> getCategorys() {
		return categorys;
	}

	public void setCategorys(List<Category> categorys) {
		this.categorys = categorys;
	}

	public Category getCategory() {
		return category;
	}

	public void setCategory(Category category) {
		this.category = category;
	}

	public Product getProduct() {
		return product;
	}

	public void setProduct(Product product) {
		this.product = product;
	}
	
}
HTTP Status 500 – Internal Server Error


Type Exception Report

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception
java.lang.NullPointerException
	com.how2java.action.ProductAction.list(ProductAction.java:38)


1 个答案

chilidog
答案时间:2024-03-24
这里 CategoryService 上没有注解,就没有被 spring 注入数据,导致为 null



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2020-03-22 那个delete的调用过程
Pluto7

我是能运行的 但是看代码不是很懂delete的调用流程,listProduct里面的deleteProduct怎么调用的呀







回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2018-12-22 项目运行时报出大量错误
2018-12-15 这个action是如何找到后台Action的 然后把数据提交
2018-05-02 一直提示找不到ProductAction是怎么回事?不太清楚


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 4 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 JAVA 框架-SSH-CRUD 示例 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图