黨員系統怎麼寫,java小哥來教你

點贊再看,養成習慣

項目介紹

入黨信息管理系統採用jsp+servlet搭建,mysql做數據支持,jsp做前端數據渲染,實現不用角色不同的條件查詢,展示對應的頁面和數據。本系統應用於院校的入黨信息管理,目前實現了個人管理、系統管理、支部信息管理、入黨積極分子信息、預備黨員信息、正式黨員信息、黨費信息、公告管理、文件管理等功能,有時間在做進一步的完善。

項目適用人羣

正在做畢設的學生,或者需要項目實戰練習的Java學習者

開發環境:

  1. jdk 8
  2. intellij idea
  3. tomcat 8.5.40
  4. mysql 5.7

所用技術:

  1. jsp+servlet
  2. js+ajax
  3. layUi
  4. jdbc直連

項目訪問地址

http://localhost:8090

項目結構

黨員系統怎麼寫,java小哥來教你

項目截圖

  • 註冊
    黨員系統怎麼寫,java小哥來教你

  • 系統管理

黨員系統怎麼寫,java小哥來教你

  • 新增/修改用戶

黨員系統怎麼寫,java小哥來教你

  • 正式黨員信息
    黨員系統怎麼寫,java小哥來教你

  • 公告管理
    黨員系統怎麼寫,java小哥來教你

  • 文件管理
    黨員系統怎麼寫,java小哥來教你

關鍵代碼:

1.初始化工作

//數據庫連接初始化
public Connection getConnection() {
    Connection conn = null;
    String sDBDriver = "com.mysql.jdbc.Driver";
    String url = "jdbc:mysql://localhost:3306/schooldb?useUnicode=true&characterEncoding=utf8";
    try {
        //加載數據庫驅動
        Class.forName(sDBDriver);
        //獲取數據庫鏈接 -賬號-密碼
        conn = DriverManager.getConnection(url, "root", "root123");
        return conn;
    } catch (Exception e) {
        e.printStackTrace();
        System.err.println("數據庫驅動註冊錯誤信息: " + e.getMessage());
    }
    return conn;
}

2.黨費信息Servlet

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    try {
        String mtype = request.getParameter("mtype");
        String url = "";
        DangfeiDao dangfeiDao = new DangfeiDao();
        /**
         * 添加黨費信息
         */
        if ("add".equals(mtype)) {
            TDangfei dangfei = new TDangfei();
            dangfei.setTypeid(request.getParameter("typeid"));
            dangfei.setClassname(request.getParameter("classname"));
            dangfei.setDangfei(request.getParameter("dangfei"));
            dangfei.setDangtype(request.getParameter("dangtype"));
            dangfei.setShouyear(request.getParameter("shouyear"));
            dangfei.setTypename(request.getParameter("typename"));
            dangfei.setUsername(request.getParameter("username"));
            dangfeiDao.addDangfei(dangfei);
            url = "/DangfeiServlet?mtype=query&flag=success";
            /**
             * 初始化修改黨費信息界面
             */
        } else if ("preupdate".equals(mtype)) {
            request.setAttribute("dangfei", dangfeiDao.getDangfei(request.getParameter("id")));
            url = "/files/dangfei/update.jsp";

            /**
             * 修改黨費信息
             */
        } else if ("update".equals(mtype)) {
            TDangfei dangfei = new TDangfei();
            dangfei.setId(Integer.parseInt(request.getParameter("id")));
            dangfei.setTypeid(request.getParameter("typeid"));
            dangfei.setClassname(request.getParameter("classname"));
            dangfei.setDangfei(request.getParameter("dangfei"));
            dangfei.setDangtype(request.getParameter("dangtype"));
            dangfei.setShouyear(request.getParameter("shouyear"));
            dangfei.setTypename(request.getParameter("typename"));
            dangfei.setUsername(request.getParameter("username"));
            dangfeiDao.updateDangfei(dangfei);
            url = "/DangfeiServlet?mtype=query";
            /**
             * 遍歷黨費信息
             */
        } else if ("query".equals(mtype)) {
            if (request.getSession().getAttribute("querypageunit") == null) {
                request.getSession().setAttribute("querypageunit",
                        this.pageunit);
            }
            int curpage = this.getCurrentpage(request);
            int pageunit = this.getPageunit(request, "querypageunit");

            String urlpage = "DangfeiServlet?mtype=query";
            StringBuffer cond = new StringBuffer();
            if (null != request.getParameter("searchname") && "" != request.getParameter("searchname").trim()) {
                cond.append(" and a.typename like '%" + request.getParameter("searchname").trim() + "%' ");
            }
            if (null != request.getSession().getAttribute("usertype") && !"0".equals(((String) request.getSession().getAttribute("usertype")))) {
                cond.append(" and a.typeid like '%" + (String) request.getSession().getAttribute("typeid") + "%' ");
            }
            PageInfo pageInfo = dangfeiDao.queryTDangfei(curpage,
                    pageunit, request, urlpage, cond.toString());
            request.setAttribute("pageinfo", pageInfo);
            request.setAttribute("searchname", request.getParameter("searchname"));
            url = "/files/dangfei/list.jsp";
            /**
             * 刪除黨費信息
             */
        } else if ("delete".equals(mtype)) {
            dangfeiDao.delDangfei(request.getParameter("id"));
            url = "/DangfeiServlet?mtype=query";
        }
        //重定向到目標地址
        RequestDispatcher dispatcher = request.getRequestDispatcher(url);
        dispatcher.forward(request, response);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

3.文件下載

public void doGet(HttpServletRequest request, HttpServletResponse response)throws  IOException {
    //獲得請求文件名  
    request.setCharacterEncoding("ISO-8859-1");
    String filename = request.getParameter("filename");
    filename = new String(filename.getBytes("ISO-8859-1"), "UTF-8");

    //設置文件MIME類型
    response.setContentType(getServletContext().getMimeType(filename));
    //設置Content-Disposition
    response.setHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes("GBK"), "ISO-8859-1"));
    //讀取目標文件,通過response將目標文件寫到客戶端
    //獲取目標文件的絕對路徑

    String fullFileName = getServletContext().getRealPath("/upload/" + filename);
    //讀取文件
    InputStream in = new FileInputStream(fullFileName);
    OutputStream out = response.getOutputStream();

    //寫文件
    int b;
    while ((b = in.read()) != -1) {
        out.write(b);
    }

    in.close();
    out.close();
}

項目後續

其他ssh,ssm,springboot版本後續迭代更新,持續關注

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章