数据未从jsp表单插入mySQL数据库

时间:2015-11-19 04:38:01

标签: mysql hibernate jsp struts2

struts2和hibernate世界的新手。我设计了一个表单来执行CRUD操作。项目运行没有任何错误......但是当我提交表单时,值没有插入mySQL数据库。另一个问题 - 来自mySQL表的现有值未在jsp表单的数据表中填充。以下是来自jsp和其他类文件的代码。我需要了解我是否错过了这里的内容

<%-- 
Document   : ctsFrmCaseCategory
Created on : Nov 17, 2015, 9:30:00 PM
Author     : nishad
--%>

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"   "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="/struts-tags" prefix="s"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Registration Page</title>
<s:head />
<style type="text/css">
@import url(style.css);
</style>
</head>
<body>
<s:form action="saveOrUpdateCategory">
<s:push value="category">
    <s:hidden name="ccg_ID" />
    <s:textfield name="ccg_CategoryName" label="Category Name" />
            <s:textfield name="ccg_Description" label="Description" />
            <s:checkbox name="ccg_DeleteFlag" label="Delete User?" />
            <s:checkbox name="ccg_ActiveFlag" label="Active User?" />
    <s:hidden name="ccg_CreateDate" />
            <s:hidden name="ccg_CreateUser" />
            <s:hidden name="ccg_ModifyDate" />
            <s:hidden name="ccg_ModifyUser" />
            <s:submit />
</s:push>
</s:form>

<s:if test="categoryList.size() > 0">
<div class="content">
<table class="userTable" cellpadding="5px">
    <tr class="even">
        <th>Category Name</th>
        <th>Description</th>            
                    <th>Delete Flag</th>
        <th>Active Flag</th>
        <th>Create Date</th>
                    <th>Create User</th>
                    <th>Modify Date</th>
                    <th>Modify User</th>
    </tr>
    <s:iterator value="categoryList" status="categoryStatus">
        <tr
            class="<s:if test="#categoryStatus.odd == true ">odd</s:if><s:else>even</s:else>">
            <td><s:property value="ccg_CategoryName" /></td>
            <td><s:property value="ccg_Description" /></td>             
                            <td><s:property value="ccg_DeleteFlag" /></td>
            <td><s:property value="ccg_ActiveFlag" /></td>
            <td><s:property value="ccg_CreateDate" /></td>
            <td><s:property value="ccg_CreateUser" /></td>
                            <td><s:property value="ccg_ModifyDate" /></td>
            <td><s:property value="ccg_ModifyUser" /></td>
                            <td><s:url id="editURL" action="editCategory">
                                    <s:param name="ccg_ID" value="%{ccg_ID}"></s:param>
            </s:url> <s:a href="%{editURL}">Edit</s:a></td>
            <td><s:url id="deleteURL" action="deleteCategory">
                <s:param name="ccg_ID" value="%{ccg_ID}"></s:param>
            </s:url> <s:a href="%{deleteURL}">Delete</s:a></td>
        </tr>
    </s:iterator>
</table>
</div>
</s:if>
</body>
</html>

CategotyDAO.java代码---

package com.cts.dao;
import java.util.List;
import com.cts.domain.Category;

public interface CategoryDAO {

public void saveOrUpdateCategory(Category category);

public List<Category> listCategory();

public Category listCategoryById(Long categoryId);

public void deleteCategory(Long categoryId);
}

CategoryDAOImpl.java代码---

package com.cts.dao;
import java.util.List;

import org.hibernate.Session;
import org.hibernate.Transaction;

import com.googlecode.s2hibernate.struts2.plugin.annotations.SessionTarget;
import com.googlecode.s2hibernate.struts2.plugin.annotations.TransactionTarget;
import com.cts.domain.Category;

public class CategoryDAOImpl implements CategoryDAO {

    @SessionTarget
    Session session;

