企业权限管理系统第3章--产品操作
生活随笔
收集整理的這篇文章主要介紹了
企业权限管理系统第3章--产品操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本章需求
- 查找所有產品的操作
- 添加產品的操作
查詢所有產品流程
添加產品流程
數據庫與表結構
product表
| 1 | id | varchar2(32) | 無意義,主鍵uuid |
| 2 | productNum | varchar2(50) | 產品編號,唯一,不為空 |
| 3 | productName | varchar2(50) | 產品名稱(路線名稱) |
| 4 | cityName | varchar2(50) | 出發城市 |
| 5 | DepartureTime | timestamp | 出發時間 |
| 6 | productPrice | number | 出發時間 |
| 7 | productDesc | varchar2(500) | 產品描述 |
| 8 | productStatus | int | 狀態(0 關閉1 開啟) |
建表與插入數據的sql語句
CREATE TABLE product( id varchar2(32) default SYS_GUID() PRIMARY KEY, productNum VARCHAR2(50) NOT NULL, productName VARCHAR2(50), cityName VARCHAR2(50), DepartureTime timestamp, productPrice Number, productDesc VARCHAR2(500), productStatus INT, CONSTRAINT product UNIQUE (id, productNum) )insert into PRODUCT (id, productnum, productname, cityname, departuretime, productprice, productdesc, productstatus) values ('676C5BD1D35E429A8C2E114939C5685A', 'itcast-002', '北京三日游', '北京', to_timestamp('10- 10-2018 10:10:00.000000', 'dd-mm-yyyy hh24:mi:ss.ff'), 1200, '不錯的旅行', 1); insert into PRODUCT (id, productnum, productname, cityname, departuretime, productprice, productdesc, productstatus) values ('12B7ABF2A4C544568B0A7C69F36BF8B7', 'itcast-003', '上海五日游', '上海', to_timestamp('25- 04-2018 14:30:00.000000', 'dd-mm-yyyy hh24:mi:ss.ff'), 1800, '魔都我來了', 0); insert into PRODUCT (id, productnum, productname, cityname, departuretime, productprice, productdesc, productstatus) values ('9F71F01CB448476DAFB309AA6DF9497F', 'itcast-001', '北京三日游', '北京', to_timestamp('10- 10-2018 10:10:00.000000', 'dd-mm-yyyy hh24:mi:ss.ff'), 1200, '不錯的旅行', 1);編寫實體類
Product實體類關鍵代碼
private String id; // 主鍵private String productNum; // 編號唯一private String productName; // 名稱private String cityName; // 出發城市@DateTimeFormat(pattern="yyyy-MM-dd HH:mm")private Date departureTime; // 出發時間private String departureTimeStr;private double productPrice; // 產品價格private String productDesc; // 產品描述private Integer productStatus; // 狀態0 關閉1 開啟private String productStatusStr;注意在jsp頁面獲取出發日期時,需要的是日期字符串,這里將departureTime轉換成字符串
public String getDepartureTimeStr() {if (departureTime != null) {departureTimeStr = DateUtils.date2String(departureTime, "yyyy-MM-dd HH:mm:ss");}return departureTimeStr;}產品狀態同理進行設置,狀態0 關閉1 開啟
public String getProductStatusStr() {if (productStatus != null) {// 狀態 0,關閉;1,開啟productStatusStr = (productStatus == 0) ? "關閉" : "開啟"; /* if (productStatus == 0) {productStatusStr = "關閉";} else {productStatusStr = "開啟";}*/}return productStatusStr;}上面涉及到日期格式轉換,需要在ssm_easm_utils模塊下com.cncs.utils包下創建工具類DateUtils,在需要進行日期轉換的屬性的get方法內調用相應方法。
public class DateUtils {/*** Date轉為String* @param date 需要進行轉換的日期* @param pattern 轉換的格式* @return*/public static String date2String(Date date,String pattern){SimpleDateFormat sdf=new SimpleDateFormat(pattern);String format = sdf.format(date);return format;}/*** String轉換為Date* @param date 需要進行解析并生成Date類型的字符串* @param pattern 解析的格式* @return* @throws ParseException*/public static Date string2Date(String date,String pattern) throws ParseException {SimpleDateFormat sdf = new SimpleDateFormat(pattern);Date parse = sdf.parse(date);return parse;} }注解@DateTimeFormat說明:
- 它只能作用于單個屬性上,局部有作用。
- 將用戶輸入的日期字符串,按照指定格式轉換成Date類型。
編寫dao層接口
public interface IProductDao {@Select("select * from product where id=#{id}")Product findById(String id);@Select("select * from product")public List<Product> findAll();@Insert("insert into product(productNum,productName,cityName,departureTime,productPrice,productDesc,productStatus) values(#{productNum},#{productName},#{cityName},#{departureTime},#{productPrice},#{productDesc},#{productStatus})")void save(Product product); }編寫service層接口
public interface IProductService {public List<Product> findAll();void save(Product product); }編寫service層實現類
- 使用@Service注解,將它交給Spring管理
- 使用@Transactionl注解,表明這個類進行了事務控制
編寫ProductController
@Controller @RequestMapping("/product") public class ProductController {@Autowiredprivate IProductService productService;@RequestMapping("/save.do")public String save(Product product){productService.save(product);return "forward:/product/findAll.do";}/*** 查詢所有* @return*///@RolesAllowed({"USER","ADMIN"})@RequestMapping("/findAll.do")public ModelAndView findAll(){ModelAndView mv = new ModelAndView();List<Product> list = productService.findAll();//System.out.println(list);mv.addObject("productList",list);mv.setViewName("product-list");return mv;} }編寫jsp代碼
product-list.jsp關鍵代碼
<table id="dataList" class="table table-bordered table-striped table-hover dataTable"><thead><tr><th class="" style="padding-right: 0px;"><inputid="selall" type="checkbox" class="icheckbox_square-blue"></th><th class="sorting_asc">ID</th><th class="sorting_desc">編號</th><th class="sorting_asc sorting_asc_disabled">產品名稱</th><th class="sorting_desc sorting_desc_disabled">出發城市</th><th class="sorting">出發時間</th><th class="text-center sorting">產品價格</th><th class="sorting">產品描述</th><th class="text-center sorting">狀態</th><th class="text-center">操作</th></tr></thead><tbody><c:forEach items="${productList}" var="product"><tr><td><input name="ids" type="checkbox"></td><td>${product.id }</td><td>${product.productNum }</td><td>${product.productName }</td><td>${product.cityName }</td><td>${product.departureTimeStr }</td><td class="text-center">${product.productPrice }</td><td>${product.productDesc }</td><td class="text-center">${product.productStatusStr }</td><td class="text-center"><button type="button" class="btn bg-olive btn-xs">訂單</button><button type="button" class="btn bg-olive btn-xs">詳情</button><button type="button" class="btn bg-olive btn-xs">編輯</button></td></tr></c:forEach></tbody> </table>注意jsp要使用jstl標簽,頁面頭部需要導入jstl標簽庫
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>product-add.jsp關鍵代碼
<form action="${pageContext.request.contextPath}/product/save.do" method="post"><!-- 正文區域 --><section class="content"> <!--產品信息--><div class="panel panel-default"><div class="panel-heading">產品信息</div><div class="row data-type"><div class="col-md-2 title">產品編號</div><div class="col-md-4 data"><input type="text" class="form-control" name="productNum"placeholder="產品編號" value=""></div><div class="col-md-2 title">產品名稱</div><div class="col-md-4 data"><input type="text" class="form-control" name="productName"placeholder="產品名稱" value=""></div><div class="col-md-2 title">出發時間</div><div class="col-md-4 data"><div class="input-group date"><div class="input-group-addon"><i class="fa fa-calendar"></i></div><input type="text" class="form-control pull-right"id="datepicker-a3" name="departureTime"></div></div><div class="col-md-2 title">出發城市</div><div class="col-md-4 data"><input type="text" class="form-control" name="cityName"placeholder="出發城市" value=""></div><div class="col-md-2 title">產品價格</div><div class="col-md-4 data"><input type="text" class="form-control" placeholder="產品價格"name="productPrice" value=""></div><div class="col-md-2 title">產品狀態</div><div class="col-md-4 data"><select class="form-control select2" style="width: 100%"name="productStatus"><option value="0" selected="selected">關閉</option><option value="1">開啟</option></select></div><div class="col-md-2 title rowHeight2x">其他信息</div><div class="col-md-10 data rowHeight2x"><textarea class="form-control" rows="3" placeholder="其他信息"name="productDesc"></textarea></div></div></div><!--訂單信息/--> <!--工具欄--><div class="box-tools text-center"><button type="submit" class="btn bg-maroon">保存</button><button type="button" class="btn bg-default"onclick="history.back(-1);">返回</button></div><!--工具欄/--> </section><!-- 正文區域 /--> </form>頁面顯示效果
product-list.jsp頁面顯示效果
product-add.jsp頁面顯示效果
總結
以上是生活随笔為你收集整理的企业权限管理系统第3章--产品操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最新爱客CMS米酷优化版源码 免授权带伪
- 下一篇: 脉冲变压器的磁学