3.9K Star 16.9K Fork 5.2K

卓源软件 / JeeSite 4.6 and 5.3

 / 详情

新建的表设置了id为自增非空主键,用代码生成工具自动生成的创建页,保存时传id=null导致报错

Backlog
Opened this issue  
2023-04-03 19:18

是什么问题、该问题是怎么引起的?

  1. 新建单表,用代码生成工具生成代码,主键id为非空自增、必填,自动生成的创建页,传id=null导致报错

重现步骤、期望结果、截图、代码

package com.jeesite.modules.test.web;

import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.jeesite.common.config.Global;
import com.jeesite.common.entity.Page;
import com.jeesite.common.web.BaseController;
import com.jeesite.modules.test.entity.TestUser;
import com.jeesite.modules.test.service.TestUserService;

/**
 * test_userController
 * @author system
 * @version 2023-04-03
 */
@Controller
@RequestMapping(value = "${adminPath}/test/testUser")
public class TestUserController extends BaseController {

	@Autowired
	private TestUserService testUserService;
	
	/**
	 * 获取数据
	 */
	@ModelAttribute
	public TestUser get(Long id, boolean isNewRecord) {
		return testUserService.get(String.valueOf(id), isNewRecord);
	}
	
	/**
	 * 查询列表
	 */
	@RequiresPermissions("test:testUser:view")
	@RequestMapping(value = {"list", ""})
	public String list(TestUser testUser, Model model) {
		model.addAttribute("testUser", testUser);
		return "modules/test/testUserList";
	}
	
	/**
	 * 查询列表数据
	 */
	@RequiresPermissions("test:testUser:view")
	@RequestMapping(value = "listData")
	@ResponseBody
	public Page<TestUser> listData(TestUser testUser, HttpServletRequest request, HttpServletResponse response) {
		testUser.setPage(new Page<>(request, response));
		Page<TestUser> page = testUserService.findPage(testUser);
		return page;
	}

	/**
	 * 查看编辑表单
	 */
	@RequiresPermissions("test:testUser:view")
	@RequestMapping(value = "form")
	public String form(TestUser testUser, Model model) {
		model.addAttribute("testUser", testUser);
		return "modules/test/testUserForm";
	}

	/**
	 * 保存数据
	 */
	@RequiresPermissions("test:testUser:edit")
	@PostMapping(value = "save")
	@ResponseBody
	public String save(@Validated TestUser testUser) {
		testUserService.save(testUser);
		return renderResult(Global.TRUE, text("保存test_user成功!"));
	}
	
	/**
	 * 停用数据
	 */
	@RequiresPermissions("test:testUser:edit")
	@RequestMapping(value = "disable")
	@ResponseBody
	public String disable(TestUser testUser) {
		testUser.setStatus(TestUser.STATUS_DISABLE);
		testUserService.updateStatus(testUser);
		return renderResult(Global.TRUE, text("停用test_user成功"));
	}
	
	/**
	 * 启用数据
	 */
	@RequiresPermissions("test:testUser:edit")
	@RequestMapping(value = "enable")
	@ResponseBody
	public String enable(TestUser testUser) {
		testUser.setStatus(TestUser.STATUS_NORMAL);
		testUserService.updateStatus(testUser);
		return renderResult(Global.TRUE, text("启用test_user成功"));
	}
	
	/**
	 * 删除数据
	 */
	@RequiresPermissions("test:testUser:edit")
	@RequestMapping(value = "delete")
	@ResponseBody
	public String delete(TestUser testUser) {
		testUserService.delete(testUser);
		return renderResult(Global.TRUE, text("删除test_user成功!"));
	}
	
}

实际结果、报错信息、截图

输入图片说明
输入图片说明
代码

保存报错

这里贴错误信息

环境版本:

  • JDK版本:1.8
  • 浏览器版本:Chrome 版本 111.0.5563.147(正式版本) (64 位)
  • 平台版本:JeeSite 4.6

Comments (1)

imemoir created任务
imemoir changed description
imemoir changed title
imemoir changed description
Expand operation logs

推荐id字典类型为varchar,字符串类型。如果必须用数值,看这篇文章:https://jeesite.com/docs/dao-mybatis/#主键自增字段

Sign in to comment

Status
Assignees
Milestones
Pull Requests
Successfully merging a pull request will close this issue.
Branches
Planed to start   -   Planed to end
-
Top level
Priority
参与者(2)
6732 thinkgem 1651893329
Java
1
https://gitee.com/thinkgem/jeesite4.git
git@gitee.com:thinkgem/jeesite4.git
thinkgem
jeesite4
JeeSite 4.6 and 5.3

Search

10d9f8b4 4838521 8bde8327 4838521