    @TransactionTarget
    Transaction transaction;

/**
 * Used to save or update a category.
 */
public void saveOrUpdateCategory(Category category) {
    try {
        session.saveOrUpdate(category);
    } catch (Exception e) {
        transaction.rollback();
        e.printStackTrace();
    }
}

/**
 * Used to delete a category.
 */
public void deleteCategory(Long categoryId) {
    try {
        Category category = (Category) session.get(Category.class, categoryId);
        session.delete(category);
    } catch (Exception e) {
        transaction.rollback();
        e.printStackTrace();
    } 
}

/**
 * Used to list all the categorys.
 */
@SuppressWarnings("unchecked")
public List<Category> listCategory() {
    List<Category> courses = null;
    try {
        courses = session.createQuery("from Category").list();
    } catch (Exception e) {
        e.printStackTrace();
    }
    return courses;
}

/**
 * Used to list a single category by Id.
 */
public Category listCategoryById(Long categoryId) {
    Category category = null;
    try {
        category = (Category) session.get(Category.class, categoryId);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return category;
}

}

CategoryAction.java代码---

package com.cts.web;

import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.cts.dao.CategoryDAO;
import com.cts.dao.CategoryDAOImpl;
import com.cts.domain.Category;

public class CategoryAction extends ActionSupport implements ModelDriven<Category> {

private static final long serialVersionUID = -6659925652584240539L;

private Category category = new Category();
private List<Category> categoryList = new ArrayList<Category>();
private CategoryDAO categoryDAO = new CategoryDAOImpl();

public Category getModel() {
    return category;
}

/**
 * To save or update category.
 * @return String
 */
public String saveOrUpdate()
{   
    categoryDAO.saveOrUpdateCategory(category);
    return SUCCESS;
}

/**
 * To list all categories.
 * @return String
 */
public String list()
{
    categoryList = categoryDAO.listCategory();
    return SUCCESS;
}

/**
 * To delete a category.
 * @return String
 */
public String delete()
{
    HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
    categoryDAO.deleteCategory(Long.parseLong(request.getParameter("ccg_ID")));
    return SUCCESS;
}

/**
 * To list a single category by Id.
 * @return String
 */
public String edit()
{
    HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
    category = categoryDAO.listCategoryById(Long.parseLong(request.getParameter("ccg_ID")));
    return SUCCESS;
}

public Category getCategory() {
    return category;
}

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

public List<Category> getCategoryList() {
    return categoryList;
}

public void setCategoryList(List<Category> categoryList) {
    this.categoryList = categoryList;
}

}

Category.java代码---

package com.cts.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

@Entity
@Table(name = "cts_mcasecategory")

public class Category {

private Long ccg_ID;
private String ccg_CategoryName;
private String ccg_Description;
private boolean ccg_DeleteFlag;
private boolean ccg_ActiveFlag;
private Date ccg_CreateDate;
private int ccg_CreateUser;
private Date ccg_ModifyDate;
private int ccg_ModifyUser;

@Id
@GeneratedValue
@Column(name = "ccg_ID")
public Long getCcg_ID() {
    return ccg_ID;
}

public void setCcg_ID(Long ccg_ID) {
    this.ccg_ID = ccg_ID;
}

@Column(name = "ccg_CategoryName")
public String getCcg_CategoryName() {
    return ccg_CategoryName;
}

public void setCcg_CategoryName(String ccg_CategoryName) {
    this.ccg_CategoryName = ccg_CategoryName;
}

@Column(name = "ccg_Description")
public String getCcg_Description() {
    return ccg_Description;
}

public void setCcg_Description(String ccg_Description) {
    this.ccg_Description = ccg_Description;
}

@Column(name = "ccg_DeleteFlag")
public boolean isCcg_DeleteFlag() {
    return ccg_DeleteFlag;
}

public void setCcg_DeleteFlag(boolean ccg_DeleteFlag) {
    this.ccg_DeleteFlag = ccg_DeleteFlag;
}

@Column(name = "ccg_ActiveFlag")
public boolean isCcg_ActiveFlag() {
    return ccg_ActiveFlag;
}

public void setCcg_ActiveFlag(boolean ccg_ActiveFlag) {
    this.ccg_ActiveFlag = ccg_ActiveFlag;
}

@Column(name = "ccg_CreateDate")
public Date getCcg_CreateDate() {
    return ccg_CreateDate;
}

public void setCcg_CreateDate(Date ccg_CreateDate) {
    this.ccg_CreateDate = ccg_CreateDate;
}

@Column(name = "ccg_CreateUser")
public int getCcg_CreateUser() {
    return ccg_CreateUser;
}

public void setCcg_CreateUser(int ccg_CreateUser) {
    this.ccg_CreateUser = ccg_CreateUser;
}

@Column(name = "ccg_ModifyDate")
public Date getCcg_ModifyDate() {
    return ccg_ModifyDate;
}

public void setCcg_ModifyDate(Date ccg_ModifyDate) {
    this.ccg_ModifyDate = ccg_ModifyDate;
}

@Column(name = "ccg_ModifyUser")
public int getCcg_ModifyUser() {
    return ccg_ModifyUser;
}

public void setCcg_ModifyUser(int ccg_ModifyUser) {
    this.ccg_ModifyUser = ccg_ModifyUser;
}

}

Struts.xml

<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<include file="example.xml"/>
<!-- Configuration for the default package. -->
<package name="default" extends="struts-default">
    <action name="saveOrUpdateCategory" method="saveOrUpdate" class="com.cts.web.CategoryAction">
        <result name="success" type="redirect">listCategory</result>
    </action>
    <action name="listCategory" method="list" class="com.cts.web.CategoryAction">
        <result name="success">/ctsFrmCaseCategory.jsp</result>
    </action>
    <action name="editCategory" method="edit" class="com.cts.web.CategoryAction">
        <result name="success">/ctsFrmCaseCategory.jsp</result>
    </action>
    <action name="deleteCategory" method="delete" class="com.cts.web.CategoryAction">
        <result name="success" type="redirect">listCategory</result>
    </action>
</package>

0 个答案:

没有答案