• Java项目:SSM网上家具商城网站系统平台


    作者主页:夜未央5788

     简介:Java领域优质创作者、Java项目、学习资料、技术互助

    文末获取源码

    项目介绍

    本项目分为前后台,前台为普通用户登录,后台为管理员登录;

    管理员角色包含以下功能:

    管理员登录,类目管理,用户管理,商品管理,订单管理,发货管理,提交发货,公告管理,留言管理,日志查看等功能。

    用户角色包含以下功能:

    用户登录,用户首页,查看公告,提交留言,查看商品详情,加入购物车,商品结算等功能。

    环境需要

    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项目:是;

    技术栈

    1. 后端:Spring+SpringMVC+Mybatis

    2. 前端:JSP+CSS+JavaScript+jquery+bootstrap+echarts

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
    若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
    3. 将项目中db.properties配置文件中的数据库配置改为自己的配置;
    4. 运行项目,在浏览器中输入http://localhost:8080/shop 登录
    用户账号/密码: user/123456

    管理员账号/密码:admin/admin

    运行截图

    前台界面

     

     

     

     

     

     

    后台界面

     

     

     

     

    代码相关

    地址管理控制器

    1. @Controller
    2. @RequestMapping("/address")
    3. public class AddressController extends BaseController {
    4. /**
    5. * 依赖注入 start dao/service/===
    6. */
    7. @Autowired
    8. private AddressService addressService;
    9. // --------------------------------------- 华丽分割线 ------------------------------
    10. /*********************************查询列表【不分页】***********************************************/
    11. /**
    12. * 【不分页 => 查询列表 => 无条件】
    13. * @Title: listAll
    14. * @Description: TODO(这里用一句话描述这个方法的作用)
    15. * @param @return 设定文件
    16. * @author
    17. * @return String 返回类型
    18. * @throws
    19. */
    20. @RequestMapping(value = "/listAll")
    21. public String listAll(Address address, Model model, HttpServletRequest request, HttpServletResponse response){
    22. List
      listAll = addressService.listAll();
    23. model.addAttribute("list", listAll);
    24. return "address/address";
    25. }
    26. /**
    27. * 【不分页=》查询列表=>有条件】
    28. * @Title: listByEntity
    29. * @Description: TODO(这里用一句话描述这个方法的作用)
    30. * @param @return 设定文件
    31. * @author
    32. * @return String 返回类型
    33. * @throws
    34. */
    35. @RequestMapping(value = "/listByEntity")
    36. public String listByEntity(Address address, Model model, HttpServletRequest request, HttpServletResponse response){
    37. List
      listAll = addressService.listAllByEntity(address);
    38. model.addAttribute("list", listAll);
    39. return "address/address";
    40. }
    41. /**
    42. * 【不分页=》查询列表=>有条件】
    43. * @Title: listByMap
    44. * @Description: TODO(这里用一句话描述这个方法的作用)
    45. * @param @return 设定文件
    46. * @author
    47. * @return String 返回类型
    48. * @throws
    49. */
    50. @RequestMapping(value = "/listByMap")
    51. public String listByMap(Address address, Model model, HttpServletRequest request, HttpServletResponse response){
    52. //通过map查询
    53. Map params = new HashMap();
    54. if(!isEmpty(address.getName())){
    55. params.put("name", address.getName());
    56. }
    57. if(!isEmpty(address.getPhone())){
    58. params.put("phone", address.getPhone());
    59. }
    60. if(!isEmpty(address.getArea())){
    61. params.put("area", address.getArea());
    62. }
    63. if(!isEmpty(address.getBm())){
    64. params.put("bm", address.getBm());
    65. }
    66. if(!isEmpty(address.getIsUse())){
    67. params.put("isUse", address.getIsUse());
    68. }
    69. List
      listAll = addressService.listByMap(params);
    70. model.addAttribute("list", listAll);
    71. return "address/address";
    72. }
    73. /*********************************查询列表【分页】***********************************************/
    74. /**
    75. * 分页查询 返回list对象(通过对象)
    76. *
    77. * @param request
    78. * @param response
    79. * @return
    80. */
    81. @RequestMapping(value = "/findByObj")
    82. public String findByObj(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    83. //分页查询
    84. Pager
      pagers = addressService.findByEntity(address);
    85. model.addAttribute("pagers", pagers);
    86. //存储查询条件
    87. model.addAttribute("obj", address);
    88. return "address/address";
    89. }
    90. /**
    91. * 分页查询 返回list对象(通过对By Sql)
    92. *
    93. * @param request
    94. * @param response
    95. * @return
    96. */
    97. @RequestMapping(value = "/findBySql")
    98. public String findBySql(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    99. //分页查询
    100. String sql = "SELECT * FROM address WHERE 1=1 ";
    101. if(!isEmpty(address.getName())){
    102. sql += " and name like '%"+address.getName()+"%'";
    103. }
    104. if(!isEmpty(address.getPhone())){
    105. sql += " and phone like '%"+address.getPhone()+"%'";
    106. }
    107. if(!isEmpty(address.getArea())){
    108. sql += " and area like '%"+address.getArea()+"%'";
    109. }
    110. if(!isEmpty(address.getBm())){
    111. sql += " and bm like '%"+address.getBm()+"%'";
    112. }
    113. if(!isEmpty(address.getIsUse())){
    114. sql += " and isUse like '%"+address.getIsUse()+"%'";
    115. }
    116. sql += " ORDER BY ID DESC ";
    117. Pager
      pagers = addressService.findBySqlRerturnEntity(sql);
    118. model.addAttribute("pagers", pagers);
    119. //存储查询条件
    120. model.addAttribute("obj", address);
    121. return "address/address";
    122. }
    123. @RequestMapping(value = "/my")
    124. public String my(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    125. //分页查询
    126. Object attribute = request.getSession().getAttribute("userId");
    127. if (attribute == null){
    128. return "redirect:/login/uLogin";
    129. }
    130. JSONObject js = new JSONObject();
    131. Integer userId = Integer.valueOf(attribute.toString());
    132. String sql = "SELECT * FROM address WHERE 1=1 and userId = "+userId;
    133. if(!isEmpty(address.getName())){
    134. sql += " and name like '%"+address.getName()+"%'";
    135. }
    136. if(!isEmpty(address.getPhone())){
    137. sql += " and phone like '%"+address.getPhone()+"%'";
    138. }
    139. if(!isEmpty(address.getArea())){
    140. sql += " and area like '%"+address.getArea()+"%'";
    141. }
    142. if(!isEmpty(address.getBm())){
    143. sql += " and bm like '%"+address.getBm()+"%'";
    144. }
    145. if(!isEmpty(address.getIsUse())){
    146. sql += " and isUse like '%"+address.getIsUse()+"%'";
    147. }
    148. sql += " ORDER BY ID DESC ";
    149. Pager
      pagers = addressService.findBySqlRerturnEntity(sql);
    150. model.addAttribute("pagers", pagers);
    151. //存储查询条件
    152. model.addAttribute("obj", address);
    153. return "address/my";
    154. }
    155. /**
    156. * 分页查询 返回list对象(通过Map)
    157. *
    158. * @param request
    159. * @param response
    160. * @return
    161. */
    162. @RequestMapping(value = "/findByMap")
    163. public String findByMap(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    164. //通过map查询
    165. Map params = new HashMap();
    166. if(!isEmpty(address.getName())){
    167. params.put("name", address.getName());
    168. }
    169. if(!isEmpty(address.getPhone())){
    170. params.put("phone", address.getPhone());
    171. }
    172. if(!isEmpty(address.getArea())){
    173. params.put("area", address.getArea());
    174. }
    175. if(!isEmpty(address.getBm())){
    176. params.put("bm", address.getBm());
    177. }
    178. if(!isEmpty(address.getIsUse())){
    179. params.put("isUse", address.getIsUse());
    180. }
    181. //分页查询
    182. Pager
      pagers = addressService.findByMap(params);
    183. model.addAttribute("pagers", pagers);
    184. //存储查询条件
    185. model.addAttribute("obj", address);
    186. return "address/address";
    187. }
    188. /**********************************【增删改】******************************************************/
    189. /**
    190. * 跳至添加页面
    191. * @return
    192. */
    193. @RequestMapping(value = "/add")
    194. public String add() {
    195. return "address/add";
    196. }
    197. /**
    198. * 跳至详情页面
    199. * @return
    200. */
    201. @RequestMapping(value = "/view")
    202. public String view(Integer id,Model model) {
    203. Address obj = addressService.load(id);
    204. model.addAttribute("obj",obj);
    205. return "address/view";
    206. }
    207. /**
    208. * 添加执行
    209. * @return
    210. */
    211. @RequestMapping(value = "/exAdd")
    212. public String exAdd(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    213. Object attribute = request.getSession().getAttribute("userId");
    214. if (attribute == null){
    215. return "redirect:/login/uLogin";
    216. }
    217. Integer userId = Integer.valueOf(attribute.toString());
    218. address.setUserId(userId);
    219. address.setIsUse(0);
    220. addressService.insert(address);
    221. return "redirect:/car/view.action";
    222. }
    223. @RequestMapping(value = "/exAdd1")
    224. public String exAdd1(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    225. Object attribute = request.getSession().getAttribute("userId");
    226. if (attribute == null){
    227. return "redirect:/login/uLogin";
    228. }
    229. Integer userId = Integer.valueOf(attribute.toString());
    230. address.setUserId(userId);
    231. address.setIsUse(0);
    232. addressService.insert(address);
    233. return "redirect:/address/my.action";
    234. }
    235. /**
    236. * 跳至修改页面
    237. * @return
    238. */
    239. @RequestMapping(value = "/update")
    240. public String update(Integer id,Model model) {
    241. Address obj = addressService.load(id);
    242. model.addAttribute("obj",obj);
    243. return "address/update";
    244. }
    245. /**
    246. * 添加修改
    247. * @return
    248. */
    249. @RequestMapping(value = "/exUpdate")
    250. public String exUpdate(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    251. //1.通过实体类修改,可以多传修改条件
    252. addressService.updateById(address);
    253. //2.通过主键id修改
    254. //addressService.updateById(address);
    255. return "redirect:/car/view.action";
    256. }
    257. @RequestMapping(value = "/exUpdate2")
    258. public String exUpdate2(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    259. //1.通过实体类修改,可以多传修改条件
    260. addressService.updateById(address);
    261. //2.通过主键id修改
    262. //addressService.updateById(address);
    263. return "redirect:/address/my.action";
    264. }
    265. @RequestMapping(value = "/delete1")
    266. public String delete1(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    267. ///1.通过主键删除
    268. addressService.deleteById(id);
    269. /*以下是多种删除方式*/
    270. return "redirect:/address/my.action";
    271. }
    272. @RequestMapping(value = "/mr")
    273. public String mr(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    274. ///1.通过主键删除
    275. //分页查询
    276. Object attribute = request.getSession().getAttribute("userId");
    277. if (attribute == null){
    278. return "redirect:/login/uLogin";
    279. }
    280. JSONObject js = new JSONObject();
    281. Integer userId = Integer.valueOf(attribute.toString());
    282. String sql = "SELECT * FROM address WHERE 1=1 and userId = "+userId;
    283. List
      listBySqlReturnEntity = addressService.listBySqlReturnEntity(sql);
    284. if (!CollectionUtils.isEmpty(listBySqlReturnEntity)){
    285. for(Address a : listBySqlReturnEntity){
    286. a.setIsUse(0);
    287. addressService.updateById(a);
    288. }
    289. }
    290. Address load = addressService.load(id);
    291. load.setIsUse(1);
    292. addressService.updateById(load);
    293. /*以下是多种删除方式*/
    294. return "redirect:/address/my.action";
    295. }
    296. /**
    297. * 删除通过主键
    298. * @return
    299. */
    300. @RequestMapping(value = "/delete")
    301. public String delete(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    302. ///1.通过主键删除
    303. addressService.deleteById(id);
    304. /*以下是多种删除方式*/
    305. // //2.通过实体条件删除
    306. // addressService.deleteByEntity(address);
    307. // //3.通过参数删除
    308. // //通过map查询
    309. // Map params = new HashMap();
    310. //
    311. // if(!isEmpty(address.getName())){
    312. // params.put("name", address.getName());
    313. // }
    314. //
    315. // if(!isEmpty(address.getPhone())){
    316. // params.put("phone", address.getPhone());
    317. // }
    318. //
    319. // if(!isEmpty(address.getArea())){
    320. // params.put("area", address.getArea());
    321. // }
    322. //
    323. // if(!isEmpty(address.getBm())){
    324. // params.put("bm", address.getBm());
    325. // }
    326. //
    327. // if(!isEmpty(address.getIsUse())){
    328. // params.put("isUse", address.getIsUse());
    329. // }
    330. //
    331. // addressService.deleteByMap(params);
    332. // //4.状态删除
    333. // Address load = addressService.getById(address.getId())
    334. // load.setIsDelete(1);
    335. // addressService.update(load);
    336. //5.状态删除
    337. //Address load = addressService.load(id);
    338. //load.setIsDelete(1);
    339. //addressService.update(load);
    340. return "redirect:/address/findBySql.action";
    341. }
    342. // --------------------------------------- 华丽分割线 ------------------------------
    343. // --------------------------------------- 【下面是ajax操作的方法。】 ------------------------------
    344. /*********************************查询列表【不分页】***********************************************/
    345. /**
    346. * 【不分页 => 查询列表 => 无条件】
    347. * @Title: listAll
    348. * @Description: TODO(这里用一句话描述这个方法的作用)
    349. * @param @return 设定文件
    350. * @author
    351. * @return String 返回类型
    352. * @throws
    353. */
    354. @RequestMapping(value = "/listAllJson", method = RequestMethod.POST)
    355. @ResponseBody
    356. public String listAllJson(Address address, HttpServletRequest request, HttpServletResponse response){
    357. List
      listAll = addressService.listAll();
    358. JSONObject jsonObject = new JSONObject();
    359. jsonObject.put("list", listAll);
    360. jsonObject.put("obj", address);
    361. return jsonObject.toString();
    362. }
    363. /**
    364. * 【不分页=》查询列表=>有条件】
    365. * @Title: listByEntity
    366. * @Description: TODO(这里用一句话描述这个方法的作用)
    367. * @param @return 设定文件
    368. * @author
    369. * @return String 返回类型
    370. * @throws
    371. */
    372. @RequestMapping(value = "/listByEntityJson", method = RequestMethod.POST)
    373. @ResponseBody
    374. public String listByEntityJson(Address address, HttpServletRequest request, HttpServletResponse response){
    375. List
      listAll = addressService.listAllByEntity(address);
    376. JSONObject jsonObject = new JSONObject();
    377. jsonObject.put("list", listAll);
    378. jsonObject.put("obj", address);
    379. return jsonObject.toString();
    380. }
    381. /**
    382. * 【不分页=》查询列表=>有条件】
    383. * @Title: listByMap
    384. * @Description: TODO(这里用一句话描述这个方法的作用)
    385. * @param @return 设定文件
    386. * @author
    387. * @return String 返回类型
    388. * @throws
    389. */
    390. @RequestMapping(value = "/listByMapJson", method = RequestMethod.POST)
    391. @ResponseBody
    392. public String listByMapJson(Address address,HttpServletRequest request, HttpServletResponse response){
    393. //通过map查询
    394. Map params = new HashMap();
    395. if(!isEmpty(address.getName())){
    396. params.put("name", address.getName());
    397. }
    398. if(!isEmpty(address.getPhone())){
    399. params.put("phone", address.getPhone());
    400. }
    401. if(!isEmpty(address.getArea())){
    402. params.put("area", address.getArea());
    403. }
    404. if(!isEmpty(address.getBm())){
    405. params.put("bm", address.getBm());
    406. }
    407. if(!isEmpty(address.getIsUse())){
    408. params.put("isUse", address.getIsUse());
    409. }
    410. List
      listAll = addressService.listByMap(params);
    411. JSONObject jsonObject = new JSONObject();
    412. jsonObject.put("list", listAll);
    413. jsonObject.put("obj", address);
    414. return jsonObject.toString();
    415. }
    416. /**
    417. * 分页查询 返回list json(通过对象)
    418. *
    419. * @param request
    420. * @param response
    421. * @return
    422. */
    423. @RequestMapping(value = "/findByObjJson", method = RequestMethod.POST)
    424. @ResponseBody
    425. public String findByObjByEntityJson(Address address, HttpServletRequest request, HttpServletResponse response) {
    426. //分页查询
    427. Pager
      pagers = addressService.findByEntity(address);
    428. JSONObject jsonObject = new JSONObject();
    429. jsonObject.put("pagers", pagers);
    430. jsonObject.put("obj", address);
    431. return jsonObject.toString();
    432. }
    433. /**
    434. * 分页查询 返回list json(通过Map)
    435. *
    436. * @param request
    437. * @param response
    438. * @return
    439. */
    440. @RequestMapping(value = "/findByMapJson", method = RequestMethod.POST)
    441. @ResponseBody
    442. public String findByMapJson(Address address,HttpServletRequest request, HttpServletResponse response) {
    443. //通过map查询
    444. Map params = new HashMap();
    445. if(!isEmpty(address.getName())){
    446. params.put("name", address.getName());
    447. }
    448. if(!isEmpty(address.getPhone())){
    449. params.put("phone", address.getPhone());
    450. }
    451. if(!isEmpty(address.getArea())){
    452. params.put("area", address.getArea());
    453. }
    454. if(!isEmpty(address.getBm())){
    455. params.put("bm", address.getBm());
    456. }
    457. if(!isEmpty(address.getIsUse())){
    458. params.put("isUse", address.getIsUse());
    459. }
    460. //分页查询
    461. Pager
      pagers = addressService.findByMap(params);
    462. JSONObject jsonObject = new JSONObject();
    463. jsonObject.put("pagers", pagers);
    464. jsonObject.put("obj", address);
    465. return jsonObject.toString();
    466. }
    467. /**
    468. * ajax 添加
    469. * @param
    470. * @return
    471. */
    472. @RequestMapping(value = "/exAddJson", method = RequestMethod.POST)
    473. @ResponseBody
    474. public String exAddJson(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    475. addressService.insert(address);
    476. JSONObject jsonObject = new JSONObject();
    477. jsonObject.put("message", "添加成功");
    478. return jsonObject.toString();
    479. }
    480. /**
    481. * ajax 修改
    482. * @param
    483. * @return
    484. */
    485. @RequestMapping(value = "/exUpdate.json", method = RequestMethod.POST)
    486. @ResponseBody
    487. public String exUpdateJson(Address address, Model model, HttpServletRequest request, HttpServletResponse response) {
    488. //1.通过实体类修改,可以多传修改条件
    489. addressService.updateById(address);
    490. //2.通过主键id修改
    491. //addressService.updateById(address);
    492. JSONObject jsonObject = new JSONObject();
    493. jsonObject.put("message", "修改成功");
    494. return jsonObject.toString();
    495. }
    496. /**
    497. * ajax 删除
    498. * @return
    499. */
    500. @RequestMapping(value = "/delete.json", method = RequestMethod.POST)
    501. @ResponseBody
    502. public String exDeleteJson(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    503. ///1.通过主键删除
    504. addressService.deleteById(id);
    505. /*以下是多种删除方式*/
    506. // //2.通过实体条件删除
    507. // addressService.deleteByEntity(address);
    508. // //3.通过参数删除
    509. // //通过map查询
    510. // Map params = new HashMap();
    511. //
    512. // if(!isEmpty(address.getName())){
    513. // params.put("name", address.getName());
    514. // }
    515. //
    516. // if(!isEmpty(address.getPhone())){
    517. // params.put("phone", address.getPhone());
    518. // }
    519. //
    520. // if(!isEmpty(address.getArea())){
    521. // params.put("area", address.getArea());
    522. // }
    523. //
    524. // if(!isEmpty(address.getBm())){
    525. // params.put("bm", address.getBm());
    526. // }
    527. //
    528. // if(!isEmpty(address.getIsUse())){
    529. // params.put("isUse", address.getIsUse());
    530. // }
    531. //
    532. // addressService.deleteByMap(params);
    533. // //4.状态删除
    534. // Address load = addressService.getById(address.getId())
    535. // load.setIsDelete(1);
    536. // addressService.updateById(load);
    537. //5.状态删除
    538. //Address load = addressService.load(id);
    539. //load.setIsDelete(1);
    540. //addressService.updateById(load);
    541. JSONObject jsonObject = new JSONObject();
    542. jsonObject.put("message", "删除成功");
    543. return jsonObject.toString();
    544. }
    545. /**
    546. * 单文件上传
    547. * @param file
    548. * @param request
    549. * @param model
    550. * @return
    551. */
    552. @RequestMapping(value = "/saveFile")
    553. public String saveFile(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request, Model model) {
    554. System.out.println("开始");
    555. String path = request.getSession().getServletContext().getRealPath("/upload");
    556. String fileName = file.getOriginalFilename();
    557. System.out.println(path);
    558. File targetFile = new File(path, fileName);
    559. if(!targetFile.exists()){
    560. targetFile.mkdirs();
    561. }
    562. //保存
    563. try {
    564. file.transferTo(targetFile);
    565. } catch (Exception e) {
    566. e.printStackTrace();
    567. }
    568. return "";
    569. }
    570. /**
    571. * springMvc多文件上传
    572. * @param files
    573. * @param id
    574. * @return
    575. */
    576. @RequestMapping(value = "/saveFiles")
    577. public String saveFiles(@RequestParam("file") CommonsMultipartFile[] files,Integer id,HttpServletRequest request){
    578. for(int i = 0;i
    579. System.out.println("fileName---------->" + files[i].getOriginalFilename());
    580. if(!files[i].isEmpty()){
    581. int pre = (int) System.currentTimeMillis();
    582. try {
    583. //拿到输出流,同时重命名上传的文件
    584. String filePath = request.getRealPath("/upload");
    585. File f=new File(filePath);
    586. if(!f.exists()){
    587. f.mkdirs();
    588. }
    589. String fileNmae=new Date().getTime() + files[i].getOriginalFilename();
    590. File file=new File(filePath+"/"+pre + files[i].getOriginalFilename());
    591. if(!file.exists()){
    592. file.createNewFile();
    593. }
    594. files[i].transferTo(file);
    595. } catch (Exception e) {
    596. e.printStackTrace();
    597. System.out.println("上传出错");
    598. }
    599. }
    600. }
    601. return "";
    602. }
    603. // --------------------------------------- 华丽分割线 ------------------------------
    604. }

    管理端控制器

    1. @Controller
    2. @RequestMapping("/manage")
    3. public class ManageController extends BaseController {
    4. /**
    5. * 依赖注入 start dao/service/===
    6. */
    7. @Autowired
    8. private ManageService manageService;
    9. // --------------------------------------- 华丽分割线 ------------------------------
    10. /*********************************查询列表【不分页】***********************************************/
    11. /**
    12. * 【不分页 => 查询列表 => 无条件】
    13. * @Title: listAll
    14. * @Description: TODO(这里用一句话描述这个方法的作用)
    15. * @param @return 设定文件
    16. * @author
    17. * @return String 返回类型
    18. * @throws
    19. */
    20. @RequestMapping(value = "/listAll")
    21. public String listAll(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response){
    22. List listAll = manageService.listAll();
    23. model.addAttribute("list", listAll);
    24. return "manage/manage";
    25. }
    26. /**
    27. * 【不分页=》查询列表=>有条件】
    28. * @Title: listByEntity
    29. * @Description: TODO(这里用一句话描述这个方法的作用)
    30. * @param @return 设定文件
    31. * @author
    32. * @return String 返回类型
    33. * @throws
    34. */
    35. @RequestMapping(value = "/listByEntity")
    36. public String listByEntity(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response){
    37. List listAll = manageService.listAllByEntity(manage);
    38. model.addAttribute("list", listAll);
    39. return "manage/manage";
    40. }
    41. /**
    42. * 【不分页=》查询列表=>有条件】
    43. * @Title: listByMap
    44. * @Description: TODO(这里用一句话描述这个方法的作用)
    45. * @param @return 设定文件
    46. * @author
    47. * @return String 返回类型
    48. * @throws
    49. */
    50. @RequestMapping(value = "/listByMap")
    51. public String listByMap(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response){
    52. //通过map查询
    53. Map params = new HashMap();
    54. if(!isEmpty(manage.getUserName())){
    55. params.put("userName", manage.getUserName());
    56. }
    57. if(!isEmpty(manage.getPassWord())){
    58. params.put("passWord", manage.getPassWord());
    59. }
    60. if(!isEmpty(manage.getRealName())){
    61. params.put("realName", manage.getRealName());
    62. }
    63. List listAll = manageService.listByMap(params);
    64. model.addAttribute("list", listAll);
    65. return "manage/manage";
    66. }
    67. /*********************************查询列表【分页】***********************************************/
    68. /**
    69. * 分页查询 返回list对象(通过对象)
    70. *
    71. * @param request
    72. * @param response
    73. * @return
    74. */
    75. @RequestMapping(value = "/findByObj")
    76. public String findByObj(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    77. //分页查询
    78. Pager pagers = manageService.findByEntity(manage);
    79. model.addAttribute("pagers", pagers);
    80. //存储查询条件
    81. model.addAttribute("obj", manage);
    82. return "manage/manage";
    83. }
    84. /**
    85. * 分页查询 返回list对象(通过对By Sql)
    86. *
    87. * @param request
    88. * @param response
    89. * @return
    90. */
    91. @RequestMapping(value = "/findBySql")
    92. public String findBySql(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    93. //分页查询
    94. String sql = "SELECT * FROM manage WHERE 1=1 ";
    95. if(!isEmpty(manage.getUserName())){
    96. sql += " and userName like '%"+manage.getUserName()+"%'";
    97. }
    98. if(!isEmpty(manage.getPassWord())){
    99. sql += " and passWord like '%"+manage.getPassWord()+"%'";
    100. }
    101. if(!isEmpty(manage.getRealName())){
    102. sql += " and realName like '%"+manage.getRealName()+"%'";
    103. }
    104. sql += " ORDER BY ID DESC ";
    105. Pager pagers = manageService.findBySqlRerturnEntity(sql);
    106. model.addAttribute("pagers", pagers);
    107. //存储查询条件
    108. model.addAttribute("obj", manage);
    109. return "manage/manage";
    110. }
    111. /**
    112. * 分页查询 返回list对象(通过Map)
    113. *
    114. * @param request
    115. * @param response
    116. * @return
    117. */
    118. @RequestMapping(value = "/findByMap")
    119. public String findByMap(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    120. //通过map查询
    121. Map params = new HashMap();
    122. if(!isEmpty(manage.getUserName())){
    123. params.put("userName", manage.getUserName());
    124. }
    125. if(!isEmpty(manage.getPassWord())){
    126. params.put("passWord", manage.getPassWord());
    127. }
    128. if(!isEmpty(manage.getRealName())){
    129. params.put("realName", manage.getRealName());
    130. }
    131. //分页查询
    132. Pager pagers = manageService.findByMap(params);
    133. model.addAttribute("pagers", pagers);
    134. //存储查询条件
    135. model.addAttribute("obj", manage);
    136. return "manage/manage";
    137. }
    138. /**********************************【增删改】******************************************************/
    139. /**
    140. * 跳至添加页面
    141. * @return
    142. */
    143. @RequestMapping(value = "/add")
    144. public String add() {
    145. return "manage/add";
    146. }
    147. /**
    148. * 跳至详情页面
    149. * @return
    150. */
    151. @RequestMapping(value = "/view")
    152. public String view(Integer id,Model model) {
    153. Manage obj = manageService.load(id);
    154. model.addAttribute("obj",obj);
    155. return "manage/view";
    156. }
    157. /**
    158. * 添加执行
    159. * @return
    160. */
    161. @RequestMapping(value = "/exAdd")
    162. public String exAdd(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    163. manageService.insert(manage);
    164. return "redirect:/manage/findBySql.action";
    165. }
    166. /**
    167. * 跳至修改页面
    168. * @return
    169. */
    170. @RequestMapping(value = "/update")
    171. public String update(Integer id,Model model) {
    172. Manage obj = manageService.load(id);
    173. model.addAttribute("obj",obj);
    174. return "manage/update";
    175. }
    176. /**
    177. * 添加修改
    178. * @return
    179. */
    180. @RequestMapping(value = "/exUpdate")
    181. public String exUpdate(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    182. //1.通过实体类修改,可以多传修改条件
    183. manageService.updateById(manage);
    184. //2.通过主键id修改
    185. //manageService.updateById(manage);
    186. return "redirect:/manage/findBySql.action";
    187. }
    188. /**
    189. * 删除通过主键
    190. * @return
    191. */
    192. @RequestMapping(value = "/delete")
    193. public String delete(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    194. ///1.通过主键删除
    195. manageService.deleteById(id);
    196. /*以下是多种删除方式*/
    197. // //2.通过实体条件删除
    198. // manageService.deleteByEntity(manage);
    199. // //3.通过参数删除
    200. // //通过map查询
    201. // Map params = new HashMap();
    202. //
    203. // if(!isEmpty(manage.getUserName())){
    204. // params.put("userName", manage.getUserName());
    205. // }
    206. //
    207. // if(!isEmpty(manage.getPassWord())){
    208. // params.put("passWord", manage.getPassWord());
    209. // }
    210. //
    211. // if(!isEmpty(manage.getRealName())){
    212. // params.put("realName", manage.getRealName());
    213. // }
    214. //
    215. // manageService.deleteByMap(params);
    216. // //4.状态删除
    217. // Manage load = manageService.getById(manage.getId())
    218. // load.setIsDelete(1);
    219. // manageService.update(load);
    220. //5.状态删除
    221. //Manage load = manageService.load(id);
    222. //load.setIsDelete(1);
    223. //manageService.update(load);
    224. return "redirect:/manage/findBySql.action";
    225. }
    226. // --------------------------------------- 华丽分割线 ------------------------------
    227. // --------------------------------------- 【下面是ajax操作的方法。】 ------------------------------
    228. /*********************************查询列表【不分页】***********************************************/
    229. /**
    230. * 【不分页 => 查询列表 => 无条件】
    231. * @Title: listAll
    232. * @Description: TODO(这里用一句话描述这个方法的作用)
    233. * @param @return 设定文件
    234. * @author
    235. * @return String 返回类型
    236. * @throws
    237. */
    238. @RequestMapping(value = "/listAllJson", method = RequestMethod.POST)
    239. @ResponseBody
    240. public String listAllJson(Manage manage, HttpServletRequest request, HttpServletResponse response){
    241. List listAll = manageService.listAll();
    242. JSONObject jsonObject = new JSONObject();
    243. jsonObject.put("list", listAll);
    244. jsonObject.put("obj", manage);
    245. return jsonObject.toString();
    246. }
    247. /**
    248. * 【不分页=》查询列表=>有条件】
    249. * @Title: listByEntity
    250. * @Description: TODO(这里用一句话描述这个方法的作用)
    251. * @param @return 设定文件
    252. * @author
    253. * @return String 返回类型
    254. * @throws
    255. */
    256. @RequestMapping(value = "/listByEntityJson", method = RequestMethod.POST)
    257. @ResponseBody
    258. public String listByEntityJson(Manage manage, HttpServletRequest request, HttpServletResponse response){
    259. List listAll = manageService.listAllByEntity(manage);
    260. JSONObject jsonObject = new JSONObject();
    261. jsonObject.put("list", listAll);
    262. jsonObject.put("obj", manage);
    263. return jsonObject.toString();
    264. }
    265. /**
    266. * 【不分页=》查询列表=>有条件】
    267. * @Title: listByMap
    268. * @Description: TODO(这里用一句话描述这个方法的作用)
    269. * @param @return 设定文件
    270. * @author
    271. * @return String 返回类型
    272. * @throws
    273. */
    274. @RequestMapping(value = "/listByMapJson", method = RequestMethod.POST)
    275. @ResponseBody
    276. public String listByMapJson(Manage manage,HttpServletRequest request, HttpServletResponse response){
    277. //通过map查询
    278. Map params = new HashMap();
    279. if(!isEmpty(manage.getUserName())){
    280. params.put("userName", manage.getUserName());
    281. }
    282. if(!isEmpty(manage.getPassWord())){
    283. params.put("passWord", manage.getPassWord());
    284. }
    285. if(!isEmpty(manage.getRealName())){
    286. params.put("realName", manage.getRealName());
    287. }
    288. List listAll = manageService.listByMap(params);
    289. JSONObject jsonObject = new JSONObject();
    290. jsonObject.put("list", listAll);
    291. jsonObject.put("obj", manage);
    292. return jsonObject.toString();
    293. }
    294. /**
    295. * 分页查询 返回list json(通过对象)
    296. *
    297. * @param request
    298. * @param response
    299. * @return
    300. */
    301. @RequestMapping(value = "/findByObjJson", method = RequestMethod.POST)
    302. @ResponseBody
    303. public String findByObjByEntityJson(Manage manage, HttpServletRequest request, HttpServletResponse response) {
    304. //分页查询
    305. Pager pagers = manageService.findByEntity(manage);
    306. JSONObject jsonObject = new JSONObject();
    307. jsonObject.put("pagers", pagers);
    308. jsonObject.put("obj", manage);
    309. return jsonObject.toString();
    310. }
    311. /**
    312. * 分页查询 返回list json(通过Map)
    313. *
    314. * @param request
    315. * @param response
    316. * @return
    317. */
    318. @RequestMapping(value = "/findByMapJson", method = RequestMethod.POST)
    319. @ResponseBody
    320. public String findByMapJson(Manage manage,HttpServletRequest request, HttpServletResponse response) {
    321. //通过map查询
    322. Map params = new HashMap();
    323. if(!isEmpty(manage.getUserName())){
    324. params.put("userName", manage.getUserName());
    325. }
    326. if(!isEmpty(manage.getPassWord())){
    327. params.put("passWord", manage.getPassWord());
    328. }
    329. if(!isEmpty(manage.getRealName())){
    330. params.put("realName", manage.getRealName());
    331. }
    332. //分页查询
    333. Pager pagers = manageService.findByMap(params);
    334. JSONObject jsonObject = new JSONObject();
    335. jsonObject.put("pagers", pagers);
    336. jsonObject.put("obj", manage);
    337. return jsonObject.toString();
    338. }
    339. /**
    340. * ajax 添加
    341. * @param
    342. * @return
    343. */
    344. @RequestMapping(value = "/exAddJson", method = RequestMethod.POST)
    345. @ResponseBody
    346. public String exAddJson(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    347. manageService.insert(manage);
    348. JSONObject jsonObject = new JSONObject();
    349. jsonObject.put("message", "添加成功");
    350. return jsonObject.toString();
    351. }
    352. /**
    353. * ajax 修改
    354. * @param
    355. * @return
    356. */
    357. @RequestMapping(value = "/exUpdate.json", method = RequestMethod.POST)
    358. @ResponseBody
    359. public String exUpdateJson(Manage manage, Model model, HttpServletRequest request, HttpServletResponse response) {
    360. //1.通过实体类修改,可以多传修改条件
    361. manageService.updateById(manage);
    362. //2.通过主键id修改
    363. //manageService.updateById(manage);
    364. JSONObject jsonObject = new JSONObject();
    365. jsonObject.put("message", "修改成功");
    366. return jsonObject.toString();
    367. }
    368. /**
    369. * ajax 删除
    370. * @return
    371. */
    372. @RequestMapping(value = "/delete.json", method = RequestMethod.POST)
    373. @ResponseBody
    374. public String exDeleteJson(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {
    375. ///1.通过主键删除
    376. manageService.deleteById(id);
    377. /*以下是多种删除方式*/
    378. // //2.通过实体条件删除
    379. // manageService.deleteByEntity(manage);
    380. // //3.通过参数删除
    381. // //通过map查询
    382. // Map params = new HashMap();
    383. //
    384. // if(!isEmpty(manage.getUserName())){
    385. // params.put("userName", manage.getUserName());
    386. // }
    387. //
    388. // if(!isEmpty(manage.getPassWord())){
    389. // params.put("passWord", manage.getPassWord());
    390. // }
    391. //
    392. // if(!isEmpty(manage.getRealName())){
    393. // params.put("realName", manage.getRealName());
    394. // }
    395. //
    396. // manageService.deleteByMap(params);
    397. // //4.状态删除
    398. // Manage load = manageService.getById(manage.getId())
    399. // load.setIsDelete(1);
    400. // manageService.updateById(load);
    401. //5.状态删除
    402. //Manage load = manageService.load(id);
    403. //load.setIsDelete(1);
    404. //manageService.updateById(load);
    405. JSONObject jsonObject = new JSONObject();
    406. jsonObject.put("message", "删除成功");
    407. return jsonObject.toString();
    408. }
    409. /**
    410. * 单文件上传
    411. * @param file
    412. * @param request
    413. * @param model
    414. * @return
    415. */
    416. @RequestMapping(value = "/saveFile")
    417. public String saveFile(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request, Model model) {
    418. System.out.println("开始");
    419. String path = request.getSession().getServletContext().getRealPath("/upload");
    420. String fileName = file.getOriginalFilename();
    421. System.out.println(path);
    422. File targetFile = new File(path, fileName);
    423. if(!targetFile.exists()){
    424. targetFile.mkdirs();
    425. }
    426. //保存
    427. try {
    428. file.transferTo(targetFile);
    429. } catch (Exception e) {
    430. e.printStackTrace();
    431. }
    432. return "";
    433. }
    434. /**
    435. * springMvc多文件上传
    436. * @param files
    437. * @param id
    438. * @return
    439. */
    440. @RequestMapping(value = "/saveFiles")
    441. public String saveFiles(@RequestParam("file") CommonsMultipartFile[] files,Integer id,HttpServletRequest request){
    442. for(int i = 0;i
    443. System.out.println("fileName---------->" + files[i].getOriginalFilename());
    444. if(!files[i].isEmpty()){
    445. int pre = (int) System.currentTimeMillis();
    446. try {
    447. //拿到输出流,同时重命名上传的文件
    448. String filePath = request.getRealPath("/upload");
    449. File f=new File(filePath);
    450. if(!f.exists()){
    451. f.mkdirs();
    452. }
    453. String fileNmae=new Date().getTime() + files[i].getOriginalFilename();
    454. File file=new File(filePath+"/"+pre + files[i].getOriginalFilename());
    455. if(!file.exists()){
    456. file.createNewFile();
    457. }
    458. files[i].transferTo(file);
    459. } catch (Exception e) {
    460. e.printStackTrace();
    461. System.out.println("上传出错");
    462. }
    463. }
    464. }
    465. return "";
    466. }
    467. // --------------------------------------- 华丽分割线 ------------------------------
    468. }

    如果也想学习本系统,下面领取。关注并回复:132ssm

  • 相关阅读:
    用户管理系统(五)——删除用户
    Spring Boot开发之Mybatis-Plus、SpringSercurity
    ES6(三):Iterator、Generator、类的用法、类的继承
    BAT大厂测试架构师如何解读测试平台的各种争议
    [含毕业设计论文+PPT+源码等]ssm校友录网站+Java后台管理系统|前后分离VUE
    在Linux环境中分别使用手动和Shell自动脚本来部署SpringBoot项目
    关于项目、项目集、项目组合以及运营管理之间的关系
    websocket学习笔记1
    六级阅读3大核心技巧-因果关系题:如何识别因果
    基于springboot的药店进销存管理系统
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/126541498