パーティーメンバーシステムの書き方、Javaブラザーが教えてくれます

それを好きでもう一度見て、習慣を身につける

プロジェクトの紹介

パーティ情報管理システムはjsp + servletで構築され、mysqlはデータサポートに使用され、jspはフロントエンドデータレンダリングに使用され、さまざまな役割や条件なしでクエリを実行し、対応するページとデータを表示します。このシステムは、大学の党情報管理に適用され、現在、個人管理、システム管理、支店情報管理、党活動家情報、候補党員情報、公式党員情報、党費情報、発表管理、文書管理などの機能を時間とともに実現している。さらなる改善が行われています。

対象者

プロジェクトの完全なセットを実行している学生、または実践的なプロジェクトの練習を必要とするJava学習者

開発環境:

  1. jdk 8
  2. インテリジアイデア
  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.パーティー料金情報サーブレット

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バージョンのフォローアップの反復更新、引き続き注意を払う

おすすめ

転載: blog.51cto.com/14880884/2577140