基于javaweb+mysql的ssm建材商城系统(java+ssm+jsp+jquery+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM建材商城系统(java+ssm+jsp+jquery+mysql)
项目介绍
本项目分为前后台,前台为普通用户登录,后台为管理员登录; 管理员角色包含以下功能: 管理员登录,管理员管理,注册用户管理,新闻公告管理,建材类型管理,配货点管理,建材商品管理,建材订单管理,建材评价管理等功能。 用户角色包含以下功能: 查看我的订单,用户首页,网站公告,销售网络,用户登录注册,查看建材详情,查看购物车,下订单,查看订单并付款等功能。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目:否;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+CSS+JavaScript+jQuery
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:8080/ 登录 用户账号/密码: user/123456 管理员账号/密码:admin/admin
return "admin/listjiancai";
}
// 按条件查询数据 (模糊查询)
@RequestMapping("queryJiancaiByCond.action")
public String queryJiancaiByCond(String cond, String name, String number) {
Jiancai jiancai = new Jiancai();
if (cond != null) {
if ("jiancainame".equals(cond)) {
jiancai.setJiancainame(name);
}
if ("image".equals(cond)) {
jiancai.setImage(name);
}
if ("cateid".equals(cond)) {
jiancai.setCatename(name);
}
if ("price".equals(cond)) {
jiancai.setPrice(name);
}
if ("recommend".equals(cond)) {
jiancai.setRecommend(name);
}
if ("thestart".equals(cond)) {
jiancai.setThestart(name);
}
if ("theend".equals(cond)) {
jiancai.setTheend(name);
}
if ("hits".equals(cond)) {
jiancai.setHits(name);
}
if ("sellnum".equals(cond)) {
jiancai.setSellnum(name);
}
if ("contents".equals(cond)) {
jiancai.setContents(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
Topic topic = new Topic();
topic.setJiancaiid(id);
List<Topic> topicList = this.topicService.getTopicByCond(topic);
this.getRequest().setAttribute("topicList", topicList);
this.getRequest().setAttribute("tnum", topicList.size());
return "users/detail";
}
@RequestMapping("addTopic.action")
public String addTopic(Topic topic) {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
topic.setAddtime(VeDate.getStringDateShort());
topic.setContents(this.getRequest().getParameter("contents"));
topic.setJiancaiid(this.getRequest().getParameter("goodsid"));
topic.setNum(this.getRequest().getParameter("num"));
topic.setUsersid(userid);
this.topicService.insertTopic(topic);
return "redirect:/index/detail.action?id=" + topic.getJiancaiid();
}
}
package com.action;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/admin", produces = "text/plain;charset=utf-8")
public class AdminAction extends BaseAction {
// 注入Service 由于标签的存在 所以不需要getter setter
@Autowired
@Resource
private AdminService adminService;
String userid = (String) this.getSession().getAttribute("userid");
Cart cart = new Cart();
cart.setJiancaiid(getRequest().getParameter("goodsid"));
cart.setNum(getRequest().getParameter("num"));
cart.setPrice(getRequest().getParameter("price"));
cart.setUsersid(userid);
this.cartService.insertCart(cart);
return "redirect:/index/cart.action";
}
// 查看购物车
@RequestMapping("cart.action")
public String cart() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
Cart cart = new Cart();
cart.setUsersid(userid);
List<Cart> cartList = this.cartService.getCartByCond(cart);
this.getRequest().setAttribute("cartList", cartList);
return "users/cart";
}
// 删除购物车中的产品
@RequestMapping("deletecart.action")
public String deletecart(String id) {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
this.cartService.deleteCart(id);
return "redirect:/index/cart.action";
}
// 准备结算
@RequestMapping("preCheckout.action")
public String preCheckout() {
this.front();
return "redirect:/details/getAllDetails.action";
}
// 批量删除数据
@RequestMapping("deleteDetailsByIds.action")
public String deleteDetailsByIds() {
String[] ids = this.getRequest().getParameterValues("detailsid");
for (String detailsid : ids) {
this.detailsService.deleteDetails(detailsid);
}
return "redirect:/details/getAllDetails.action";
}
// 更新数据
@RequestMapping("updateDetails.action")
public String updateDetails(Details details) {
this.detailsService.updateDetails(details);
return "redirect:/details/getAllDetails.action";
}
// 显示全部数据
@RequestMapping("getAllDetails.action")
public String getAllDetails(String number) {
List<Details> detailsList = this.detailsService.getAllDetails();
PageHelper.getPage(detailsList, "details", null, null, 10, number, this.getRequest(), null);
return "admin/listdetails";
}
// 按条件查询数据 (模糊查询)
@RequestMapping("queryDetailsByCond.action")
public String queryDetailsByCond(String cond, String name, String number) {
Details details = new Details();
if (cond != null) {
if ("ordercode".equals(cond)) {
details.setOrdercode(name);
}
if ("jiancaiid".equals(cond)) {
details.setJiancaiid(name);
}
if ("num".equals(cond)) {
details.setNum(name);
if (cartList.size() == 0) {
this.getRequest().setAttribute("message", "请选购建材");
return "redirect:/index/cart.action";
} else {
// 获取一个1200-9999的随机数 防止同时提交
String ordercode = "PD" + VeDate.getStringDatex();
double total = 0;
for (Cart cart : cartList) {
Details details = new Details();
details.setDetailsid(VeDate.getStringDatex() + (Math.random() * 9 + 1) * 1200);
details.setJiancaiid(cart.getJiancaiid());
details.setNum(cart.getNum());
details.setOrdercode(ordercode);
details.setPrice(cart.getPrice());
details.setPeihuoid(this.getRequest().getParameter("peihuoid"));
details.setCityid(this.getRequest().getParameter("cityid"));
details.setViewdate(this.getRequest().getParameter("viewdate"));
this.detailsService.insertDetails(details);
Jiancai goods = this.jiancaiService.getJiancaiById(cart.getJiancaiid());
goods.setSellnum("" + (Integer.parseInt(goods.getSellnum()) + Integer.parseInt(cart.getNum())));
this.jiancaiService.updateJiancai(goods);
total += Double.parseDouble(cart.getPrice()) * Double.parseDouble(cart.getNum());
this.cartService.deleteCart(cart.getCartid());
}
Orders orders = new Orders();
orders.setAddtime(VeDate.getStringDateShort());
orders.setOrdercode(ordercode);
orders.setStatus("未付款");
orders.setTotal("" + total);
orders.setUsersid(userid);
this.ordersService.insertOrders(orders);
}
return "redirect:/index/showOrders.action";
}
// 查看订购
@RequestMapping("showOrders.action")
public String showOrders(String number) {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
@RequestMapping("getCateById.action")
public String getCateById(String id) {
Cate cate = this.cateService.getCateById(id);
this.getRequest().setAttribute("cate", cate);
return "admin/editcate";
}
public CateService getCateService() {
return cateService;
}
public void setCateService(CateService cateService) {
this.cateService = cateService;
}
}
package com.action;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/city", produces = "text/plain;charset=utf-8")
public class CityAction extends BaseAction {
// 注入Service 由于标签的存在 所以不需要getter setter
@Autowired
@Resource
private CityService cityService;
// 准备添加数据
@RequestMapping("createCity.action")
public String createCity() {
return "admin/addcity";
}
// 全部产品
@RequestMapping("all.action")
public String all(String number) {
this.front();
List<Jiancai> flimList = new ArrayList<Jiancai>();
List<Jiancai> tempList = this.jiancaiService.getAllJiancai();
int pageNumber = tempList.size();
int maxPage = pageNumber;
if (maxPage % 12 == 0) {
maxPage = maxPage / 12;
} else {
maxPage = maxPage / 12 + 1;
}
if (number == null) {
number = "0";
}
int start = Integer.parseInt(number) * 12;
int over = (Integer.parseInt(number) + 1) * 12;
int count = pageNumber - over;
if (count <= 0) {
over = pageNumber;
}
for (int i = start; i < over; i++) {
Jiancai x = tempList.get(i);
flimList.add(x);
}
String html = "";
StringBuffer buffer = new StringBuffer();
buffer.append(" 共为");
buffer.append(maxPage);
buffer.append("页 共有");
buffer.append(pageNumber);
buffer.append("条 当前为第");
buffer.append((Integer.parseInt(number) + 1));
buffer.append("页 ");
if ((Integer.parseInt(number) + 1) == 1) {
buffer.append("首页");
} else {
buffer.append("<a href=\"index/all.action?number=0\">首页</a>");
}
buffer.append(" ");
if ((Integer.parseInt(number) + 1) == 1) {
buffer.append("上一页");
} else {
buffer.append("<a href=\"index/all.action?number=" + (Integer.parseInt(number) - 1) + "\">上一页</a>");
}
buffer.append(" ");
if (maxPage <= (Integer.parseInt(number) + 1)) {
buffer.append("下一页");
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
Cart cart = new Cart();
cart.setUsersid(userid);
List<Cart> cartList = this.cartService.getCartByCond(cart);
if (cartList.size() == 0) {
this.getRequest().setAttribute("message", "请选购建材");
return "redirect:/index/cart.action";
}
List<City> cityList = this.cityService.getAllCity();
this.getRequest().setAttribute("cityList", cityList);
return "users/checkout";
}
// 结算
@RequestMapping("checkout.action")
public String checkout() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
Cart cart1 = new Cart();
cart1.setUsersid(userid);
List<Cart> cartList = this.cartService.getCartByCond(cart1);
if (cartList.size() == 0) {
this.getRequest().setAttribute("message", "请选购建材");
return "redirect:/index/cart.action";
} else {
// 获取一个1200-9999的随机数 防止同时提交
String ordercode = "PD" + VeDate.getStringDatex();
double total = 0;
for (Cart cart : cartList) {
Details details = new Details();
details.setDetailsid(VeDate.getStringDatex() + (Math.random() * 9 + 1) * 1200);
details.setJiancaiid(cart.getJiancaiid());
details.setNum(cart.getNum());
details.setOrdercode(ordercode);
details.setPrice(cart.getPrice());
details.setPeihuoid(this.getRequest().getParameter("peihuoid"));
details.setCityid(this.getRequest().getParameter("cityid"));
details.setViewdate(this.getRequest().getParameter("viewdate"));
this.detailsService.insertDetails(details);
Jiancai goods = this.jiancaiService.getJiancaiById(cart.getJiancaiid());
goods.setSellnum("" + (Integer.parseInt(goods.getSellnum()) + Integer.parseInt(cart.getNum())));
this.jiancaiService.updateJiancai(goods);
total += Double.parseDouble(cart.getPrice()) * Double.parseDouble(cart.getNum());
this.cartService.deleteCart(cart.getCartid());
// 准备添加数据
@RequestMapping("createDetails.action")
public String createDetails() {
List<Jiancai> jiancaiList = this.jiancaiService.getAllJiancai();
this.getRequest().setAttribute("jiancaiList", jiancaiList);
List<City> cityList = this.cityService.getAllCity();
this.getRequest().setAttribute("cityList", cityList);
List<Peihuo> peihuoList = this.peihuoService.getAllPeihuo();
this.getRequest().setAttribute("peihuoList", peihuoList);
return "admin/adddetails";
}
// 添加数据
@RequestMapping("addDetails.action")
public String addDetails(Details details) {
this.detailsService.insertDetails(details);
return "redirect:/details/createDetails.action";
}
// 通过主键删除数据
@RequestMapping("deleteDetails.action")
public String deleteDetails(String id) {
this.detailsService.deleteDetails(id);
return "redirect:/details/getAllDetails.action";
}
// 批量删除数据
@RequestMapping("deleteDetailsByIds.action")
public String deleteDetailsByIds() {
String[] ids = this.getRequest().getParameterValues("detailsid");
for (String detailsid : ids) {
this.detailsService.deleteDetails(detailsid);
}
return "redirect:/details/getAllDetails.action";
}
// 更新数据
@RequestMapping("updateDetails.action")
public String updateDetails(Details details) {
this.detailsService.updateDetails(details);
return "redirect:/details/getAllDetails.action";
}
// 显示全部数据
@RequestMapping("getAllDetails.action")
public String getAllDetails(String number) {
List<Details> detailsList = this.detailsService.getAllDetails();
PageHelper.getPage(detailsList, "details", null, null, 10, number, this.getRequest(), null);
return "admin/listdetails";
}
public CartService getCartService() {
return cartService;
}
public void setCartService(CartService cartService) {
this.cartService = cartService;
}
}
package com.action;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/orders" , produces = "text/plain;charset=utf-8")
public class OrdersAction extends BaseAction {
// 注入Service 由于标签的存在 所以不需要getter setter
@Autowired
@Resource
private OrdersService ordersService;
@Autowired
@Resource
private UsersService usersService;
// 准备添加数据
@RequestMapping("createOrders.action")
public String createOrders() {
List<Users> usersList = this.usersService.getAllUsers();
this.getRequest().setAttribute("usersList", usersList);
return "admin/addorders";
}
// 添加数据
buffer.append(maxPage);
buffer.append("页 共有");
buffer.append(pageNumber);
buffer.append("条 当前为第");
buffer.append((Integer.parseInt(number) + 1));
buffer.append("页 ");
if ((Integer.parseInt(number) + 1) == 1) {
buffer.append("首页");
} else {
buffer.append("<a href=\"index/cate.action?number=0&id=\" + id+ \"\">首页</a>");
}
buffer.append(" ");
if ((Integer.parseInt(number) + 1) == 1) {
buffer.append("上一页");
} else {
buffer.append("<a href=\"index/cate.action?number=" + (Integer.parseInt(number) - 1) + "&id=\" + id+ \"\">上一页</a>");
}
buffer.append(" ");
if (maxPage <= (Integer.parseInt(number) + 1)) {
buffer.append("下一页");
} else {
buffer.append("<a href=\"index/cate.action?number=" + (Integer.parseInt(number) + 1) + "&id=\" + id+ \"\">下一页</a>");
}
buffer.append(" ");
if (maxPage <= (Integer.parseInt(number) + 1)) {
buffer.append("尾页");
} else {
buffer.append("<a href=\"index/cate.action?number=" + (maxPage - 1) + "&id=\" + id+ \"\">尾页</a>");
}
html = buffer.toString();
this.getRequest().setAttribute("html", html);
this.getRequest().setAttribute("flimList", flimList);
return "users/list";
}
// 推荐产品
@RequestMapping("recommend.action")
public String recommend(String number) {
this.front();
Jiancai goods = new Jiancai();
goods.setRecommend("是");
List<Jiancai> flimList = new ArrayList<Jiancai>();
List<Jiancai> tempList = this.jiancaiService.getJiancaiByCond(goods);
int pageNumber = tempList.size();
}
// 通过主键删除数据
@RequestMapping("deletePeihuo.action")
public String deletePeihuo(String id) {
this.peihuoService.deletePeihuo(id);
return "redirect:/peihuo/getAllPeihuo.action";
}
// 批量删除数据
@RequestMapping("deletePeihuoByIds.action")
public String deletePeihuoByIds() {
String[] ids = this.getRequest().getParameterValues("peihuoid");
for (String peihuoid : ids) {
this.peihuoService.deletePeihuo(peihuoid);
}
return "redirect:/peihuo/getAllPeihuo.action";
}
// 更新数据
@RequestMapping("updatePeihuo.action")
public String updatePeihuo(Peihuo peihuo) {
this.peihuoService.updatePeihuo(peihuo);
return "redirect:/peihuo/getAllPeihuo.action";
}
// 显示全部数据
@RequestMapping("getAllPeihuo.action")
public String getAllPeihuo(String number) {
List<Peihuo> peihuoList = this.peihuoService.getAllPeihuo();
PageHelper.getPage(peihuoList, "peihuo", null, null, 10, number, this.getRequest(), null);
return "admin/listpeihuo";
}
// 显示全部数据
@RequestMapping("getNetWork.action")
public String getNetWork(String number) {
List<Peihuo> peihuoList = this.peihuoService.getAllPeihuo();
PageHelper.getPage(peihuoList, "peihuo", null, null, 10, number, this.getRequest(), null);
return "users/network";
}
// 按条件查询数据 (模糊查询)
@RequestMapping("queryPeihuoByCond.action")
cart.setPrice(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.cartService.getCartByLike(cart), "cart", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/querycart";
}
// 按主键查询数据
@RequestMapping("getCartById.action")
public String getCartById(String id) {
Cart cart = this.cartService.getCartById(id);
this.getRequest().setAttribute("cart", cart);
List<Users> usersList = this.usersService.getAllUsers();
this.getRequest().setAttribute("usersList", usersList);
List<Jiancai> jiancaiList = this.jiancaiService.getAllJiancai();
this.getRequest().setAttribute("jiancaiList", jiancaiList);
return "admin/editcart";
}
public CartService getCartService() {
return cartService;
}
public void setCartService(CartService cartService) {
this.cartService = cartService;
}
}
package com.action;
return "redirect:/index/preLogin.action";
}
// 退出登录
@RequestMapping("exit.action")
public String exit() {
this.front();
this.getSession().removeAttribute("userid");
this.getSession().removeAttribute("username");
this.getSession().removeAttribute("users");
return "index";
}
// 准备修改密码
@RequestMapping("prePwd.action")
public String prePwd() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
return "users/editpwd";
}
// 修改密码
@RequestMapping("editpwd.action")
public String editpwd() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
String password = this.getRequest().getParameter("password");
String repassword = this.getRequest().getParameter("repassword");
Users users = this.usersService.getUsersById(userid);
if (password.equals(users.getPassword())) {
users.setPassword(repassword);
this.usersService.updateUsers(users);
} else {
this.getSession().setAttribute("message", "旧密码错误");
return "redirect:/index/prePwd.action";
}
return "redirect:/index/prePwd.action";
}
@RequestMapping("usercenter.action")
public String usercenter() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
return "users/usercenter";
}
return "users/article";
}
// 阅读公告
@RequestMapping("read.action")
public String read(String id) {
this.front();
Article article = this.articleService.getArticleById(id);
article.setHits("" + (Integer.parseInt(article.getHits()) + 1));
this.articleService.updateArticle(article);
this.getRequest().setAttribute("article", article);
return "users/read";
}
// 准备登录
@RequestMapping("preLogin.action")
public String prelogin() {
this.front();
return "users/login";
}
// 用户登录
@RequestMapping("login.action")
public String login() {
this.front();
String username = this.getRequest().getParameter("username");
String password = this.getRequest().getParameter("password");
Users u = new Users();
u.setUsername(username);
List<Users> usersList = this.usersService.getUsersByCond(u);
if (usersList.size() == 0) {
this.getSession().setAttribute("message", "用户名不存在");
return "redirect:/index/preLogin.action";
} else {
Users users = usersList.get(0);
if (password.equals(users.getPassword())) {
this.getSession().setAttribute("userid", users.getUsersid());
this.getSession().setAttribute("username", users.getUsername());
this.getSession().setAttribute("users", users);
return "redirect:/index/index.action";
} else {
this.getSession().setAttribute("message", "密码错误");
return "redirect:/index/preLogin.action";
}
}
}
// 准备注册
@RequestMapping("preReg.action")
public String preReg() {
this.front();
return "users/register";
List<Users> usersList = this.usersService.getAllUsers();
this.getRequest().setAttribute("usersList", usersList);
return "admin/addorders";
}
// 添加数据
@RequestMapping("addOrders.action")
public String addOrders(Orders orders) {
this.ordersService.insertOrders(orders);
return "redirect:/orders/createOrders.action";
}
// 通过主键删除数据
@RequestMapping("deleteOrders.action")
public String deleteOrders(String id) {
this.ordersService.deleteOrders(id);
return "redirect:/orders/getAllOrders.action";
}
// 批量删除数据
@RequestMapping("deleteOrdersByIds.action")
public String deleteOrdersByIds() {
String[] ids = this.getRequest().getParameterValues("ordersid");
for (String ordersid : ids) {
this.ordersService.deleteOrders(ordersid);
}
return "redirect:/orders/getAllOrders.action";
}
// 更新数据
@RequestMapping("updateOrders.action")
public String updateOrders(Orders orders) {
this.ordersService.updateOrders(orders);
return "redirect:/orders/getAllOrders.action";
}
// 显示全部数据
@RequestMapping("getAllOrders.action")
public String getAllOrders(String number) {
List<Orders> ordersList = this.ordersService.getAllOrders();
PageHelper.getPage(ordersList, "orders", null, null, 10, number, this.getRequest(), null);
return "admin/listorders";
}
// 按条件查询数据 (模糊查询)
@RequestMapping("queryOrdersByCond.action")
public String queryOrdersByCond(String cond, String name, String number) {
Orders orders = new Orders();
if(cond != null){
if ("ordercode".equals(cond)) {
orders.setOrdercode(name);
}
users.setContact(name);
}
if ("regdate".equals(cond)) {
users.setRegdate(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.usersService.getUsersByLike(users), "users", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/queryusers";
}
// 按主键查询数据
@RequestMapping("getUsersById.action")
public String getUsersById(String id ) {
Users users = this.usersService.getUsersById(id);
this.getRequest().setAttribute("users", users);
return "admin/editusers";
}
public UsersService getUsersService() { return usersService; }
public void setUsersService(UsersService usersService) { this.usersService = usersService; }
}
package com.action;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/cate", produces = "text/plain;charset=utf-8")
public class CateAction extends BaseAction {
// 注入Service 由于标签的存在 所以不需要getter setter
@Autowired
@Resource
request.setAttribute("html", html);
request.setAttribute(name + "List", objList);
}
}
package com.action;
@Controller
@RequestMapping("/upload")
public class UploadAction {
@RequestMapping(value = "/image.action")
public String upload(@RequestParam(value = "image", required = false) MultipartFile file,
HttpServletRequest request, ModelMap model) {
String path = request.getSession().getServletContext().getRealPath("/") + "upfiles/";
String fileName = file.getOriginalFilename();
int i = fileName.lastIndexOf(".");
String name = String.valueOf(VeDate.getStringDatex());
String type = fileName.substring(i + 1);
fileName = name + "." + type;
File targetFile = new File(path, fileName);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
// 保存
try {
file.transferTo(targetFile);
} catch (Exception e) {
e.printStackTrace();
}
model.addAttribute("imageFileName", fileName);
return "saveimage";
}