Java高级架构师(一)第28节:Index、商品详细页和购物车

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<link href="${pageContext.request.contextPath}/static/css/application.css" rel="stylesheet">
<script src="${pageContext.request.contextPath}/static/js/application.js"></script>
<script src="${pageContext.request.contextPath}/static/js/jquery-1.11.0.js"></script>
</head>
<body>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="myTag" tagdir="/WEB-INF/tags" %>

<table width="70%" align="center">
<tr>
		<td colspan=4><a href="${pageContext.request.contextPath}/toCart">查看购物车</a></td>
	</tr>
<c:set var="num" value="0"></c:set>
<c:forEach var="m" items="${page.result}">
	<c:if test="${num==0}">
		<tr>
	</c:if>
		<td>
			<a href="${pageContext.request.contextPath}/toGoodsDesc/${m.uuid}">
			<table>
				<tr>
					<td><img  src="${pageContext.request.contextPath}/static/images/logo.jpg"/></td>
					<td>${m.description }</td>
				</tr>
				<tr>
					<td>${m.name }</td>
				</tr>
			</table>
			</a>
		</td>
		<c:set var="num" value="${num+1}"></c:set>
	<c:if test="${num==3}">
		<c:set var="num" value="0"></c:set>
		</tr>
	</c:if>
</c:forEach>
</table>

</body>
</html>

关于Goods的控制器

package com.sishuok.architecture1.goodsmgr.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import com.sishuok.architecture1.goodsmgr.service.IGoodsService;
import com.sishuok.architecture1.goodsmgr.vo.GoodsModel;
import com.sishuok.architecture1.goodsmgr.vo.GoodsQueryModel;
import com.sishuok.pageutil.Page;
import com.sishuok.util.format.DateFormatHelper;
import com.sishuok.util.json.JsonHelper;

@Controller
@RequestMapping(value="/goods")
public class GoodsController {
	@Autowired
	private IGoodsService iservice = null;

	@RequestMapping(value="toAdd",method=RequestMethod.GET)
	public String toAdd(){

		return "goods/add";
	}
	@RequestMapping(value="add",method=RequestMethod.POST)
	public String add(@ModelAttribute("m") GoodsModel m){
		iservice.create(m);
		return "goods/success";
	}
	@RequestMapping(value="toUpdate/{uuid}",method=RequestMethod.GET)
	public String toUpdate(Model model,@PathVariable("uuid") int uuid){
		GoodsModel m = iservice.getByUuid(uuid);
		model.addAttribute("m", m);
		return "goods/update";
	}
	@RequestMapping(value="update",method=RequestMethod.POST)
	public String post(@ModelAttribute("m") GoodsModel m){
		iservice.update(m);
		return "goods/success";
	}
	@RequestMapping(value="toDelete/{uuid}",method=RequestMethod.GET)
	public String toDelete(Model model,@PathVariable("uuid") int uuid){
		GoodsModel m = iservice.getByUuid(uuid);
		model.addAttribute("m", m);
		return "goods/delete";
	}
	@RequestMapping(value="delete",method=RequestMethod.POST)
	public String post(@RequestParam("uuid") int uuid){
		iservice.delete(uuid);
		return "goods/success";
	}
	@RequestMapping(value="toList",method=RequestMethod.GET)
	public String toList(@ModelAttribute("wm")GoodsWebModel wm,Model model){
		GoodsQueryModel qm = null;
		if(wm.getQueryJsonStr()==null || wm.getQueryJsonStr().trim().length()==0){
			qm =  new GoodsQueryModel();
		}else{
			String s = wm.getQueryJsonStr();
			s = s.replace("-", "%");
			qm = (GoodsQueryModel)JsonHelper.str2Object(s, GoodsQueryModel.class);
		}

		qm.getPage().setNowPage(wm.getNowPage());
		if(wm.getPageShow() > 0){
			qm.getPage().setPageShow(wm.getPageShow());
		}

		Page dbPage = iservice.getByConditionPage(qm);

		//
		model.addAttribute("wm", wm);
		model.addAttribute("page", dbPage);

		return "goods/list";
	}
	@RequestMapping(value="toQuery",method=RequestMethod.GET)
	public String toQuery(){
		return "goods/query";
	}
}

  

 

原文地址:https://www.cnblogs.com/sunrunzhi/p/10175487.html

