修改商品数据之后出现乱码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 | package com.imooc.shop.action; import com.imooc.shop.bean.Article; import com.imooc.shop.bean.ArticleType; import com.imooc.shop.service.ShopService; import com.imooc.shop.utils.Pager; import org.springframework.util.StringUtils; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; import java.io.IOException; import java.util.List; import java.util.UUID; @WebServlet ( "/list" ) @MultipartConfig public class ListServlet extends HttpServlet { private HttpServletRequest request; private HttpServletResponse response; private ShopService shopService; @Override public void init() throws ServletException { super .init(); ServletContext servletContext = this .getServletContext(); WebApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext); shopService = (ShopService)context.getBean( "shopService" ); } @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { try { this .request=req; this .response=resp; request.setCharacterEncoding( "UTF-8" ); String method = request.getParameter( "method" ); switch (method){ case "getAll" : getAll(); break ; case "deleteById" : deleteById(); break ; case "preArticle" : preArticle(); break ; case "showUpdate" : showUpdate(); break ; case "updateArticle" : updateArticle(); break ; } } catch (Exception e){ e.printStackTrace(); } } public void updateArticle(){ //接收表单数据 String code = request.getParameter( "code" ); String title = request.getParameter( "titleStr" ); String supplier = request.getParameter( "supplier" ); String locality = request.getParameter( "locality" ); String price = request.getParameter( "price" ); String storage = request.getParameter( "storage" ); String description = request.getParameter( "description" ); String id = request.getParameter( "id" ); // 物品编号 String picUrl = request.getParameter( "picUrl" ); // 物品旧封面 //定义一个商品对象,封装界面提交的参数 Article article = new Article(); //接收用户可能上传的封面 try { //如果用户上传了这里代码是不会出现异常了 //如果没有上传这里出现异常 Part part = request.getPart( "image" ); //保存到项目的路径中去 String sysPath = request.getSession().getServletContext().getRealPath( "/resources/images/article" ); //定义一个新的图片名称 String fileName = UUID.randomUUID().toString(); //上传文件的内容性质 String contentDispostion = part.getHeader( "content-disposition" ); //获取上传文件的后缀名 String suffix = contentDispostion.substring(contentDispostion.lastIndexOf( "." ),contentDispostion.length()- 1 ); fileName += suffix; //把图片保存到路径中去 part.write(sysPath+ "/" +fileName); picUrl = fileName; } catch (Exception e){ e.printStackTrace(); } article.setId(Integer.valueOf(id)); article.setImage(picUrl); ArticleType type = new ArticleType(); type.setCode(code); article.setArticleType(type); article.setTitle(title); article.setSupplier(supplier); article.setLocality(locality); article.setPrice(Double.parseDouble(price)); article.setStorage(Integer.parseInt(storage)); article.setDescription(description); shopService.updateArticle(article); request.setAttribute( "tip" , "修改商品成功" ); showUpdate(); } private void showUpdate(){ try { String id = request.getParameter( "id" ); Article article = shopService.getArticleById(id); //查询出所有的商品类型 List<ArticleType> types = shopService.getArticleTypes(); request.setAttribute( "types" ,types); request.setAttribute( "article" ,article); request.getRequestDispatcher( "/WEB-INF/jsp/updateArticle.jsp" ).forward(request,response); } catch (Exception e){ e.printStackTrace(); } } private void preArticle(){ try { String id = request.getParameter( "id" ); Article article = shopService.getArticleById(id); request.setAttribute( "article" ,article); request.getRequestDispatcher( "/WEB-INF/jsp/preArticle.jsp" ).forward(request,response); } catch (Exception e){ e.printStackTrace(); } } private void deleteById() throws ServletException, IOException { try { String id = request.getParameter( "id" ); shopService.deleteById(id); request.setAttribute( "tip" , "删除成功" ); } catch (Exception e){ request.setAttribute( "tip" , "删除失败" ); e.printStackTrace(); } request.getRequestDispatcher( "/list?method=getAll" ).forward(request,response); } private void getAll() throws ServletException, IOException { //考虑分页查询 Pager pager = new Pager(); //看是否传入了分页参数的页码 String pageIndex = request.getParameter( "pageIndex" ); if (!StringUtils.isEmpty(pageIndex)){ int pSize = Integer.valueOf(pageIndex); pager.setPageIndex(pSize); } //接收一级类型编号查询 String typeCode = request.getParameter( "typeCode" ); //接收二级类型编号查询 String secondType = request.getParameter( "secondType" ); request.setAttribute( "secondType" ,secondType); //接收商品标题 String title = request.getParameter( "title" ); request.setAttribute( "title" ,title); //根据一级类型查询对应的二级类型 if (!StringUtils.isEmpty(typeCode)){ List<ArticleType> secondTypes = shopService.loadSecondTypes(typeCode); request.setAttribute( "secondTypes" ,secondTypes); request.setAttribute( "typeCode" ,typeCode); } //查询所有一级类型数据 List<ArticleType> firstArticleType = shopService.loadFirstArticleType(); //查询所有商品信息 List<Article> articles = shopService.searchArticles(typeCode,secondType,title,pager); request.setAttribute( "firstArticleTypes" ,firstArticleType); request.setAttribute( "articles" ,articles); request.setAttribute( "pager" ,pager); request.getRequestDispatcher( "/WEB-INF/jsp/list.jsp" ).forward(request,response); } } |
2
收起
正在回答
1回答
你好同学,请问你在创建数据库的时候有没有将字符编码格式设置为utf8呢?建议你使用workbench查询一下数据库中的数据是否为乱码呢?祝学习愉快~
相似问题
登录后可查看更多问答,登录/注册
SSM主流框架入门与综合项目实战2018版
- 参与学习 人
- 提交作业 205 份
- 解答问题 4317 个
Java中非常实用的SSM整合开发内容,从Spring开始,到MyBaits的进阶内容,再到SpringMVC的应用,最后是SSM整合开发案例,逐步深入,助你成长为一名Java工程师!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