Java 實戰(zhàn)范例之線上婚紗攝影預(yù)定系統(tǒng)的實現(xiàn)
一、項目簡述
功能: 前后用戶的登錄注冊,婚紗照片分類,查看,攝影師預(yù) 訂,后臺訂單管理,圖片管理等等。
二、項目運行
環(huán)境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
項目技術(shù):HTML+CSS+JavaScript+jsp+mysql+Spring+SpringMVC+mybatis+Spring boot
用戶登陸信息操作代碼:
/** * 用戶登陸信息操作 */ @Controller @RequestMapping("/user") @Scope("prototype") public class UserController { private static final Logger logger = LoggerFactory.getLogger(UserController.class); private ReturnResult returnResult = new ReturnResult(); @Resource(name = "userService") private IUserService userService; /** * 登錄 * @param user * @param session * @return */ @RequestMapping(value = "login") @ResponseBody public ReturnResult login(TUser user, HttpSession session) { returnResult.setStatus(ReturnCodeType.FAILURE); try { user = userService.login(user); if (user != null) { user.setPassword(null); session.setAttribute("user", user); returnResult.setStatus(ReturnCodeType.SUCCESS); } } catch (Exception e) { logger.error("登錄失敗" + e); } return returnResult; } /** * 從session中獲取用戶信息 * @param session * @return */ @RequestMapping("getUserInfo") @ResponseBody public ReturnResult getUserInfo(HttpSession session) { returnResult.setStatus(ReturnCodeType.FAILURE); TUser user = (TUser) session.getAttribute("user"); if (user != null) { returnResult.setStatus(ReturnCodeType.SUCCESS).setData(user); } else { logger.info("獲取用戶信息失敗:用戶未登錄"); } return returnResult; } /** * 注冊用戶 * @param user * @return */ @RequestMapping(value = "register") @ResponseBody public ReturnResult register(TUser user) { returnResult.setStatus(ReturnCodeType.FAILURE); try { if (userService.checkUserByName(user.getName())) { if (userService.register(user) >= 0) { returnResult.setStatus(ReturnCodeType.SUCCESS); } } } catch (Exception e) { logger.error("注冊失敗" + e); } return returnResult; } /** * 檢測用戶名是否存在 * @param name * @return */ @RequestMapping(value = "checkUserName") @ResponseBody public ReturnResult checkUserName(String name) { returnResult.setStatus(ReturnCodeType.FAILURE); try { if (userService.checkUserByName(name)) { returnResult.setStatus(ReturnCodeType.SUCCESS); } } catch (Exception e) { logger.error("檢測用戶名是否存在失?。? + e); } return returnResult; } /** * 管理員查看所有的用戶信息 * @param session * @return */ @RequestMapping("getAllUserInfo") @ResponseBody public ReturnResult getAllUserInfo(HttpSession session,PageVO page,String name) { returnResult.setStatus(ReturnCodeType.FAILURE); try { if (session.getAttribute("admin") != null) { Map<String, Object> resultMap = new HashMap<String, Object>(); StringBuffer sql = new StringBuffer("SELECT DISTINCT * FROM t_user WHERE 1=1"); if(StringUtils.isNotBlank(name)){ sql.append(" AND name="+name); } List<Map<String, Object>> results = userService.selectPageBySQL(sql.toString(), page.getPage() - 1, page.getRows()); if (!results.isEmpty() && results != null) { int total = userService.selectCount(new TUser()); int rows = page.getRows(); rows = rows == 0 ? 10 : rows; resultMap.put("total", (total % rows != 0 ? (total / rows + 1) : (total / rows))); resultMap.put("page", page.getPage()); resultMap.put("records", total); resultMap.put("rows", results); returnResult.setStatus(ReturnCodeType.SUCCESS).setData(resultMap); } } else { logger.info("獲取所有的用戶信息失敗:管理員未登錄"); } } catch (Exception e) { logger.error("獲取所有的用戶信息失?。? + e); } return returnResult; } /** * 退出 * @param session * @return */ @RequestMapping("logout") @ResponseBody public ReturnResult logout(HttpSession session) { session.invalidate(); return returnResult.setStatus(ReturnCodeType.SUCCESS); } /** * 修改密碼 * @param oldPassword * @param password * @param session * @return */ @RequestMapping("updatePassword") @ResponseBody public ReturnResult updatePassword(TUser user) { returnResult.setStatus(ReturnCodeType.FAILURE); try { if (userService.updatePassword(user) > 0) { returnResult.setStatus(ReturnCodeType.SUCCESS); } } catch (Exception e) { logger.error("修改密碼失敗:" + e); } return returnResult; } }
到此這篇關(guān)于Java 實戰(zhàn)項目錘煉之線上婚紗攝影預(yù)定系統(tǒng)的實現(xiàn)的文章就介紹到這了,更多相關(guān)Java 婚紗攝影預(yù)定系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot?@Configuration與@Bean注解使用介紹
這篇文章主要介紹了SpringBoot中的@Configuration與@Bean注解,在進(jìn)行項目編寫前,我們還需要知道一個東西,就是SpringBoot對我們的SpringMVC還做了哪些配置,包括如何擴展,如何定制,只有把這些都搞清楚了,我們在之后使用才會更加得心應(yīng)手2022-10-10關(guān)于java中可變長參數(shù)的定義及使用方法詳解
下面小編就為大家?guī)硪黄P(guān)于java中可變長參數(shù)的定義及使用方法詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12利用Java實現(xiàn)word導(dǎo)入導(dǎo)出富文本(含圖片)的詳細(xì)代碼
這篇文章主要為大家詳細(xì)介紹了利用Java實現(xiàn)word導(dǎo)入導(dǎo)出富文本(含圖片),文中的示例代碼講解詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以學(xué)習(xí)一下2024-02-02SpringBoot整合Redisson實現(xiàn)分布式鎖
本文主要介紹了SpringBoot整合Redisson實現(xiàn)分布式鎖,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11spring mvc 實現(xiàn)獲取后端傳遞的值操作示例
這篇文章主要介紹了spring mvc 實現(xiàn)獲取后端傳遞的值操作,結(jié)合實例形式詳細(xì)分析了spring mvc使用JSTL 方法獲取后端傳遞的值相關(guān)操作技巧2019-11-11在啟動后臺 jar包時,使用指定的 application.yml操作
這篇文章主要介紹了在啟動后臺 jar包時,使用指定的 application.yml操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10