代宇航在com.ssm.entity中建类

王健旭在web目录中建.jsp页面添加类中相应的属性信息
喻廷屿在com.ssm.controller中建对应的Controller
孙佳兴在WEB-INF/view目录中建.jsp页面
赵文博调试并运行
main
your-name 4 weeks ago
parent ac11de0512
commit a4aadab8e4

@ -1,13 +0,0 @@
package com.ssm.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class FirstController {
@RequestMapping("hello")
public String hello(){
return "showFirst";
}
}

@ -1,4 +0,0 @@
package com.ssm.controller;
public class Main {
}

@ -0,0 +1,19 @@
package com.ssm.controller;
import com.ssm.entity.Product;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/product") // 类级别的请求路径
public class ProductController {
// 接收addProduct.jsp表单提交的参数直接封装成Product对象
@RequestMapping("/add")
public String addProduct(Product product) {
// 控制台打印商品信息,和你的要求一致
System.out.println("商品信息:" + product.toString());
// 跳转到WEB-INF/view/showProduct.jsp页面
return "showProduct";
}
}

@ -0,0 +1,20 @@
package com.ssm.entity;
public class Category {
private String cname; // 分类名称
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
@Override
public String toString() {
return "Category{" +
"cname='" + cname + '\'' +
'}';
}
}

@ -0,0 +1,117 @@
package com.ssm.entity;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
public class Product {
private Integer pid; // 商品id
private String pname; // 商品名
private Double marketPrice;// 商品单价
private Double shopPrice; // 商城价
private String image; // 商品图片
private String pdesc; // 描述
private Integer isHot; // 是否热门
@DateTimeFormat(pattern = "yyyy-MM-dd") // 日期格式化,和你表单的日期格式匹配
private Date pdate; // 上架日期
private Category category; // 关联分类对象
private Integer state = 0; // 状态
// Getter/Setter 方法必须写否则Spring无法自动注入参数
public Integer getPid() {
return pid;
}
public void setPid(Integer pid) {
this.pid = pid;
}
public String getPname() {
return pname;
}
public void setPname(String pname) {
this.pname = pname;
}
public Double getMarketPrice() {
return marketPrice;
}
public void setMarketPrice(Double marketPrice) {
this.marketPrice = marketPrice;
}
public Double getShopPrice() {
return shopPrice;
}
public void setShopPrice(Double shopPrice) {
this.shopPrice = shopPrice;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getPdesc() {
return pdesc;
}
public void setPdesc(String pdesc) {
this.pdesc = pdesc;
}
public Integer getIsHot() {
return isHot;
}
public void setIsHot(Integer isHot) {
this.isHot = isHot;
}
public Date getPdate() {
return pdate;
}
public void setPdate(Date pdate) {
this.pdate = pdate;
}
public Category getCategory() {
return category;
}
public void setCategory(Category category) {
this.category = category;
}
public Integer getState() {
return state;
}
public void setState(Integer state) {
this.state = state;
}
// toString方法控制台打印用和你输出格式一致
@Override
public String toString() {
return "Product{" +
"pid=" + pid +
", pname='" + pname + '\'' +
", marketPrice=" + marketPrice +
", shopPrice=" + shopPrice +
", image='" + image + '\'' +
", pdesc='" + pdesc + '\'' +
", isHot=" + isHot +
", pdate=" + pdate +
", categoryName=" + (category != null ? category.getCname() : null) +
", state=" + state +
'}';
}
}

@ -11,16 +11,15 @@
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 扫描控制器 -->
<context:component-scan base-package="com.ssm.controller"/>
<!-- 开启SpringMVC注解 -->
<mvc:annotation-driven/>
<!-- 视图解析器已修复能正确跳转到Success页面 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"/>
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>

@ -0,0 +1,10 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>结果页面</title>
</head>
<body>
<h1>Success!</h1>
<h2>商品信息已在控制台输出!</h2>
</body>
</html>

@ -4,6 +4,25 @@
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!-- 解决中文乱码 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- SpringMVC核心控制器 -->
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

@ -0,0 +1,59 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>添加商品</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/product/add" method="post">
<table border="1" align="center">
<tr>
<td>商品编号:</td>
<td><input type="text" name="pid" placeholder="请输入商品编号"/></td>
</tr>
<tr>
<td>商品名称:</td>
<td><input type="text" name="pname" placeholder="请输入商品名称"/></td>
</tr>
<tr>
<td>是否热门:</td>
<td>
<select name="isHot">
<option value="1">是</option>
<option value="0">否</option>
</select>
</td>
</tr>
<tr>
<td>市场价格:</td>
<td><input type="text" name="marketPrice" placeholder="请输入市场价格"/></td>
</tr>
<tr>
<td>销售价格:</td>
<td><input type="text" name="shopPrice" placeholder="请输入销售价格"/></td>
</tr>
<tr>
<td>商品图片:</td>
<td><input type="file" name="image"/></td>
</tr>
<tr>
<td>分类名称:</td>
<td><input type="text" name="category.cname" placeholder="请输入分类名称"/></td>
</tr>
<tr>
<td>商品描述:</td>
<td><textarea name="pdesc" rows="5" cols="35"></textarea></td>
</tr>
<tr>
<td>上架日期:</td>
<td><input type="text" name="pdate" placeholder="请输入上架日期格式yyyy-MM-dd"/></td>
</tr>
<tr>
<td align="right"><input type="reset" value="重置"/></td>
<td align="center">
<input type="submit" value="添加">
</td>
</tr>
</table>
</form>
</body>
</html>
Loading…
Cancel
Save