• 基本的CRUD操作


    导入包---实体类------数据库连接----数据库操作----service层数据操作----网页对service层可视化实现


    model

    package com.ij34.model;
    
    public class article {
       private int id;
       private String title;
       private String content;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
       
    }
    View Code

    dao

    package com.ij34.dao;
    
    import java.sql.DriverManager;
    
    import com.mysql.jdbc.Connection;
    
    
    
    public class DbConn {
        private static String username="root";
        private static String password="123456";
        private static String url="jdbc:mysql://localhost:3306/articles?useUnicode=true&characterEncoding=UTF-8";
        private static Connection conn=null;
        
        public static Connection getConnection(){
            if(conn==null){
                try {
                    Class.forName("com.mysql.jdbc.Driver");
                    conn=(Connection) DriverManager.getConnection(url, username, password);
                } catch (Exception e) {
                    // TODO: handle exception
                    e.printStackTrace();
                }
            }
            return conn;
        }
         
        //test connection
        public static void main(String[] args) {
            DbConn db=new DbConn();
            System.out.println(db.toString());
        }
    }
    View Code
    package com.ij34.dao;
    
    import java.sql.ResultSet;
    import java.util.ArrayList;
    import java.util.List;
    
    import com.ij34.model.article;
    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.PreparedStatement;
    
    public class ArticleDao {
       
        public List<article> getfindAll(){  //查All,返回list
            List<article> list=new ArrayList<article>();
            String sql="select * from article";
            Connection conn=DbConn.getConnection();
            try {
                PreparedStatement pstm=(PreparedStatement) conn.prepareStatement(sql);
                ResultSet rs=pstm.executeQuery();
                while(rs.next()){
                    article art=new article();
                    art.setId(rs.getInt("id"));
                    art.setTitle(rs.getString("title"));
                    art.setContent(rs.getString("content"));
                    list.add(art);
                }
                rs.close();
                pstm.close();
            } catch (Exception e) {
                // TODO: handle exception
                e.printStackTrace();
            }
            return list;
            
        }
        
        public boolean addArticle(article art){ //
            String sql="insert into article(title,content)values(?,?)";
            Connection conn=DbConn.getConnection();
            try {
                PreparedStatement pstm=(PreparedStatement) conn.prepareStatement(sql);
                pstm.setString(1, art.getTitle());
                pstm.setString(2, art.getContent());
                int count=pstm.executeUpdate();
                pstm.close();
                if(count>0) return true;
                else return false;
            } catch (Exception e) {
                // TODO: handle exception
                e.printStackTrace();
            }
            return false;
            
        }
        
        public boolean updateArticle(article art){ //修改
            String sql="update article set title=?,content=? where id=?";
            Connection conn=DbConn.getConnection();
            try {
                PreparedStatement pstm=(PreparedStatement) conn.prepareStatement(sql);
                pstm.setString(1, art.getTitle());
                pstm.setString(2, art.getContent());
                pstm.setInt(3, art.getId());
                int count=pstm.executeUpdate();
                pstm.close();
                if(count>0) return true;
                else return false;
            } catch (Exception e) {
                // TODO: handle exception
                e.printStackTrace();
            }
            return false;
            
        }
        
        public boolean deleteArticle(int id){  //删除,根据id
            String sql="delete from article where id=?";
            //String sql="delete from article where id='"+id+"'";
            Connection conn=DbConn.getConnection();
            try {
                PreparedStatement pstm=(PreparedStatement) conn.prepareStatement(sql);
                pstm.setInt(1, id);  
                int count=pstm.executeUpdate();
                pstm.close();
                if(count>0) return true;
                else return false;
            } catch (Exception e) {
                e.printStackTrace();
            }
            return false;
            
        }
        
        public article selectById(int id){//根据id查找
            String sql="select * from article where id="+id;
            Connection conn=DbConn.getConnection();
            article art=null;
            try {
                PreparedStatement pstm=(PreparedStatement) conn.prepareStatement(sql);
                ResultSet rs=pstm.executeQuery();
                while(rs.next()){
                    art=new article();
                    art.setId(rs.getInt("id"));
                    art.setTitle(rs.getString("title"));
                    art.setContent(rs.getString("content"));
                }
                rs.close();
                pstm.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return art;
        }
    }
    View Code

    service

    add

    package com.ij34.service;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import com.ij34.dao.ArticleDao;
    import com.ij34.model.article;
    
    public class addArticle extends HttpServlet{
    
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            this.doPost(req, resp);
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            article art=new article();
            String title=req.getParameter("title");
            String content=req.getParameter("content");
            art.setTitle(new String(title.getBytes("ISO-8859-1"),"UTF-8"));
            art.setContent(new String(content.getBytes("ISO-8859-1"),"UTF-8"));
            ArticleDao ad=new ArticleDao();
            ad.addArticle(art);
            req.getRequestDispatcher("showArticle").forward(req, resp);
        }
       
    }
    View Code

    del

    package com.ij34.service;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import com.ij34.dao.ArticleDao;
    
    public class deleteArticle extends HttpServlet{
    
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            this.doPost(req, resp);
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            String idStr=req.getParameter("id");
            if(idStr!=null&&!idStr.equals("")){
                int id=Integer.valueOf(idStr);
                ArticleDao ad=new ArticleDao();
                ad.deleteArticle(id);
            }
            req.getRequestDispatcher("showArticle").forward(req, resp);
        }
    
    }
    View Code

    find

    package com.ij34.service;
    
    import java.io.IOException;
    import java.util.List;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import com.ij34.dao.ArticleDao;
    import com.ij34.model.article;
    
    public class showArticle extends HttpServlet{
    
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            this.doPost(req, resp);
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            ArticleDao ad=new ArticleDao();
            List<article> list=ad.getfindAll();
            req.setAttribute("list", list);
            req.getRequestDispatcher("show.jsp").forward(req, resp);
        }
       
    }
    View Code

    update

    package com.ij34.service;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import com.ij34.dao.ArticleDao;
    import com.ij34.model.article;
    
    public class updateArticle extends HttpServlet{
    
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            String idStr=req.getParameter("id");
            if(idStr!=null&&!idStr.equals("")){
                ArticleDao ad=new ArticleDao();
                int id=Integer.valueOf(idStr);
               article art=ad.selectById(id);
               req.setAttribute("article", art);
            }
              req.getRequestDispatcher("update.jsp").forward(req, resp);
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            article art=new article();
            String idStr=req.getParameter("id");
            String title=req.getParameter("title");
            String content=req.getParameter("content");
            art.setId(Integer.valueOf(idStr));
            art.setTitle(new String(title.getBytes("ISO-8859-1"),"UTF-8"));
            art.setContent(new String(content.getBytes("ISO-8859-1"),"UTF-8"));
            ArticleDao ad=new ArticleDao();
            ad.updateArticle(art);
            req.getRequestDispatcher("showArticle").forward(req, resp);
        }
        
    }
    View Code

    web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>Articles</display-name>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      <servlet>
        <servlet-name>addArticle</servlet-name>
        <servlet-class>com.ij34.service.addArticle</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>addArticle</servlet-name>
        <url-pattern>/addArticle</url-pattern>
      </servlet-mapping>
      
        <servlet>
        <servlet-name>deleteArticle</servlet-name>
        <servlet-class>com.ij34.service.deleteArticle</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>deleteArticle</servlet-name>
        <url-pattern>/deleteArticle</url-pattern>
      </servlet-mapping>
      
        <servlet>
        <servlet-name>showArticle</servlet-name>
        <servlet-class>com.ij34.service.showArticle</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>showArticle</servlet-name>
        <url-pattern>/showArticle</url-pattern>
      </servlet-mapping>
      
        <servlet>
        <servlet-name>updateArticle</servlet-name>
        <servlet-class>com.ij34.service.updateArticle</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>updateArticle</servlet-name>
        <url-pattern>/updateArticle</url-pattern>
      </servlet-mapping>
    </web-app>
    View Code

    网页

    index

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <jsp:forward page="showArticle"/>  //要写doget
    View Code

    add

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>添 加</title>
    </head>
    <body>
    <form action="addArticle" method="post">
      <table align="center">
            <tr>
               <td colspan="2"><center><h4>添加</h4></center></td> 
            </tr>
            <tr>
               <td>标 题:</td><td><input type="text" name="title"/></td>
            </tr>
                    <tr>
               <td>内 容:</td><td><input type="text" name="content"/></td>
            </tr>
            <tr>
              <td><input type="submit" value="提  交"/></td><td><input type="reset" value="重 置"/></td>
            </tr>
      </table>
    </form>
    </body>
    </html>
    View Code

    update

    <%@ page language="java" contentType="text/html; charset=UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>修 改</title>
    </head>
    <body>
    <form action="updateArticle" method="post">
      <table align="center">
            <tr>
               <td colspan="2"><center><h4>修 改</h4></center></td> 
            </tr>
                    <tr>
               <td>编 号:</td><td><input type="text" name="id" value="${article.id }" readonly="readonly"/></td>
            </tr>
            <tr>
               <td>标 题:</td><td><input type="text" name="title" value="${article.title }"/></td>
            </tr>
                    <tr>
               <td>内 容:</td><td><input type="text" name="content" value="${article.content }"></td>
            </tr>
            <tr>
              <td><input type="submit" value="提  交"/></td><td><input type="button" value="返回" onclick="history.go(-1)"/></td>
            </tr>
      </table>
    </form>
    </body>
    </html>
    View Code

    show

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>显示</title>
    </head>
    <body>
    <form action="showArticle" method="post">
      <table align="center">
       <tr>
       <th>编  号 </th>
       <th>标  题 </th>
       <th>   内               容       </th>
       <th> 操     作 </th>
       </tr>
    
       <c:forEach var="li" items="${list}">
       <tr>
       <td>${li.id} </td>
       <td> ${li.title} </td>
       <td> ${li.content} </td>
       <td><a href="deleteArticle?id=${li.id}">删除</a>|<a href="updateArticle?id=${li.id}">修改</a></td>
       </tr> 
       </c:forEach>
    
       <tr>
       <td align="center"><a href="add.jsp"> 添  加 </a></td>
       </tr>
      </table>
    </form>
    </body>
    </html>
    View Code

    结果

  • 相关阅读:
    Arch Linux中安装Anaconda
    Windows下使用Diskpart格式化U盘
    Jupyter Notebook的安装
    Docker的脚本安装
    pip无法正常使用卸载并重新安装
    Arch更新时failed to prepare transaction
    Privoxy将Socks代理转化HTTP代理
    Arch Linux下Visual Stdio Code在格式化C代码时报错
    GNOME 3.28 启用桌面图标
    Appium入门(8)__控件定位
  • 原文地址:https://www.cnblogs.com/tk55/p/8148209.html
Copyright © 2020-2023  润新知