Java實(shí)戰(zhàn)之兼職平臺(tái)系統(tǒng)的實(shí)現(xiàn)
一、項(xiàng)目運(yùn)行
環(huán)境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
項(xiàng)目技術(shù):
HTML +Springboot+ SpringMVC + MyBatis + ThymeLeaf + JavaScript + JQuery + Ajax + maven等等.
二、效果圖
三、核心代碼
登錄控制層
/** * @Author yy * @Description 登錄 * @Date 2022.2.17 */ public class LoginController extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { JSONObject jsonObject = new JSONObject(); String username = req.getParameter("username"); String password = req.getParameter("password"); resp.setCharacterEncoding("UTF-8"); HttpSession session = req.getSession(); if (StringUtils.isBlank(username) || StringUtils.isBlank(password)) { jsonObject.put("code", 2000); jsonObject.put("flag", "fail"); jsonObject.put("user", null); jsonObject.put("msg", "usernameOrPasswordIsBank");//用戶名密碼不能為空 resp.getWriter().print(jsonObject); return; } password = MyMD5Util.encrypt(password); System.out.println(password); BusinessUserVO businessUserVO = new BusinessUserVO(); businessUserVO.setUsername(username); businessUserVO.setPassword(password); StudentUserVO studentUserVO = new StudentUserVO(); studentUserVO.setUsername(username); studentUserVO.setPassword(password); String flag1 = null; String flag2 = null; try { flag1 = BusinessUserDao.selectUsername(businessUserVO); if ("ok".equals(flag1)) {//企業(yè)用戶名存在 BusinessUserDTO businessUserDTO = BusinessUserDao.select(businessUserVO); if (businessUserDTO != null) { jsonObject.put("code", 2000); jsonObject.put("flag", "success");//登錄成功 jsonObject.put("user", businessUserDTO); jsonObject.put("msg", "login_success"); session.setAttribute("businessUser",businessUserDTO); resp.getWriter().print(jsonObject); return; } else { jsonObject.put("code", 2000); jsonObject.put("flag", "fail");//登錄失敗 jsonObject.put("user", null); jsonObject.put("msg", "passwordError");//密碼錯(cuò)誤 resp.getWriter().print(jsonObject); return; } } flag2 = StudentUserDao.selectUsername(studentUserVO); if ("ok".equals(flag2)) {//學(xué)生用戶名存在 StudentUser studentUser = StudentUserDao.select(studentUserVO); if (studentUser != null) { jsonObject.put("code", 2000); jsonObject.put("flag", "success");//登錄成功 jsonObject.put("user", studentUser); jsonObject.put("msg", "login_success"); session.setAttribute("studentUser",studentUser); resp.getWriter().print(jsonObject); return; } else { jsonObject.put("code", 2000); jsonObject.put("flag", "fail");//登錄失敗 jsonObject.put("user", null); jsonObject.put("msg", "passwordError");//密碼錯(cuò)誤 resp.getWriter().print(jsonObject); return; } } //用戶名不存在,前往注冊(cè) jsonObject.put("code", 2000); jsonObject.put("flag", "fail");//登錄失敗 jsonObject.put("user", null); jsonObject.put("msg", "usernameIsNotExist");//密碼錯(cuò)誤 resp.getWriter().print(jsonObject); return; } catch (SQLException throwables) { throwables.printStackTrace(); } return; } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { doGet(req, resp); } }
管理員登錄控制層
public class AdminLoginController extends HttpServlet { @SneakyThrows @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String username = req.getParameter("username"); String password = req.getParameter("password"); password = MyMD5Util.encrypt(password); JSONObject jsonObject = new JSONObject(); HttpSession session = req.getSession(); Admin admin = new Admin(username, password); Admin adminFromDB = AdminDao.findByUsernamePassword(admin); if (adminFromDB!=null){ jsonObject.put("code",2000); jsonObject.put("msg","login_success"); jsonObject.put("admin",adminFromDB.getUsername()); jsonObject.put("flag","success"); resp.getWriter().print(jsonObject); session.setAttribute("admin",adminFromDB); return; }else { jsonObject.put("code",2000); jsonObject.put("msg","no admin"); jsonObject.put("admin",null); jsonObject.put("flag","fail"); resp.getWriter().print(jsonObject); return; } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }
提交個(gè)人簡(jiǎn)介控制層
public class SubmitResumeController extends HttpServlet { @SneakyThrows @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { JSONObject jsonObject = new JSONObject(); DiskFileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); req.setCharacterEncoding("UTF-8"); upload.setHeaderEncoding("UTF-8"); List<FileItem> items = upload.parseRequest(req); StringBuffer sb = new StringBuffer(); String resumeFile = null; for (FileItem item : items) { String name = item.getFieldName(); InputStream inputStream = item.getInputStream(); if (!name.equals("resumeFile")){ String string = item.getString(); string = new String(string.getBytes("ISO8859_1"), StandardCharsets.UTF_8); sb.append(string+"&&"); }else { String[] split = sb.toString().split("&&"); String studentName = split[0]; String studentUsername = split[1]; String recruitInfoId = split[2]; String path=req.getServletContext().getRealPath("/"); String fieldName = studentName+"_"+studentUsername+"_"+recruitInfoId+"_"+item.getName(); String filePath = path+fieldName; resumeFile = fieldName; File file = new File(filePath); BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream); FileOutputStream fileOutputStream = new FileOutputStream(file); int line; while ((line = bufferedInputStream.read())!=-1){ fileOutputStream.write(line); } fileOutputStream.flush(); fileOutputStream.close(); bufferedInputStream.close(); } } String[] split = sb.toString().split("&&"); String studentName = split[0]; String studentUsername = split[1]; String recruitInfoId = split[2]; String applyPosition = split[3]; String phoneNum = split[4]; String email = split[5]; Resume resume = new Resume(studentUsername, Integer.parseInt(recruitInfoId), studentName, applyPosition, phoneNum, email, resumeFile); int insert = ResumeDao.insert(resume); if (insert == 1){ jsonObject.put("code",2000); jsonObject.put("msg","add success"); jsonObject.put("flag","success"); jsonObject.put("data",resume); resp.getWriter().print(jsonObject); return; }else { jsonObject.put("code",2000); jsonObject.put("msg","add fail"); jsonObject.put("flag","fail"); jsonObject.put("data",null); resp.getWriter().print(jsonObject); } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }
到此這篇關(guān)于Java實(shí)戰(zhàn)之兼職平臺(tái)系統(tǒng)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Java兼職平臺(tái)系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java構(gòu)建Stream流的多種方式總結(jié)
Java?8引入了Stream流作為一項(xiàng)新的特性,它是用來(lái)處理集合數(shù)據(jù)的一種函數(shù)式編程方式,本文為大家整理了多種java構(gòu)建Stream流的方式,希望對(duì)大家有所幫助2023-11-11Java中List集合去除重復(fù)數(shù)據(jù)的方法匯總
這篇文章主要給大家介紹了關(guān)于Java中List集合去除重復(fù)數(shù)據(jù)的方法,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02IntelliJ IDEA下SpringBoot如何指定某一個(gè)配置文件啟動(dòng)項(xiàng)目
這篇文章主要介紹了IntelliJ IDEA下SpringBoot如何指定某一個(gè)配置文件啟動(dòng)項(xiàng)目問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09Java編程實(shí)現(xiàn)多線程TCP服務(wù)器完整實(shí)例
這篇文章主要介紹了Java編程實(shí)現(xiàn)多線程TCP服務(wù)器完整實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01Java Flink窗口觸發(fā)器Trigger的用法詳解
Trigger(窗口觸發(fā)器)決定了窗口(由 WindowAssigner 產(chǎn)生)什么時(shí)候調(diào)用窗口處理函數(shù)??梢愿鶕?jù)指定的時(shí)間或數(shù)據(jù)元素條件來(lái)決定什么時(shí)候觸發(fā)。本文將詳細(xì)講講其用法,需要的可以參考一下2022-07-07springboot整合httpClient代碼實(shí)例
這篇文章主要介紹了springboot整合httpClient代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12