时间: 2024-11-07 18:10:44

Java高级架构师(一)第28节:Index、商品详细页和购物车的相关文章

怎么成为java高级架构师?图灵学院总结的java架构师学习路线

怎么成为一个java高级架构师呢?相信这是很多java从业者,又或者说是coder/码农们比较感兴趣的问题,要回答这个问题,首先需要明白的是java架构师是什么?简单点说,架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.主要着眼于系统的"技术实现",工作内容就是确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节.扫清主要难点的技术人员,并且需要有良好的组织管理能力.因此应该是特定的开发平台.语言.工具的大师,对常见应用场景能马上给出最

点燃java高级架构师的成长之路!

作者:java高级进阶链接:https://www.nowcoder.com/discuss/72575来源:牛客网 金三银四跳槽旺季,每个人都想有一份高薪资,环境好,且稳定的工作,现在已经是四月份了,跳槽旺季还剩最后一个月,你们都准备好了么?你们吃饭的技术过硬么?你们准备好进名企了么?最主要的是,你们是一名资深架构师么?想成为架构师么?还是继续每天坚持加班的桥写代码??????这些问题,只有你们能明白且自己解决. 现在正是需要我们认真考虑的时候,要如何提高我们的编程能力,要怎样努力才可以成为一

好好讲一讲,到底什么是Java高级架构师!

一. 什么是架构师 曾经有这么个段子: 甲:我已经应聘到一家中型软件公司了,今天上班的时候,全公司的人都来欢迎我. 乙:羡慕ing,都什么人来了? 甲:CEO.COO.CTO.All of 程序员,还有会计.司机都来了. 乙:哇,他们太重视你了,人才啊,这么多人迎接你! 甲:没有啊,就一个人! 乙:靠,#%¥$%... 很多的创业公司,一人身兼数职的情形还是很常见的.至少,我是经历过的,一个人包办了所有的开发过程,连测试我都做了,绝对的一条龙,但是经常踩钢丝.骑独轮车总会有失足的时候,结果有一次

Java高级架构师(一)第13节:Spring MVC实现Web层开发

package com.sishuok.architecture1.customermgr.web; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.Mo

Java高级架构师(一)第20节:X-gen生成需要的Action

package cn.javass.themes.smvcsm.actions; import cn.javass.xgen.genconf.vo.ModuleConfModel; import cn.javass.xgen.geninvocation.BaseGenAction; import cn.javass.xgen.geninvocation.decorator.GenComponent; public class GenAddPageAction extends BaseGenAct

Java高级架构师(一)第24节:加入ehcache,把工程加入到Git

ehcache的maven配置: <!-- ehcache的jar --> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.8.0</version> </dependency> ehcache的配置文件: <?xml version="1.0&quo

优效学院JAVA高级架构师视频教程

课程目录: 01-项目简介Springboot简介入门配置项目准备 02-MariaDB主从安装SpringBoot整合MyBatis配置 03-MyBatis主从实现代码读写分离应用以及实现 04-RocketMQ入门及其使用(一) 05-RocketMQ入门及其使用(二) 06-RocketMQ与项目整合 07-消息可靠性投递和幂等设计与实现 08-ZooKeeper学习使用 09-Zookeeper整合RocketMQ代码实现 10-生产.消费平台消息业务场景讲解(一) 11-生产.消费平

京东后端Java高级架构师面经+面试题:Spring+多线程+NIO+MySQL

之前面了腾讯的提前批,不过没走流程.同期还面了阿里的两轮面试,被告知不走流程就不能面了,所以也没面完. 后来走了京东这边的流程.前几天刚刚面完HR. 正好今天分享一下面经,大家可以多交流交流哈. 京东面经 第一轮:电话初面 第二轮:技术面谈 第三轮:高管复试 第四轮:HR最后确认 第一轮电话初面: 首先确认对京东的意向度(如果异地更会考虑对工作地点(北京)的意向度!京东很看重这个):其次面试官一般会针对您所做过的项目来做具体技术的交流,会比较关注个人对项目细节是不是掌握到位,主要考察Java的技

2017最新技术java高级架构、千万高并发、分布式集群、架构师入门到精通视频教程

* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战视频教程 视频课程包含: 高级Java架构师包含:Spring boot.Spring  cloud.Dubbo.Redis.ActiveMQ.Nginx.Mycat